大佬教程收集整理的这篇文章主要介绍了Node.js和Socket.io – 他们可以用实时Web应用程序走多远?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在考虑Node.js Socket.io,因为我希望我的Web应用程序是实时的(即:如果用户更新了一个注释,该注释会立即更新为共享该注释的协作者,而无需重新加载页面) .
作为第三种选择,我还在考虑将Node.js和Socket.io用于UI,将PHP用于REST API(使用PHP构建API感觉更舒服). PHP和Javascript代码将共享MongoDB数据库.
我的问题是:如果我使用PHP为我的Web应用程序开发REST API,并且通过API创建用户的新注释(即:Android应用程序发送API请求以创建该注释),Node.js,Socket.it和BACkbone.js能够立即更新用户的UI并在屏幕上显示新的笔记吗?我认为这可以称为“推送@L_450_16@”.
我希望我很清楚.
此外,有没有其他优秀的技术来构建实时Web应用程序?
Node的好处在于它不需要经常进行上下文切换,这意味着它可以非常快速地处理这些请求…最有可能比PHP服务器更快.但是,Node在单个cpu核心上作为单个进程运行.如果您的应用程序是cpu密集型的,那么它可能会阻塞,这意味着每个请求的时间会变慢.
然而,听起来我的应用程序不是cpu密集型的,这意味着Node.js可以很好地工作.
决策
如果您的时间有限,并且您不想学习新技能(节点),PHP就可以了.如果您有时间我建议学习Node.js,因为它在I / O密集型任务(例如用于创建Notes的REST API)方面非常强大.
更新UI
如果您的预期用途是通过移动设备,我建议使用WebSockets,但需要使用长时间轮询等后备.可以使用Node或PHP更新Client UI.但是从我的经验来看,使用Node.js上的Socket.IO更容易.
示例使用Node.js / Socket.io更新客户端
客户端
socket.on('new-note',function (data) { placeNewNote(data); });@H_673_38@服务器端
socket.emit('new-note',data);@H_673_38@节点入门:
How do I get started with Node.js另请注意,如果您要构建使用WebSockets的原生Android移动应用程序,则需要使用:Java socket.io client
以上是大佬教程为你收集整理的Node.js和Socket.io – 他们可以用实时Web应用程序走多远?全部内容,希望文章能够帮你解决Node.js和Socket.io – 他们可以用实时Web应用程序走多远?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。