Вы можете использовать AJAX для получения сообщений от веб-сервера в определенный промежуток времени. Это приводит к новому соединению для каждого запроса и, таким образом, занимает много времени, так как установление нового соединения является трудоемким процессом. Если вы используете XMPP (который является стандартным протоколом для реализации мгновенных сообщений), то вы постоянно подключены к серверу и, таким образом, вы можете в режиме реального времени отправлять и получать сообщения с сервера.
Однако, если ваши клиенты будут использовать веб-браузер для связи с вашим сервером, а не с вашим собственным приложением, у вас нет другого выбора, кроме как творчески использовать AJAX, чтобы соединения продолжались как можно дольше и ваши пользователи чувствовали себя минимально отставание в их чатах.