Tag: 生产环境

Rails国际化(I18n)模型validation:可能与否?

我在模型中有以下validation: validates_inclusion_of :whatever, :in => [true, false], :message => I18n.t('please_select_whatever') 看起来翻译在生产模式下不起作用:在所有语言中,英文翻译总是被显示(可能是因为我在我的应用程序中将英语设置为默认语言环境…)。 所以我假设我们不能在模型中翻译validation,因为模型只能被加载一次 – 当服务器被引导(然后,默认的语言环境将被应用)。 我对吗? 如果是的话,你会如何解决这个问题? 谢谢你的帮助!

SQLite作为低stream量网站的生产数据库?

我正在考虑使用SQLite作为一个网站的生产数据库,可能会收到20个同时在线用户,但有可能是一个高峰,可能是多个倍数(因为该网站将在开放的互联网上访问,总是有有人会在某个地方张贴链接,可能会立即将许多人带到网站)。 SQLite是否有可能? 我知道这不是一个理想的生产场景。 我只是问,这是否是在一个现实的可能性领域。

用于生产的最佳和最安全的Java Profiler?

我正在寻找一个Java Profiler,用于需求非常高的生产环境,无论是商业还是免费的,都满足以下所有要求: 与代码的轻量级集成(不需要用特殊选项重新编译,不需要代码钩子等等)。 在应用程序代码旁边放置一些Profiler特定的.jar是可以的。 应该能够连接/断开连接到JVM而无需重新启动应用程序。 分析不活跃时,对性能没有影响 分析活动时,对性能的影响可以忽略不计。 很轻微的降解是可以接受的 必须完成分析器所需的所有“预期”工作 – 在每种方法中花费的时间来查找热点,对象分配/内存分析等。 从本质上讲,我需要一些能够在生产过程中处于hibernate状态的东西,而不需要任何人知道或关心它是否存在,但是却可以自由地连接到麻烦(和性能下降),以确定难以发现的问题,如热点和同步的问题。

金丝雀发行策略与蓝/绿

我对一个金丝雀版本的理解是,它是一个部分版本的一部分生产节点打开粘滞会话。 这样,如果您最终发布了错误的bug,您可以控制并最大限度地减less受到影响的用户/客户的数量。 我对蓝/绿发行版的理解是,你有2个镜像生产环境(“蓝”和“绿”),你可以一次将所有节点变成蓝色或绿色,然后使用networking魔法来控制哪些环境用户通过DNS路由到。 所以,在我开始之前,如果到目前为止我所说的话都是不正确的,请先纠正我! 假设我或多或less地走上了正轨,那么关于这两个策略的几个问题: 有金丝雀比蓝/绿偏好的情况,反之亦然? 有部署模型可以同时实施这两种策略吗?

在生产中使用css / javascript源地图的性能影响?

应该在生产环境中使用源图吗? 他们提供除debugging以外的任何好处吗? 他们是否影响应用程序加载时间,由于额外的服务器往返? 浏览器是否足够聪明,以加载和渲染应用程序后加载.map资产? 如果浏览器找不到.map资源( 404错误),会不会有性能影响? 我应该关心修理吗? 请注意,如果复杂的concat / minify构build步骤,修复最后一个可能不如服务.map资产那么简单。

如何判断导轨是否在生产?

我使用script/server -e production在生产模式下启动rails。 它做了,我没有错误。 但是,如何判断它是否处于生产模式? 我尝试了一条不存在的路线,而且我得到了一个类似的错误页面,我在开发过程中。 我想如果在生产模式下,我得到了我的/公共文件夹中的404错误页面。 这是否意味着它没有在生产模式下启动? 谢谢你的帮助。

仅对生产环境禁用Devise注册

我正在启动一个testing版网站,其中包括一组用户。 我只想在生产环境中禁用注册,并且只在很短的时间内(即我不想完全注册我的注册)。 我知道我可以简单地隐藏“注册”链接,但是我怀疑黑客比我还可以使用RESTful路由来完成注册。 什么是禁用注册的最好方法,所以我的testing/开发环境仍然有效,但是生产受到影响? 感谢任何指针。 我已经试过用“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 它传递的是“真实的”而不是假的。 有没有办法模拟生产环境? 我只是吐这个。 谢谢!

部署生产Node.js服务器

我已经写了一个Node.js应用程序,我正在寻找它在我们的一台生产机器上运行。 这似乎是一个相当普遍的要求,但我找不到一个适当的解决scheme。 是否没有build立生产Node.js应用程序的解决scheme? 该应用程序很简单(<100 LOC),但需要非常高效,可靠,可连续运行多年,而无需重新启动。 它将在一个大型网站上运行,每秒钟几十个连接。 (该应用程序不被用作networking服务器,它只有一个JSON API) 以下是我考虑的方法,但我仍然不确定: 使用框架(如Express) 因为应用程序需要高性能,而且非常简单,所以以框架的forms添加膨胀是我想要避免的。 用nohup启动服务器 这里的主要问题是exception处理,我们(显然)不希望整个服务器因为exception而崩溃。 据我所知,在一个try {} catch {}循环中包装整个应用程序将无济于事,因为在解释exception之后,Javascript解释器处于不可预知的状态。 那是对的吗? 使用像永远的东西 我已经在我们的FreeBSD机器上安装了Forever,这是非常麻烦的。 它最终产生了无法从Forever中杀死的无尽进程。 我必须运行kill -9来让我的机器重新运行,并且我对运行Forever上的生产应用程序没有太大的信心。 也似乎Upstart(类似的工具,但更通用)不会在FreeBSD上运行。 托pipe解决scheme(如Heroku,Rackspace,Amazon EC2等) 这可能是最简单的解决scheme,但我们已经有一个严重的硬件,我们的networking服务器的其余部分。 出于财务考虑,这是没有道理的。 一定有一些确定的解决scheme呢? 我错过了什么吗?

如何configurationMongoDB Java驱动程序MongoOptions以供生产使用?

我一直在寻找networking寻找configurationMongoDB Java驱动程序MongoOptions的最佳实践,我还没有拿出比API更多的东西。 这个search开始后,我遇到了“com.mongodb.DBPortPool $ SemaphoresOut:出信号量来获取数据库连接”错误,并通过增加连接/乘数我能够解决这个问题。 我正在寻找链接或configuration这些生产选项的最佳做法。 2.4驱动程序的选项包括: http : //api.mongodb.org/java/2.4/com/mongodb/MongoOptions.html autoConnectRetry connectionsPerHost connectTimeout maxWaitTime 了socketTimeout threadsAllowedToBlockForConnectionMultiplier 较新的驱动程序有更多的select,我也有兴趣听到这些。

Webrick作为生产服务器与薄型还是独angular兽?

这似乎是理所当然的,你不能使用Webrick作为生产服务器,但我真的找不到任何提及为什么。 共识似乎是:“Webrick可以发展,但是Thin或Unicorn是生产的select,期间。” 我查了一下Thin服务器的主页,它提到了每秒的请求数,但是我没有真正理解这个图,因为没有注释。 谁能让我知道为什么我应该使用薄或独angular兽相比Webrick? 使用Webrick进行开发也有什么好处吗? 我一直使用Webrick,因为它带有rails,我认为应该有一个默认的原因。 顺便说一句,我正在使用Heroku。