Мы планируем создать обширное веб-приложение, которое обеспечивает обновление данных и отображение данных в реальном времени (sth like stockmarket). Существует потребность в эффективной двунаправленной связи между сервером и клиентом. После исследования html5 веб-сокеты кажутся обязательными. Однако есть несколько вопросов, касающихся совместимости и резервного копирования, а также поддержки сервера. Нам нужно простое и стабильное решение в предпочтительной php и интеграции apache. Мы провели несколько тестов с phpwebsockets и pywebsockets, но они кажутся не такими стабильными. Что бы вы предложили в качестве более стабильного решения, но, возможно, в php? Заранее спасибо.Html5 websockets Идеальная платформа для разработки php
ответ
Что вы хотите использовать, это Socket.IO, который заботится обо всех проблемах между браузерами и обеспечивает бесшовные резервные копии для старых браузеров. Socket.IO был использован для использования с Node.js, но теперь он может использоваться с числом different server-side languages.
Тем не менее, я хотел бы NOT рекомендовать использовать веб-сокеты с PHP. Поскольку PHP не предназначен для длительной двунаправленной связи и приведет к тому, что весь процесс/поток Apache будет заблокирован с каждым новым соединением.
Я очень рекомендую использовать язык, такой как Node.js, на стороне сервера, который может без проблем справиться с тысячами долговременных подключений.
Nodejs по двум причинам:
1: Вы можете использовать один и тот же язык, на клиенте и сервере, таким образом, больше кода повторного использования.
2: Встроенный цикл событий делает javascript идеальным для тех, кто «выполняет крошечную работу, а затем спал в течение 20 секунд».
Вы должны любить javascript, чтобы взять его на сервер.
Вы пробовали COMET?
Theres много образцов приложений COMET + PHP в Интернете.
http://www.zeitoun.net/articles/comet_and_php/start
http://ajaxian.com/archives/comet-with-php
http://www.phpclasses.org/blog/post/58-Responsive-AJAX-applications-with-COMET.html
я бы, вероятно, пойти с Node.js. Хотя я обожаю javascript, я не пил прохладную помощь Node.js. (Справедливое предупреждение ...)
Но Node.js позволяет использовать Socket.io - и именно это вы хотите использовать, чтобы обеспечить бесперебойную работу в режиме реального времени на всех «всех» системах. Связь между PHP и Node.js может обрабатываться через сокеты, базу данных или некоторые другие безумные вещи.
Веб-сокеты не поддерживаются хорошо, а также нет стабильной реализации php.
Рассматривали ли вы использование длинного опроса/COMET? Он будет работать во всех браузерах.
С помощью [web-socket-js] (https: // github.com/gimite/web-socket-js) polyfill/fallback, WebSockets можно использовать практически во всех браузерах в дикой природе (пока ваш сервер также поддерживает протокол Hixie-76 для iOS). – kanaka
- 1. Идеальная среда разработки/тестирования/QA для разработки
- 2. «Идеальная» среда разработки .NET?
- 3. HTML5 websockets vs PHP websockets vs node.js websockets?
- 4. Платформа/эмулятор разработки для тестирования и отладки мобильной игры HTML5
- 5. Какая вы идеальная конфигурация vim для разработки php?
- 6. Идеальная среда для веб-разработки «всегда/везде»?
- 7. Платформа для разработки Windows 7
- 8. Какая платформа для мобильной разработки?
- 9. Платформа разработки для приложения iPhone
- 10. Платформа для разработки приложений для Android PocketBook
- 11. HTML5: Последние WebSockets
- 12. Поддерживает ли платформа балансировки нагрузки приложение WebSockets?
- 13. Платформа для разработки всех вещей google?
- 14. Платформа для разработки на нескольких OS-телефонах
- 15. Платформа для разработки нового веб-приложения
- 16. Стандартная платформа разработки для веб-браузеров
- 17. Какая лучшая платформа для разработки скин-приложения?
- 18. Что такое платформа для разработки GIS?
- 19. Платформа разработки для j2EE/Flex под Linux?
- 20. Какая лучшая платформа для веб-разработки .NET?
- 21. Рекомендуемая платформа разработки для доступного мобильного приложения?
- 22. Как использовать HTML5 WebSockets для расширений Chrome
- 23. HTML5 WebSockets работает только для локального хоста
- 24. HTML5 Websockets для приложения Realtime Chat?
- 25. Porting node.js серверный код для HTML5 WebSockets
- 26. HTML5 WebSockets Требования к серверу
- 27. Websockets & PHP
- 28. Идеальная среда CUDA для Windows -
- 29. Mac, Windows, Linux - какая платформа для веб-разработки?
- 30. Кросс-платформенная платформа для разработки мобильных приложений для NFC
Я также предпочитаю nodejs, но ему нужно что-то легко совместимое с php и apache. Возможно, запустите сервер узлов, добавьте столько сложностей к его проекту. –
Будучи самим PHP-разработчиком, я чувствую себя обязанным сообщить: «Использовать правильный инструмент для работы». PHP не является правильным инструментом для работы. (Не говоря, что Node.js либо, но по сравнению с PHP, он лучше подходит из-за Socket.io) – rodneyrehm
Кроме этого, я бы предположил, что это правильно, и что-то написать в Эрланге. (да, это троллинг и вообще не помогает, но для этого PHP сам по себе похож на злоупотребление отверткой для молотка). – rodneyrehm