История изменений
Исправление OxiD, (текущая версия) :
Я этот вариант описал уже раза три, и
-
Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам
-
Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент (или целый инстанс с пачкой своих клиентов) пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?
В моей схеме это все вообще не нужно, клиент просто говорит - дай мне все что есть с момента времени Х, и получает. На сервере тонкая прослойка к БД, в которую последовательно пишутся все сообщения, лайки, дизлайки, комменты и прочее. Серверам тоже ничего знать друг про друга не нужно. Вся сложность репликации уходит на откуп к базе данных.
Исправление OxiD, :
Я этот вариант описал уже раза три, и
-
Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам
-
Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?
В моей схеме это все вообще не нужно, клиент просто говорит - дай мне все что есть с момента времени Х, и получает. На сервере тонкая прослойка к БД, в которую последовательно пишутся все сообщения, лайки, дизлайки, комменты и прочее. Серверам тоже ничего знать друг про друга не нужно. Вся сложность репликации уходит на откуп к базе данных.
Исправление OxiD, :
Я этот вариант описал уже раза три, и
-
Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам
-
Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?
Исходная версия OxiD, :
Я этот вариант описал уже раза три, и
-
Лишнее потребление сети, мобильщики спасибо скажут
-
Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам
-
Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?