利用 Socket.IO 来推送文章、评论

最近看了一下 Socket.IO 这个东西,感觉蛮厉害的。实时推送零延迟啊。

我想应该可以用这个来增强 WordPress (任何类型都都应该可用)。

理论上……

WordPress JSON 的插件,输出 JSON 格式,包括文章内容、评论、作者……什么有的没的。只需要架一台 Node 跑 Socket.IO 来监控这个 JSON URL(看更新)。只要比较文章发布时间,一有更新就推送给当前浏览中的用户。理论上,新评论都可以用此方法。

Socket.IO 只要 emit() 就可以推送了,简单过用 AJAX 不停发出要求。

Socket.IO 是什么?

Socket.IO 能实现实时双向的基于事件的通信。

发:emit(‘abc’)

收:on(‘abc’)

这里的 abc 就是一个特殊的事件。

Socket.IO 是双向通信,因为游览器可以触发一个事件到服务器,服务器也可以自己发给已经连上的用户。

更加厉害的是,用户正在输入时,可以广播到所有在游览的用户。类似那个 Disqus 评论系统。

更新:
“来监控这个 JSON URL”没什么效率,WP 本身有插件 API,发布或者更新文章、评论统统都会触发一些 filter hooks,例如:
1)发布新文章时,自动触发 publish_post
2)新评论,触发 comment_post

安装 socket.io-php-emitter 就可以写 WordPress 插件用 socket.io 推送了。

Published by

Galovia

九十度博客站长。