在部署流星应用程序之前要考虑什么?

时间:2016-08-08 09:40:46

标签: meteor web-deployment jdeveloper

我听说在部署流星应用程序之前需要考虑很多事情,但是,它仍然很模糊。有人请给我一些关于这个问题的意见。谢谢

1 个答案:

答案 0 :(得分:0)

对于这类问题,这可能是错误的论坛,因为它是高度自以为是,而不是Q& A格式,但我会给你一些个人意见。

我在哪里托管我的应用程序?

这与您的应用程序(基于Web的应用程序,仅限Android),您计划拥有多少用户,如果这是一个公共应用程序或私有内容,您需要花多少钱,和许多其他因素。选项包括:

  1. 自己托管 - 可以使用VPS(虚拟专用服务器,如Digital Ocean等),某些云产品(AWS或类似产品),或者您在某处托管的裸机服务器(如壁橱中)。
  2. 支付专用主机 - 有几个提供许多不同功能,如Galaxy或Modulus等。
  3. 如果您自己托管,那么您必须维护托管解决方案,我需要您自己支持。这可能意味着配置/安装操作系统,安装和配置服务器应用程序(MongoDB,Node.js,Web服务器等),并随着时间的推移维护所有内容。然而,好处是可能更便宜的托管成本(虽然这可能是有争议的)和自定义设置/架构。如果您要创建一个应该保密的应用程序(I.E.而不是公共应用程序),您可能需要考虑此选项,以便您可以将其托管在公司内部而不是面向公众。有一些工具可以简化设置服务器的过程,例如MUP / MUPX。

    对于专门的Meteor托管,其好处是其他人可以安装,配置和维护核心应用程序,您只需按下按钮即可移动代码。这些选项可能更昂贵它们涵盖了支持环境的IT成本,但它们通常带来以下好处:a)您不必自己安装所有这些东西,b)您根本不需要成为专家"管道",c)您不必雇用员工来支持您的基础架构,d)这些托管服务通常知道如何正确优化事物以获得更好的应用程序性能。

    我手动部署还是使用某种工具?

    这在很大程度上取决于#1的答案,因为您的托管决策可能带有它自己用于部署的工具集(例如Galaxy),或者您可能需要四处寻找最佳工具您。对于手动部署,我建议查看MUP / MUPX,它可以自动部署您的应用程序,甚至可以配置Web服务器,数据库服务器以及将所有内容设置为Docker镜像。或者,如果你想拥有更多的控制权,可以看看像Grunt或Gulp这样的东西,它们是更多的构建脚本解决方案(类似于ANT / Maven / Gradle用于Java)。

    我是否期望快速增长或缓慢滴流?

    同样,这与您计划托管的位置有很大关系。许多云服务可以根据负载轻松扩展/缩小服务器集群,但这需要很多配置,而不仅仅是安装操作系统。 VPS和裸机解决方案将是最难扩展的。专用托管将取决于提供商。

    即使您不认为自己的应用会起飞,也需要考虑如何处理快速增长的情况。互联网上充斥着失败的应用程序,因为他们并不认为他们会像现在这样成功。对于你的应用程序,只需要提及Reddit,Y Combinator或Product Hunt之类的内容,即可获得突然出现的意外流量冲击服务器。如果您知道您的增长将以某种方式受到控制,例如,如果您拥有预先设定数量的用户的私人应用,那么您可能不需要担心它。

    我是否需要监控自己的应用?

    答案总是"是",但到了什么程度?您需要提供24x7的正常运行时间吗?停电会花费你很多钱,让你失去你最大的客户等吗?用户可以在没有服务的情况下生活一段时间,如果它发生故障,或者我会丢脸还是顾客?根据您需要的严重程度,您应该考虑对您的基础架构和应用程序进行某种监控。同样,这里有很多选择,你的决定可能会因第一个问题的答案而受到相当大的影响。

    我确信还有其他问题,但这些是我能想到的最大问题。