因此,我在服务器上添加了node.js+socket.io,并使用node.js每10秒轮询MySQL数据库以检查是否有新项目:如果有,则会使用socket.io将它们发送到客户端。
尽管存在高达10秒的延迟,但我对结果感到非常满意,即使这不是真正的实时通知。
现在,我即将构建一个新的Web应用程序,它也需要推送通知。我在考虑是否采用与第一个应用程序相同的方法(我认为更稳定和成熟),还是完全采用Node.js,而不使用PHP和Apache。至于数据库,我已经决定选择MongoDB。
最后,我的问题是:如果我选择使用Node.js + Socket.io + MongoDB,我能得到一个接近实时的web应用程序吗?我的意思是,当一个新的记录被插入到MongoDB中,是否会触发某种事件,我可以通过node.js捕获它,对其进行一些检查,并在相关时将通知发送给客户端?或者,在数据库服务器端是否有任何轮询和滞后方式,就像我的第一个LAMP webapp一样?
一个相关的问题:您能否在MySQL上构建实时Web应用程序,而不需要像我第一个应用程序那样进行任何轮询。还是需要MongoDB(或Redis)?
我希望这个问题不太傻 - 抱歉,我刚开始学习Node.js等技术。
谢谢。