#node.js #websocket #socket.io
#node.js #websocket #socket.io
Вопрос:
Я хочу использовать dotcloud с node.js сокет.ввод-вывод для приложений реального времени.
Но они не поддерживают websockets.
Будет ли заметное снижение пропускной способности или производительности при использовании исключительно резервных копий?
Стоит ли использовать мой собственный сервер? Linode или aws или еще что-то.
Спасибо.
Комментарии:
1. Websocket действительно быстрее. Это стоит делать только в профессиональных условиях (т. Е. просто используйте резервные копии для игрушек / прототипов)
Ответ №1:
Я внедряю систему обмена мгновенными сообщениями, которая полностью зависит от websocket. Поскольку веб развивается довольно быстро, а websocket был в веб-стандарте, я решил использовать запасной вариант flash websocket для любого браузера, который не поддерживает его по умолчанию (Firefox, Opera). Вот что вы, возможно, захотите узнать:
-
Я использую websocket. Я использую чистый сервер websocket. Я не использую никаких других протоколов. Я не использую socket.io . Я должен сказать, что если вы решите использовать только websocket, у вас не будет преимуществ от socket.библиотека ввода-вывода, даже время разработки. Это только увеличивает ненужные накладные расходы на ваш сервер из-за поддержки нескольких уровней транспортировки.
-
На стороне клиента я использую websocket запасной вариант flash websocket, который реализует спецификации websocket с использованием flash socket, и я бы сказал, что заметной разницы нет. Единственное, что вы должны знать, это из-за «политики того же источника», вам может потребоваться выполнить запрос политики флэш-сокета самостоятельно (по умолчанию выполняется на порту 843), чтобы разрешить подключение к флэш-сокету.
-
В настоящее время мы используем частный сервер, потому что у нас есть выделенный системный администратор. Однако будет лучше, если вы сможете просто сосредоточиться на выполнении того, что вы намеревались сделать, а не на нежелательных вещах. О, и иногда лучше, если у вас есть полный контроль над вашим собственным сервером :-).
Надеюсь, это поможет.
Комментарии:
1. Спасибо, это очень полезно. Извините за поздний ответ, но у вас возникли какие-либо проблемы с socket. ввод-вывод, который заставил вас не использовать его? Я спрашиваю, потому что это похоже на socket. ввод-вывод — это то, что * используют все, и я не рассматривал возможность не использовать его. Но я подумываю о том, чтобы последовать вашему примеру.
2. Я также рассматривал socket. ввод-вывод в начале. Однако, как только сокет. ввод-вывод используется на одной стороне (сервере или клиенте), вы должны придерживаться его с обеих сторон. Следовательно, ваше приложение «websocket» будет несовместимо с любыми другими стандартными реализациями. Это помешало мне продвинуться дальше. Я думаю, что сокет. io хорош для исправления устаревшей интернет-технологии :).