LINUX.ORG.RU

История изменений

Исправление OxiD, (текущая версия) :

Я этот вариант описал уже раза три, и

  1. Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам

  2. Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент (или целый инстанс с пачкой своих клиентов) пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?

В моей схеме это все вообще не нужно, клиент просто говорит - дай мне все что есть с момента времени Х, и получает. На сервере тонкая прослойка к БД, в которую последовательно пишутся все сообщения, лайки, дизлайки, комменты и прочее. Серверам тоже ничего знать друг про друга не нужно. Вся сложность репликации уходит на откуп к базе данных.

Исправление OxiD, :

Я этот вариант описал уже раза три, и

  1. Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам

  2. Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?

В моей схеме это все вообще не нужно, клиент просто говорит - дай мне все что есть с момента времени Х, и получает. На сервере тонкая прослойка к БД, в которую последовательно пишутся все сообщения, лайки, дизлайки, комменты и прочее. Серверам тоже ничего знать друг про друга не нужно. Вся сложность репликации уходит на откуп к базе данных.

Исправление OxiD, :

Я этот вариант описал уже раза три, и

  1. Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам

  2. Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?

Исходная версия OxiD, :

Я этот вариант описал уже раза три, и

  1. Лишнее потребление сети, мобильщики спасибо скажут

  2. Помимо клиентов есть еще другие инстансы сервера, в других ДЦ, и даже странах, которые тоже как-то должны увидеть это обновление чтобы переслать своим клиентам

  3. Передавать апдейты просто через сокет между клиентами и серверами - мне кажется не надежным, коннекты могут мигать, нужно быть готовым что клиент пропал на пару сек и потом вернулся, но записанное сервером не прочитал (да, tcp может подтвердить прием пакета, хотя приложение его не видело). Т.е тут какой-то протокол с подтверждением приема получается и буферизацией на стороне сервера?