事实上 Meteor 提供了两个MongoDB数据库:客户端缓存数据库、服务器端MongoDB数据库 当用户更改一些数据时,在浏览器中运行的js代码会更新本地MongoDB中的数据,然后向服务器发出一个...DDP请求 然后客户端代码继续运行,因为它不需要等待服务器回复,与此同时,服务器在后台更新,如果服务器操作失败,那么客户端js代码会依据从服务器新返回的数据立即进行调整,这种调整称为延迟补偿 Meteor...js的,并且MongoDB的文档结构就是json,所以就可以直接使用js操作数据库,得到的就是json结构数据,js直接在页面处理数据 (3)开发模式下,编辑更改代码后自动刷新浏览器,方便开发者查看运行效果...(4)自动编译(CoffeeScript、LESS、Stylus)、压缩合并、分发应用所包含的客户端 JavaScript、运行在于服务器端 Node.js 容器中的 JavaScript 以及 HTML...,Meteor帮你自动实现了从页面到数据库的代码 之后会再介绍下体验过程
miniMongo 的主要作用是缓存数据,相当于服务器端数据库的局部镜像,它不会缓存全部数据,只是缓存当前客户端用到的数据。...{{ counter }} 通过函数关联了 val 变量,按钮单击事件的处理函数中修改了变量 val 的值,并没有更新页面中的内容,但{{ counter }} 自动更新了,这就是响应式。...因为通过 DDP,服务器端可以主动向客户端发送数据,所以当数据库中有任何变化时,都可以立即通知客户端,客户端便可以进行更新操作,以快速响应。...Meteor 使用的DDP 协议就可以自动实现全双工通信,开发者无须为此费心。...基于Meteor 的同构特性,相同的代码可以运行于客户端,也可以运行在服务器端,运行在手机移动端也没问题。
不,使用meteor-build-client,你可以在没有服务器的情况下运行Ðapp的所有静态资源,但是如果你使用像iron或flow-router这样的路由器 ,则需要使用hash(index.html...ethereum:accounts: 为你提供所有当前可用的以太坊帐户的响应式EthAccounts集合,其中余额将自动更新。...启动你的Ðapp 游览Meteors文件夹结构 Meteor不会强制你拥有特定的文件夹结构,尽管某些文件夹具有特定含义,并且在绑定/运行你的应用程序时将被区别对待。...Ðapp 现在我们可以通过简单运行来运行我们的Ðapp: $ meteor 如果我们转到http://localhost:3000,我们应该看到一个网站出现,如果我们打开浏览器控制台,我们可以使用web3...这3个包为你提供了EthTools,EthAccounts和Ethblocks对象,它们为你提供格式化程序功能,包含来自web3.eth.accounts(具有自动更新余额)的帐户的集合以及最近50个块的集合
Meteor这个项目的来源非常有趣。 Meteor的几个创始人本来是要做一个在线旅游点评网站,并且已经进入了著名孵化器 YC,准备开干了。...-对应用进行管理,例如运行、重置、监控等。 -提供了 MongoDB shell终端。 -对项目进行编译打包。...响应式 响应式这个功能可以减少非常多的代码,例如,大大减少DOM更新操作。如果没有响应式,就需要自己操作DOM。...再比如数据库中的数据变化后,如果页面中使用到了此数据,就会自动更新;如果没有响应式,就需要自己编码检查数据的变化—如果有变化,从数据库获取数据,更新页面中的相关DOM内容。 5....前后端的数据同步采用异步方式 用户在客户端写入新数据后,不需要等待服务器端数据库的写入结果,只要数据成功保存在 miniMongo,用户就可以得到反馈,Meteor负责在后台自动向服务器端发送数据,执行同步操作
所以自动化测试是成功的关键。Meteor 1.3对模块的测试给予我们一个官方的回应。现在开发者能够将他们的代码分割成更小,更容易维护的小片段,他们现在就可以更高效地测试应用了。...如何运行测试 目前,测试需要两步来完成,首先,像往常一样运行你的应用: meteor 然后在另一个端口上运行测试汇报(假设这里应用运行端口为3000) meteor test --driver-package...avital:mocha --port 3100 浏览器打开http://localhost:3100,你应该看到一个报表展示了你的测试。...如果你修改了测试的代码或是应用的代码,测试会自动重新运行。这和Velocity的方法类似,如果你有时间的话,可以较为平滑地将测试按照官方解决方案迁移。 ?...目前测试只能用Mocha来写 (using the avital:mocha package),但在未来不会有这些限制。
BackboneJS BackboneJS 是一个轻量级 JavaScript 库,用来开发和构建在 Web 浏览器中运行的客户端应用。...这意味着基于 Node.js 的服务器永远不会等待 API 返回数据。服务器在调用它之后移动到下一个 API,并且事件的通知机制帮助服务器从先前的 API 调用获得响应。...Meteor 的主要特性: 全栈:Meteor 为开发和部署 Web 应用提供了全栈解决方案。 Meteor 捆绑了几个内置功能,如反应式模板、自动 CSS 等。...但 Meteor 不会。 Meteor 软件包可以轻松添加用户帐户,还有 React 之类的 JavaScript 库等。最好方便的是,添加这些类型的智能包很容易,只需在终端中敲几下键盘就可以了。...实时网络应用:Meteor 是构建实时程序的完美解决方案。从数据库到模板所有的层都会自动更新。这意味着无需刷新页面即可查看更新。对文档的任何修改都会立即保存。
一、前言 营销场景计算需求多种多样,场景模型也纷繁复杂,计算要求的资源配置也大小不一,系统更新部署步骤繁琐,人工操作亦有极大的安全风险。...因此,我们对Storm进行了二次封装,结合节点管理,图形计算、自动编译、动态打包、自动发布及部署等工具进行了一次系统的封装,封装后的平台在我们内部称之为Meteor,意思是快速达成美好的愿景。...Meteor CI Service和Storm客户端驱动的任务调度通过Meteor Service进行管理。 ? Meteor任务调度由不同的状态控制和管理,以保证整个系统运行的有序性。...此外,不同节点可以任意组合一个新的topology,同时我们引入权限管理,不用用户申请的计算资源(数据和节点算法)可以做到相互隔离,每个任务只能运行在授权的通道内,以此保证不同用户申请的资源不会被他人调用...它基于storm框架,通过重新设计整个底层架构及运行逻辑,并添加权限管理、限速、监控、日志等辅助功能,经过产品化并与公司发布平台打通,达到了用户申请即可用、配置个性化、大规模集群的要求,操作高效且自动化
对于Meteor长期任性不向下兼容的更新,各路开发者已经吐槽了几十个版本了。Orion的开发者也不例外,从1.2版本开始之后,就不在对Orion这个项目进行维护更新了。...好吧,meteor从1.3之后就没更新过,作为一个被Meteor快速迭代抛弃的「新人」,我决定从头来过!...To get started fast: $ meteor create ~/my_cool_app $ cd ~/my_cool_app $ meteor 上了个厕所以后,Meteor的更新完成了...** You've set up some data subscriptions with Meteor.publish(), but I20160930-16:25:09.858(8)?...可是还有点小问题,就是点进去看不到表格,打开浏览器console,发现报错ReferenceError: Session is not defined。
它与 Node.js 及 MongoDB 集成良好,支持实时数据更新,自动化开发流程,开发体验极为顺畅。 显著特性 实时数据更新 Meteor 最大的特点是内置的实时数据同步机制。...无论是客户端还是服务器端,数据更新可以立即反映在用户界面上,而无需手动编写复杂的 WebSocket 或 AJAX 逻辑。...快速原型开发 得益于 Meteor 的实时特性和一站式全栈平台,它非常适合快速开发原型。通过简单的命令行工具和自动更新功能,开发者能够在数分钟内搭建一个功能齐全的应用,极大提高开发效率。...服务器端渲染(SSR) Meteor 还支持服务器端渲染(SSR),为开发者提供更好的 SEO 支持和更快的首屏加载体验。这在构建需要搜索引擎优化的应用时,尤其重要。...({ text: 'First task' }); } }); 在开发过程中,Meteor 会自动监听代码的改动,实时编译并重新加载应用。
而对于浏览器兼容性测试,在IE流行的时代,为了兼容IE,很多人喜欢用一个叫IE Tester的工具。但这些都只属于测试的工具化,离自动化还有很长的距离。 ?...会上,前Googler尤雨溪带来的Meteor正致力于完善这件事。一般的单页应用都如下图,UI、客户端数据、和服务器数据相互沟通,达到状态的更新。...而Meteor则希望将客户端数据这一层变薄甚至直接去掉,以减少性能的损耗,因此他们引入一种叫Minimongo的数据库驱动,它遵守DDP(分布式数据协议),根据Meteor的说法,是一种简易的结构化数据获取及数据更新协议...它的特色是,可以在客户端直接定制想要订阅的数据格式,服务器根据请求对订阅者进行推送。Meteor的另一个特色是使用了WebSocket技术。...这套解决方案简化了服务器端,以统一的GraphQL接口提供给Relay这一层,Relay会自动获取数据并统一进行数据变更的处理,使数据获取和处理更加高效。 ?
建议结合源文档查看翻译) 为Meteor精心设计的客户端Router FlowRouter 是 Meteor 一个非常简单的路由器.它为客户端程序routing,不处理渲染本身....this.register('data', Meteor.subscribe('bootstrap-data'); } } }); Subscription Caching 你也可以使用...web应用程序, 你可能会想在子路径在运行特定的 meteor application 服务 (eg example.com/myapp)....但是在任何情况下, appId 不会改变. 因为这个, 我们到应用程序很多部分会重新运行,重新渲染. 这将会出现不可预测到渲染行为....但是 subscriptions 运行在服务的支持 Fast Render. Reason behind that Meteor 不是一个从服务器直接发送 HTML 到客户端的传统开发框架.
上述这段文字的信息量略大,建议大家往下看之前: 没听过 meteor 的,去 meteor 的官网上看看,生成几个样例中的项目运行起来感受一下; 没听过 rethinkdb,可以去官网了解一下它和 mongodb...我们看一个在线的项目管理系统,如果用户 A 修改了某个项目 x,我们想让所有和项目 x 相关的用户的界面立刻得到实时更新,该怎么做?...如果使用传统的解决方案,我们需要客户端和服务器保持 websocket 连接,A 的修改行为在服务端成功后要发布一条 message 到 message queue,并路由到合适的 worker 进行处理...;worker 从 queue 里拿到 message 后,将其 broadcast 到所有相关的 websocket,然后客户端的 websocket 收到数据后再分发给合适的函数处理,从而更新界面。...后端工程师依然重要,但是他们更大的舞台在稍微大一些的,找到了 product market fit 的团队中,这个时候,产品渐渐需要:1) 更复杂的 API 和后端处理能力(不是简单的数据库处理);2) 数据追踪和分析
原文来自Kadira Voice,标题为「Meteor’s Reactive GraphQL Is Just Awesome」。...那条评论会自动推送到客户端A。应用的开发者不需要写任何显式的代码来获取那条评论。 这就是响应式GraphQL。你不必重新获取数据或是手动的重新加载网页。...这是一个轻量级服务器,用来追踪所有通过GraphQL数据模式发送到客户端的文档版本。你的应用服务器发送所有查询请求和修改到这个服务器上。 你的应用客户端会与这个失效服务器交流并且观察所有的失效记录。...这个失效服务器并不真的处理数据。通常它对数据一无所知。你可以把它理解成一个分布式的版本跟踪服务。 Meteor的计划是把失效服务器作为一个开源项目,并且隶属于响应式GraphQL项目。...很有可能Galaxy (Meteor’s hosting service)会提供一个托管的失效服务器供你的app使用。所以,你不必担心你的服务端了。
对于新手来说,Node.js 是 JavaScript 运行时,允许你在浏览器之外服务器上运行 JavaScript 代码。...而另一方面,像 Mean.io,Meteor, Derby 和 Mojito,有自己的标准结构和技术体系,灵活性较差。然而这些框架不会给开发者太多做错误决策的空间。...Sail 特别适合用来开发对数据的实时更新有较高要求的应用,比如多人棋类游戏,单页web应用等等。...Racer 的确能够让基于 Derby 框架的应用运行地更快,无论是在浏览器端还是服务器端,对于单页面应用来说,它都是一个完美的选择方案。...使之可以同时运行在客户端和服务器端,并实现高性能。 10. Socket Stream SocketStream 是一个有趣的框架,专注于客户端和服务端数据的快速同步,它致力于前后端数据的实时更新。
meteor js的全栈开发框架,官方的解释: Meteor makes it an order of magnitude simpler, and a lot more fun....database, or wrangle an ORM layer, or swap back and forth between JavaScript and Ruby, or broadcast data...无需服务器端资源,app的云部署、无需担心数据库管理、orm层争论、亦或在js和ruby之间来回切换、或者是向客户端渲染数据失败问题。...1、创建应用并运行: 安装完成后,进入任意工作目录,执行命令创建应用: meteor create myapp 运行: cd myapp meteor 默认端口为3000,访问: ?...meteor自带一个云部署功能,比较厉害,直接执行命令: meteor deploy 其中可以为:yourSiteName.meteor.com 比如我的直接为:http://
从图中你可以看到,Meteor在前端使用浏览器作为基础运行环境,在后端则是以NodeJS作为 基础运行环境,以MongoDB作为数据持久化系统。...当 一个Meteor应用启动时,Meteor会自动加载这些库,为应用提供了一个基础环境。...,谁也没法保证一段JS代码既可以在前端浏览器环境中运行, 也可以在后端NodeJS中运行。...(比如,NodeJS有global,而 浏览器有window)。... 当Meteor运行这个应用时,将自动创建一个对应的模板实例对象:Template.hello。
使用Meteor,开发人员可以编写在前端和后端运行的JavaScript代码,从而实现服务器和客户端之间的无缝数据同步和实时更新。...多年来,Meteor 不断发展和成熟,定期更新和改进,以增强其功能并满足现代 Web 开发人员的需求。...实时更新:Meteor 的内置反应性和数据同步功能可以轻松创建具有实时更新的实时应用程序。服务器上所做的任何更改都会自动实时传播到连接的客户端。...性能考虑因素:Meteor 的实时功能和自动数据同步需要一些性能权衡。具有高流量或复杂数据结构的应用程序可能需要额外的优化以确保最佳性能。...灵活的数据绑定:Backbone.js允许开发者在模型和视图之间建立双向数据绑定,实现数据变化时的自动同步和更新。
Segmentation Editor),该工具专门用于创建机器学习语义分割的训练数据,为自动驾驶研究开发的,但也可以用于标注其他类型的语义目标数据库。...http://localhost:3000 10、浏览器打开网址之后可以选择一个文件进行双击即可开始标注了,如下图所示 ?...1、手动下载需要的安装包,直接点击下面链接使用浏览器下载,正常的话会很快: https://static-meteor.netdna-ssl.com/packages-bootstrap/1.10.2/..._64.tar.gz" 6、运行脚本进行安装 sh install.meteor.sh 7、安装好之后会出现下面的提示 Meteor 1.10.2 has been installed in your.../hosting 8、然后在进行步骤二中的第2、3、4、5步骤进行安装运行。
赫然发现,浏览器中的 Url 跟我实际分享页面的地址完全不一样。..._id); }, data: function () { return { enrollments: Enrollments.find(), activity:..._id); return Meteor.subscribe('activitiesComposite'); }, data: function () { return {...enrollments: Enrollments.find(), } } }); 我们发现,会报错的页面的 Route,都是根据某些 ID 动态变换的,实际页面在加载过程中,layout 是不变的,只是更新了页面中的某个块...因为对浏览器和 JavaScript 不是非常了解。我无法解释更多信息,只能给大家先提出解决办法。希望后面使用 Meteor 开发微信公共号的人可以避免这个问题。并从中找出更多可靠的解决方案。
服务端 ,由Node.js和RethinkDB构成,支持数据持久化,实时数据流,输入验证,用户认证和权限管理 Horizon客户端,开发者可以用于前端应用,将JSON数据存储到数据库中,执行请求,订阅在线更新等...Horizon命令行 - hz ,它会生成项目模板,启动一个本地的Horizon开发服务器,帮助你部署应用到云端 GraphQL支持 ,Horizon的服务端会由一个GraphQL适配器来驱动你的React...或Relay应用,这将使你在一开始就不必写后端代码,它不会在v1发布,但是会在项目启动后尽快发布。...同时,和Meteor的Galaxy类似,Horizon也提供了托管服务Horizon Cloud,现在处于内测阶段,不出意料的话,功能会包括RethinkDB和前端应用的一系列的监控,价格肯定不会比小VPS...而Meteor集成这些东西需要黑魔法。 Horizon只位于数据库和前端之间,Meteor是一个全栈的同构的体验。
领取专属 10元无门槛券
手把手带您无忧上云