Jat*_*tin 107 javascript web-applications node.js meteor
我遇到了Meteor,虽然看起来令人兴奋,但我想知道它是如何工作的.我的意思是传统的Web应用程序的工作方式如下:您在服务器上有脚本从数据库中获取数据并将其动态添加到Web页面,用户提交的数据通过其他一些脚本添加到数据库中.
但这些东西在Meteor中如何运作?Meteor的不同部分如何相互关联?
xer*_*r0x 81
Meteor是一个优雅地实时更新HTML的框架.
Meteor的美妙之处在于您只需要创建模板和数据模型.其余的通常样板代码被隐藏起来.您不需要编写所有同步代码.
Meteor的关键部分可以使用以下部件自行构建:
它提供了在数据模型执行时自动更新的模板.这通常使用Backbone.js,Ember.js,Knockout.js或其他工具完成.
在客户机/服务器的消息是通过做的WebSockets使用类似socks.js或socket.io.
与MongoDB的客户端连接非常酷.它将MongoDB服务器驱动程序复制到客户端.不幸的是,最后我检查过,他们仍在努力保护这个数据库连接.
该延迟补偿仅仅是首先更新客户端模型,然后发送更新到服务器的服务器.
您可以在Meteor网站或GitHub上找到其他整洁的部分.
Tad*_*eck 28
免责声明:此答案描述了Meteor,Meteor Server的 JavaScript客户端库.它最初是由于问题含糊不清而加入的,可能有助于澄清寻找类似答案的访问者所面临的类似歧义,但不确定其差异.
要了解流星JavaScript框架,请参阅此答案由xer0x.
正如Meteor Server的文档中所提到的,Meteor是Comet的一个实现.彗星反过来是AJAX的对应物.
在AJAX的情况下,您通常在客户端需要这样做时发出请求.要从服务器提取更新,您需要调用服务器,例如.每5秒钟.
对于Comet,来自服务器的更新速度更快,因为连接是持久的.连接由客户端建立,如在AJAX中,但服务器在有一些更新或达到执行限制之前不响应(服务器上的脚本可能有执行限制).
在Meteor的情况下,您只需获得需要一些特定服务器端代码(如Meteor Server)的恒定数据流以及客户端上的相应代码(在这种情况下,它看起来像是Meteor类).