Есть онлайн браузерная игра, где на всех страницах есть мини чатик с малой активностью( менее 500 сообщенний в день ) так вот обновление чата происходит каждую секунду через ajax
На стороне сервера в пхп идет запрос к бд на наличие новых сообщений и это как вы понимаете сильно будет грузить базу(?) если игроков например 100+ в онлайне
я его переделал так чтобы при новом сообщении от пользователя последние 30 сообщений писались в json файле например chatMsg.json и ajax уже делает запрос не на пхп файл с запросом в базу, а загружает json файл
$.ajax({
url: "base/chat/chatMsg.json",
cache: false,
}).done(function(json) {
правильно ли это? вебсокеты использовать нету возможности
Ремарка:
текст ниже - не утверждение, а рассуждение.
сам с интересом "послушаю" про это.
есть такая штука:
и
чуточку статей:
In short, long polling is kind of a “necessary evil”… It is still bad, but it is much better than getting hammered.
Правильно, вполне годный вариант. Если нагрузка вырастет очень сильно и опять же не будет возможности использовать websocket, то отдавать такие json можно будет через весьма простое приложение на golang - тогда потребление памяти будет минимальным. Или правильно настроенный nginx вполне сможет отдавать по 90k в секунду таких файлов, при конфигурации linux сервера 4Gb RAM, 20GB HDD. Я подобное проверял на online radio player. А если данных не сильно много, то можно использовать redis ) тогда совсем все будет быстро с минимальными задержками и минимальными нагрузками на файловую систему, так как данные будут отдаваться сразу из оперативной памяти.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
delete возвращает true, но consolelog в строчке ниже и на frontend все равно имеет поле password
Всем привет! Написал тут решение данной задачи, но мне кажется что это какой-то костыльЕсли есть идеи, накидайте, пожалуйста
У меня есть файл с авторизацией пользователя, при логине я получаю токен в localStorageС этим все в порядке