Questions tagged «production-environment»

生产环境就是在现实环境中向目标受众开放的环境。



7
在Rails生产中config.assets.compile = true,为什么不呢?
已安装的默认Rails应用rails new已config.assets.compile = false在生产中。 通常的处理方式是rake assets:precompile在部署应用程序之前运行,以确保所有资产管道资产都已编译。 那么,如果我开始config.assets.compile = true生产该怎么办? 我precompile不再需要跑步了。我认为将会发生的是第一次请求资产时,将对其进行编译。这将是第一次降低性能(这意味着您通常需要在生产环境中使用js运行时才能做到)。但是除了这些缺点之外,在对资产进行延迟编译之后,我认为对该资产的所有后续访问都不会影响性能,该应用程序的性能将与在此初始首次命中的延迟编译之后的预编译资产完全相同。这是真的? 有什么我想念的吗?还有其他原因不适合config.assets.compile = true生产吗?如果我已经在生产环境中使用了JS运行时,并且愿意为资产的首次访问权衡性能下降的代价,而不必运行它precompile,这是否有意义?



5
金丝雀释放策略与蓝/绿
我对 canary版本的理解是,它是对部分粘性会话已启用的生产节点的部分版本。这样,如果您最终发布了一个严重的错误,则可以控制并最大程度地减少受到影响的用户/客户的数量。 我对蓝/绿发行版的理解是,您拥有两个镜像的生产环境(“蓝”和“绿”),并且您将更改一次推送到蓝或绿的所有节点,然后使用网络魔术来控制通过DNS路由到哪些环境用户。 因此,在我开始之前,如果到目前为止我所说的话是不正确的,请先纠正我! 假设我大致上步入正轨,那么关于这两种策略的几个问题: 在某些情况下,金丝雀比蓝/绿优先,反之亦然吗? 在某些情况下,部署模型可以同时实施两种策略吗?

5
Webrick作为生产服务器还是Thin或Unicorn?
您一定不能将Webrick用作生产服务器,这似乎是理所当然的,但是我在任何地方都找不到真正的原因。共识似乎是:“ Webrick可以进行开发,但是Thin或Unicorn是生产期的选择。” 我确实查看了Thin Server的主页,它讨论了每秒请求数,但是由于没有注释,我不太了解该图。 有人可以让我知道为什么与Webrick相比我应该使用Thin或Unicorn吗?使用Webrick进行开发是否也有好处?我一直在使用Webrick,因为它附带了rails,我认为应该将它作为默认设置是有原因的。 我正在使用Heroku。

11
如何设置ASPNETCORE_ENVIRONMENT以考虑发布asp.net核心应用程序?
当我将asp.net核心Web应用程序发布到本地文件系统时,它始终采用production-config和ASPNETCORE_ENVIRONMENT变量,其值为=“ Production”。 我必须如何以及在何处设置ASPNETCORE_ENVIRONMENT变量的值,以便不仅可以将其用于调试,还可以将其用于发布?我已经尝试了以下选项,但没有成功: 在Windows设置中 在.pubxml文件中 在launchSettings.json中 在project.json中

1
如何配置MongoDB Java驱动程序MongoOptions以用于生产?
我一直在网上搜索有关为MongoDB Java驱动程序配置MongoOptions的最佳实践,除了API之外,我还没有提出其他建议。在我遇到“ com.mongodb.DBPortPool $ SemaphoresOut:信号量不足以获取数据库连接”错误之后,此搜索开始了,并且通过增加连接数/乘数,我能够解决该问题。我正在寻找配置这些选项的链接或您的最佳实践。 2.4驱动程序的选项包括:http : //api.mongodb.org/java/2.4/com/mongodb/MongoOptions.html autoConnectRetry connectionsPerHost connectTimeout maxWaitTime socketTimeout threadsAllowedToBlockForConnectionMultiplier 较新的驱动程序具有更多选择,我也将有兴趣了解这些。


