确定我的 Node.js 应用程序当前在哪个 AWS Beanstalk 环境中运行的最佳实践是啥?
Posted
技术标签:
【中文标题】确定我的 Node.js 应用程序当前在哪个 AWS Beanstalk 环境中运行的最佳实践是啥?【英文标题】:What is the best practice for figuring out in which AWS Beanstalk Environment my Node.js application is currently running?确定我的 Node.js 应用程序当前在哪个 AWS Beanstalk 环境中运行的最佳实践是什么? 【发布时间】:2014-08-23 23:32:38 【问题描述】:我的 Node.js Express 应用程序在 AWS Beanstalk 中运行。我为我的应用程序创建了三个 Beanstalk 环境,即:
DEV(开发) UAT(用户验收测试) 产品(生产)根据我的应用程序运行的环境,我想连接到不同的数据库并使用不同的级联样式表。
确定我的 Node.js 应用程序当前在哪个 AWS Beanstalk 环境中运行的最佳做法是什么?
我觉得我应该使用 Beanstalk 环境标签,但我无法弄清楚如何通过我的 Node.js 应用程序访问它们。
【问题讨论】:
【参考方案1】:没错,使用您从 Beanstalk 控制台配置的环境变量,让应用程序的实例知道它在哪个环境中运行。您不会在节点 beanstalk 应用程序中获得that many options,但如果您说只想传递一个 db 连接字符串和一个 css 路径,您可以使用 PARAM1 和 PARAM2 执行此操作,然后在您的应用程序中使用
process.env.PARAM1 & process.env.PARAM2
(我通常将这些推送到应用程序引导程序上更合适的名称/位置)。
您的另一种选择是在 PARAM1 中传入一些软“env”变量,然后让您的应用程序计算出如何处理您的各种配置(但这会在您的应用程序中添加另一个隐藏的配置层)。
【讨论】:
以上是关于确定我的 Node.js 应用程序当前在哪个 AWS Beanstalk 环境中运行的最佳实践是啥?的主要内容,如果未能解决你的问题,请参考以下文章
哪个数据库适合我的应用程序 mysql 或 mongodb ?使用 Node.js 、 Backbone 、 Now.js