我想问一下创建Meteor后端的最佳实践。
我使用Meteor js作为前端,我计划在另一个端口使用一堆apache / php / yii framework / YiiMongoDbSuite作为后端(管理面板)。
也许有人建议我最好的方法是轻松创建流星应用程序的管理部分?
答案 0 :(得分:27)
如果您已经在PHP / Rails等中构建了后端,则可以考虑使用DDP客户端或REST来在流星和后端之间中继消息。 DDP比REST更具优势
它是一个开放的连接,你甚至可以获得实时更新。
虽然我不确定PHP的任何DDP客户端。有一小撮:
您也可以使用REST进行通信,但是您会错过很多功能。使用DDP,您可以访问Meteor.methods
并轻松订阅。
最后,您可以直接连接到您的mongodb并进行更改.Meteor将在10秒内处理它们。
但是为什么不将Meteor本身用作后端呢?使用seperat Meteor实例可能会使您的管理区域更安全。使用Meteor作为后端,维护起来会容易得多,您可以使用兼容的代码在两者之间共享。您可以使用Meteor.connect来访问客户端实例。
如果您的动机是安全性,那么您可以这样做。当Meteor已经让它变得如此简单时,使用单独的语言和堆栈几乎没有任何好处。
更新:Meteor 0.7.0引入了oplog尾部,因此您不必再等待10秒才能再次出现更新。它们就像流星本身一样瞬间。
答案 1 :(得分:0)
Meteor直接监听MongoDB数据库,因此任何更改都会自动更新应用程序。这意味着如果你想从PHP写入MongoDB,那么meteor会自动检测更改并更新字体结束。
我相信这也适用于numtel's meteor mysql package。如果您想要为需要实时更新或缓慢迁移项目的组件开始使用meteor,这将非常容易。
我们目前正在尝试使用我们的实时通知系统。我认为我们必须学会使用DDP,但实际上它就像两个系统都在监听同一个数据库一样容易。