Чат сервер на 80 порту, коннект из флеш плеера

Tronyх

Новичок
Чат сервер на 80 порту, коннект из флеш плеера

Приветствую!

Имеем:
1. Чат сервер.
2. Флешку 1х1 пиксель, открывающую XMLSocket к демону.
3. JS функции вызываемые из флешки, для рисования данных.

Плюсы технологии:
1. Сервер не загружается, при "правильном" демоне.
2. Доставка сообщений за минимальное время за счет постоянного конекта через флеш.
3. Не нужно устраивать танцы с бубном (поддержка конекта, обрыв связи по Esc) при запуске демона браузером в нулевом фрейме.

Минусы:
1. Необходимо иметь установленый флеш минимальной версии 7.0.19.
2. Фаирволы у пользователей.
3. Прокси сервера.

Вопросы:
1. Минус с фаирволами, решил тем, что повесил демон на 80 порт. НО не известно, что будет если фаирвол попробует проанализировать трафик на наличие HTTP заголовков, будет ли такая проблема? Оутпуст во всяком случае пропускает.
2. Будут ли проблемы с прокси сервами?

Кто что может посоветовать на счет последних двух пунктов, а также есть ли какие-нибудь другие подводные камни?

P.S. На счет выбраного форума не уверен, но думаю к теории это больше относится
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
2. Будут. У большинства проксей есть ограничение на время соединения. Без HTTP заголовка прокся соединения не создаст вообще. Если админ читает логи - ему это всё не понравится.

1. Хостинги исключаются. На 80й порт выделеного сервера почти всегда вешается веб-сервер, т.е. для чата надо отдельный ip, и демон запускать под рутом. Я лично не буду неизвестно какой демон запускать под рутом. Не сильно ли крутые требования для чата получаются?

К теории это не относится.
 

Tronyх

Новичок
1. Хостинги исключаются. На 80й порт выделеного сервера почти всегда вешается веб-сервер, т.е. для чата надо отдельный ip, и демон запускать под рутом.
У меня свой сервер.

2. Будут. У большинства проксей есть ограничение на время соединения.
Помогают реконекты.

Без HTTP заголовка прокся соединения не создаст вообще.
Не все. Вот и интересно на сколько их и много и как это обойти.

Не сильно ли крутые требования для чата получаются?
Согласен, но задача сделать чат на 1000 онлайн. Может есть какие-то другие варианты? Но чтобы не потерять производительность и скорость доставки сообщений.

К теории это не относится.
Опять согласен, но и про PHP тут не слова.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Тогда я вообще не понял, кого и о чем ты спрашиваешь.
Обычно тут обсуждают вопросы программирования на PHP.
Как лучше тебе сделать свой личный чат на своем сервере - скорее всего знаешь только лично ты.
 

Tronyх

Новичок
Тогда я вообще не понял, кого и о чем ты спрашиваешь.
Обычно тут обсуждают вопросы программирования на PHP.
Как лучше тебе сделать свой личный чат на своем сервере - скорее всего знаешь только лично ты.
Вообще-то я привык тут общаться с хорошими и опытными программистами.

А вопрос простой, каким образом можно уменьшить те грабли которые я описал, либо может быть есть другой способ сделать чат?
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
аа ну тогда ... я скорее плохой :)
(как там ... "хороший, плохой, злой")
 

ONK

Пассивист PHPСluba
Tronyх, имхо слишком экзотический путь ты избрал, коннект через скрытый фрейм дёшево надёжно и кроссбраузерно.
 

neko

tеam neko
тред не читал.

чето как-то замороченно слишком.
если уж вообще использовать флеш,
то на флеше можно сделать офигенный чат без всего остального.
 

Tronyх

Новичок
если уж вообще использовать флеш,
то на флеше можно сделать офигенный чат без всего остального.
да можно, но как сделать так чтобы этот офигенный чат не рубился фаирволами и проксями?
 

neko

tеam neko
непонятно, почему он вдруг будет рубиться?
флеш же посылает обычный http запрос.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
neko, автору хочется постоянное соединение браузера с сервером. Думаю, что идея взята с чата Бородина.

Иначе прийдется заниматься оптимизацией производительности при большом количестве запросов от клиентов, которые те создают для получения новых сообщений чата. А это - напряжно :)
 

Tronyх

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

непонятно, почему он вдруг будет рубиться?
флеш же посылает обычный http запрос.
Если флеш из флеша коннектится через XMLSocket то он отправит то, что скажешь. Можно было бы добавить и HTTP хедеры, но у флеша есть "политика безопасности" из-за которой ему нужно подтверждение от сервера что можно коннектится на 80 порт (т.е. на порты до 1024), и это подтверждение выдаёт тот же демон... на том же порту... а запрос генерит сама флешка и там не HTTP хедеров.
 

neko

tеam neko
> neko, автору хочется постоянное соединение браузера с сервером.

ActionScript provides a built-in XMLSocket class, which lets you open a continuous connection with a server. A socket connection lets the server publish, or push, information to the client as soon as that information is available.


> Если флеш из флеша коннектится через XMLSocket то он отправит то, что
> скажешь. Можно было бы добавить и HTTP хедеры, но у флеша есть
> "политика безопасности" из-за которой ему нужно подтверждение от
> сервера что можно коннектится на 80 порт

ничего не путаешь?
мне кажется это касается только ситуации когда соединие идет с локальной машины?

есть так, как ты говоришь, то да плохо.

-~{}~ 02.04.07 01:24:

да все нашел.
действительно нельзя до 1024.

-~{}~ 02.04.07 01:28:

Tronyх
посмотри AS3 и flex.
при поверхностном изучении, мне кажется, этой проблемы там нет.
 
Сверху