Подвисание пати чата
-
А можно объяснить механику почему это происходит?
-
а во еще, когда отправляешь 3 сообщения подряд - и они сразу не отправляются, потом приходит 3 последних сообщения - тоесть вместо первых 2-х еще 2 последних
-
Скорее всего - мультипоточная обработка запросов от клиента обрабатывается одним потоком логики, и у этого потока есть очередь в которую попадают сообщения. Соответственно, им выставляют приоритеты - какие надо обрабатывать сразу, а какие можно позже. Видимо, алгоритмы расстановки приоритетов не очень совершенны и при большой загрузке постоянно "опускают" в очреди сообщения об отосланных текстовых сообщениях, дабы сервер обрабатывал более критичные данные - перемещения, атаки итд.
Естественно, все это мое ИМХО ;), как такое МОЖЕТ быть.
-
Тогда почему приходит столько же сколько и отослал?
-
Логично сделать вывод, что рано или поздно сообщения все-таки обрабатывабтся ;)) и из очереди ничего не "выкидывается". Опять же, можно поспекулировать не тему почему вместо 3-х отосланных сообщений отправитель видит три раза повторенное последнее - видимо, сервер использует кешированный текст сообщений, а он, болезный, успевает устаревать пока сообщения обрабатываются. Но это все так, досужие помыслы. Без кода сервера точно ничего нельзя сказать.
-
@Hatered:
, а он, болезный, успевает устаревать пока сообщения обрабатываются. Но это все так, досужие помыслы. Без кода сервера точно ничего нельзя сказать.
Про "болезный" непонял, видимо опечатка.
Про то что сказать что то можно только с кодом - я про то и говорю.
А ваще получается порочный круг :roll: -
Сорри, это устаревшее слово ;((. Проскакивают иногда, возраст дает о себе знать ;((. Ну, я дуумал что присутствющих заинтересует механика как это ВООБЩЕ БЫВАЕТ - вот я и рассказал ;). Ничего фатального... Такое, кстати, могло произойти после изменения кода чтобы он приоритетно обрабатывал пакеты платников - это же явно работа с кодом помещения сообщений в очередь. А он, болезны... тьфу ты, он, короче, требует повышенного внимания и аккуратности ;). Мультипоточное программирование - это вообще смерть всему живому.
-
На самом деле я тоже думал про платников, и лаги я тоже считаю изза этого, но это ИМХО.
Кеширование это помоему не из той оперы, оно вроде как осуществляется на аппаратном уровне.
А многопоточностью сегодня никого не удивиш
(могу ошибатся, ибо не профи) -
если бы, то неплохо. Может просто сервер перенагружен, а?
-
Нет, лаги даже при маленьком онлайне.
Когда только поменяли аппаратную часть лагов небыло даже при большом онлайне. Поэтому видимо искать причину надо в том что было сделанно после этого.