6
如何判断滑轨是否在生产中?
我用了 script/server -e production在生产模式下启动Rails。做到了,我没有任何错误。但是,如何知道它是否处于生产模式?我尝试了一条不存在的路由,并且在开发中遇到了类似的错误页面。 我想如果在生产模式下,我会在/ public文件夹中看到404错误页面。 这是否意味着它没有在生产模式下启动? 谢谢你的帮助。

6
部署生产Node.js服务器
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 改善这个问题 我已经编写了一个Node.js应用程序,我希望它可以在我们的一台生产机器上运行。这似乎是一个很普遍的要求,但我找不到合适的解决方案。是否存在用于部署生产Node.js应用程序的既定解决方案? 该应用程序很简单(<100 LOC),但是需要非常高效,可靠并且可以连续运行数年而无需重新启动。它将在大型站点上运行,每秒有数十个连接。(该应用程序不用作网络服务器,它只有JSON API) 这是我考虑过的方法,但我仍然不确定: 使用框架(例如Express) 由于该应用程序需要高性能且非常简单,因此我想避免以框架形式添加膨胀。 使用以下命令启动服务器 nohup 这里的主要问题是异常处理,我们(显然)不希望整个服务器由于异常而崩溃。据我了解,将整个应用程序包装在一个try {} catch {}循环中将无济于事,因为在发生异常之后,JavaScript解释器处于不可预测的状态。那是对的吗? 使用永远的东西 我已经在我们的FreeBSD机器上安装了Forever,这非常容易出错。最终产生了无尽的进程,这些进程无法从Forever中永久杀死。我不得不kill -9跑回机器,对在Forever上运行生产应用程序的信心不大。看来Upstart(类似的工具,但更通用)不会在FreeBSD上运行。 托管解决方案(例如Heroku,Rackspace,Amazon EC2等) 这可能是最简单的解决方案,但对于其他Web服务器,我们已经拥有了不错的硬件。出于财务考虑,这没有任何意义。 当然必须对此有一些确定的解决方案?我想念什么吗?

2
在生产中使用CSS / JavaScript Source-Maps对性能有何影响?
是否应在生产环境中使用源映射?除了调试以外,它们还提供其他好处吗? 由于额外的服务器往返次数,它们是否会影响应用程序加载时间?浏览器是否足够聪明,可以.map在加载和呈现应用程序后加载资产? 如果浏览器找不到.map资产(404错误),会对性能产生影响吗?我应该关心修复它吗? 请注意,.map如果要进行复杂的concat / minimize构建步骤,则修复最后一个可能不如提供资产那么容易。

4
仅针对生产环境禁用Devise注册
我正在与一组特定的用户一起启动Beta版网站。我只想在生产环境中禁用注册,并且只能禁用一小段时间(即,我不想完全取消注册)。我知道我可以简单地隐藏“注册”链接,但是我怀疑黑客比我仍然可以使用RESTful路由来完成注册更聪明。禁用注册的最佳方法是什么,这样我的测试/开发环境仍然可以工作,但是生产会受到影响?感谢您的指导。 我尝试以“ sign_up”转到“ sign_in”的方式指向命名作用域,但是没有用。这是我尝试过的: devise_scope :user do get "users/sign_in", :to => "devise/sessions#new", :as => :sign_in get "users/sign_up", :to => "devise/sessions#new", :as => :sign_up end 理想情况下,我们会将用户转到“ pages#registration_disabled”页面或类似的页面。我只是想得到一些可以玩的东西。 编辑:我已根据要求更改了模型,然后将以下内容添加到/spec/user_spec.rb describe "validations" do it "should fail registration if in production mode" do ENV['RAILS_ENV'] = "production" @user = Factory(:user).should_not be_valid end end 它传递的是“ true”而不是false。有没有办法模拟生产环境?我只是在吐口水。 …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.