用于制作的“流星”与“流星束”

时间:2014-01-23 18:23:47

标签: meteor

对于制作,我为什么要“捆绑”流星应用程序而不仅仅是复制 服务器上的源使用“meteor”命令?

基本上有什么区别:

  • “meteor bundle app.tar.gz”,然后安装正确版本的光纤和nodejs 并提取存档并以“node main.js”应用程序开始,

  • 并在服务器上复制项目源,只需编写“meteor”即可开始 应用程序?

2 个答案:

答案 0 :(得分:16)

这不是一个详尽的列表,但以下是meteor命令所做的一些事情:

  1. 创建本地数据库
  2. 观看应用或包中的每个相关文件
  3. 将每个文件单独发送并且无需通知给客户端(除非您在本地开发,否则这是非常低效的)
  4. 相比之下,捆绑应用程序:

    1. 不会创建本地数据库
    2. 不会花费CPU来监视您的文件以进行更改
    3. 创建两个缩小文件(js和css),非常适合放置CDN或从reverse proxy托管。这些对于客户端来说也是高效的,并且可以高度缓存。
    4. 一般来说,如果你使用一套好的scripts,部署不应该是一个巨大的痛苦。

答案 1 :(得分:1)

使用捆绑包时:

  1. 它不会产生meteor-mongo(流星内的Mongodb)
  2. 没有热重装
  3. Meteor不会看你的文件。
  4. 您可以离开/退出服务器而不会删除您的应用。
  5. 您可以使用pm2或其他类似的npm软件包顺利管理节点进程。
  6. 您可以决定将mongoDB放在何处并决定使用哪个端口。
  7. 您无需运行流星应用即可远程连接到您的mongodb。
  8. 在项目目录中使用副本或运行meteor命令时:

    1. 在不使用任何屏幕多路复用器(例如tmux)的情况下保持项目运行的同时,不能离开/退出服务器
    2. 你只能使用在localhost中生成的meteor指定的mongodb:3001 - 如果meteor使用的是端口3000。
    3. 您正在让meteor监视使用CPU的文件更改。
    4. 当您的应用程序死亡时,您的数据库会死掉。 :)