使用Memcache构建PHP/Javascript聊天室
Using Memcache to Build a PHP/Javascript Chat Room
可能重复:
使用memcached作为聊天消息的数据库缓冲区
我的一个朋友告诉我,他是如何使用Memcache构建PHP/Javascript实时聊天室的,但我不知道当数据每隔几秒钟更新一次(可能(时,Memcache会有什么帮助。当然,他让我自己想办法。
有人能告诉我们Memcache在这样的应用程序中有什么优势吗?(我不想知道如何准确地做到这一点,只想知道Memcache如何在数据不断更新的应用程序中加快速度。(
Memcache是memcached(内存对象缓存(的PHP接口
这真的不是适合这份工作的工具。很明显,他将数据存储为密钥——这可能比访问数据库更快,但这仍然很糟糕。
如果你想实现某种实时聊天解决方案,我建议你研究以下技术。仔细阅读它们,你会找到一个适合你需求的解决方案。
- 带有聊天服务器或
- HTML5 Web套接字或
- COMET(Facebook使用这个。(
Flash(AS3(套接字:有很多方法可以构建Actionscript 3聊天系统。如果您使用现有的众多解决方案中的一个,这实际上非常容易。IE:Smartfox。您甚至可以在每次收到消息时使用外部接口来触发Javascript事件。
HTML5 Web套接字由于对这一点的支持相当不稳定,我建议您使用Flash来优雅地降级。可以使用的库示例:https://github.com/gimite/web-socket-js/
COMET/长轮询这是一个非常有趣的方法。实际上,您要做的是通过在某些数据可用之前不返回任何数据来"阻止"HTTP请求服务器端。例如:
while(!d = data()) {
// no data...
}
return "{data : d}"
在大多数情况下,你的浏览器只是高高兴兴地坐在那里等待事情的发生。一旦收到数据,浏览器就会关闭连接——这就是处理数据的时候,然后重新打开连接(发出一个新的ajax请求(,这样你就可以监听新的事件了!
为了实现这一点,我建议使用非阻塞服务器,如Tornado(http://www.tornadoweb.org/)
- 滚动条在聊天室中不起作用
- 如何使用socket IO检查有多少参与者连接到我的聊天室
- 向聊天室发送消息 socket.io 节点.js
- 从特定行加载聊天室.html文档
- 如何为动态聊天室配置高速公路(crossbar.io)
- 聊天室的可靠计时器
- 即时消息,聊天室 - 用于 LAMP
- 如何设置离线环境来测试我的 Google App Engine 聊天室
- 如何在 Firechat 中创建聊天室
- 你知道一个易于安装的javascript聊天吗
- 在创建jquery+PHP+MySQL聊天室时遇到问题
- 如何完成滚动聊天室的制作
- 如何加快jquery/php/ajax聊天室的速度
- 用于聊天室的AJAX, jQuery, javascript
- 节点聊天室,存储消息在数组或只是redis
- 我用插座做了一个简单的聊天室.如何防止XSS攻击?
- 如何创建javascript聊天
- Javascript聊天文本到底部
- 使用Memcache构建PHP/Javascript聊天室
- 对一些Javascript聊天室代码进行逆向工程