实时 Web 应用程序使用啥以及为啥?需要解释和小型现场演示[关闭]
Posted
技术标签:
【中文标题】实时 Web 应用程序使用啥以及为啥?需要解释和小型现场演示[关闭]【英文标题】:Real-time Web Application using what and why? Explanations and small live demo needed [closed]实时 Web 应用程序使用什么以及为什么?需要解释和小型现场演示[关闭] 【发布时间】:2014-08-02 02:59:46 【问题描述】:我想学习,如何制作类似于 facebook 和 google 的“通知”/“聊天”。 我搜索了所有网络/几乎堆栈溢出问题以获得我的答案,但最终我连一个聊天框都没有。 我搜索并在以下方面有很大的困惑: 1.“Pinging Server per second”和“Long Polling”是同一种技术不同的两个术语还是技术也不同???请解释和演示。 2. APE(AJAX Push Engine)解释和Demo。 3. Socket.IO和Node.js的解释和Demo。 4. Ratchet (php) ,我很努力地尝试了这个,但最终还是无处可去。请解释和演示。
哪种方法最好?对于推送通知或说实时网络应用程序?并且很容易在WAMP windows server
上实现
你可以期待我从初学者提升 1 级。 在推送通知中,需要检查数据库是否有新的更新,但对于私人两方聊天,不需要数据库,这是我的想法。 但是保存聊天记录是合法的,所以以上两个对于我的要求都需要实时处理 php 文件。 请帮忙。
【问题讨论】:
【参考方案1】:我没有给你一个完整的答案,但我确实构建了一个基于 PHP 的带有 PM 功能的聊天/群组客户端。这是一个有趣的项目,但在压力下失败了(100 多人在群聊 - 我怀疑客户端服务器还没有准备好)。
从那时起已经有几年了,但是从头开始构建它有很多问题需要解决。
我在 javascript 中使用了 1-5 秒的更新脚本来检查服务器是否有更新。
更新(或多或少)是这样的路径:site.com/app/username/hash/
我使用 user+hash 将内容序列化给用户并使应用更难破解(hash 是通过 SHA1 的用户 ID+salt)。端点将返回带有 unix 时间的 json。如果 unix 时间大于 unix 时间,则将新响应放入聊天窗口(ajax+append)。实际操作比那粗略的要复杂一些,但重点是说清楚了。
我在计划时没有看到应用程序的许多麻烦和奇怪的问题。我研究了现有的协议以获取指针,但最后我学到了两件事:
1-不值得构建,因为我发现了一些开源项目。
和 2 - PHP 并不那么高兴,我认为 DB 套接字在负载下着火了。
你现在有我的 0.02 美元
【讨论】:
以上是关于实时 Web 应用程序使用啥以及为啥?需要解释和小型现场演示[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
怎样用通俗的语言解释啥叫 REST,以及啥是 RESTful
怎样用通俗的语言解释啥叫 REST,以及啥是 RESTful