Комета - лучший вариант без использования чего-либо особенного (например, Flash, см. Ниже). Это проверенная технология, которая используется многими крупными сайтами, такими как чат Gmail и чат Facebook.
Единственный другой вариант, который у вас есть, это опрос, но иногда он может быть немного интенсивным на сервере. По сути, вам приходится сравнивать нагрузку на сервер со скоростью - если вы будете часто опрашивать, вы получите очень отзывчивый клиент, но вы сильно нагрузите свой сервер. Опрос слишком мал, и вы сохраняете индикатор загрузки, но клиенты могут получать сообщения только каждые n секунд, поэтому это может показаться медленным.
Если вы решите провести опрос, вы всегда можете создать «откат». Например, страница проверяет каждые 2 секунды, чтобы увидеть, отправляются ли какие-либо сообщения чата. Он делает это 5 раз и, если ничего не происходит, увеличивает задержку до 3 секунд. Это делает это 5 раз, и после ничего идет до 4 секунд .. и т.д. Когда сообщение чата отправляется, оно возвращается к кратчайшей задержке.
Еще один вариант, который еще лучше рассмотреть, - это использование клиента Flex или Flash. Таким образом, вы можете просто использовать TCP-сокеты, которые отправляют данные, только если они есть. Но это только в том случае, если вам действительно нужно приложение Flash на вашем сайте.