小编Mii*_*ler的帖子

Heroku上的Puma Cluster配置

我在RoR4 Heroku应用程序上配置Puma(多线程+多核服务器)需要一些帮助.Heroku上的文档并不是最新的.我遵循了这个:配置的并发和数据库连接,没有提到集群的配置,所以我不得不同时使用这两种类型(线程和多核).

我目前的配置:

./Procfile

web: bundle exec puma -p $PORT -C config/puma.rb
Run Code Online (Sandbox Code Playgroud)

./config/puma.rb

environment production
threads 0,16

workers 4
preload_app!

on_worker_boot do
  ActiveRecord::Base.connection_pool.disconnect!

  ActiveSupport.on_load(:active_record) do
    config = Rails.application.config.database_configuration[Rails.env]
    config['reaping_frequency'] = ENV['DB_REAP_FREQ'] || 10 # seconds
    config['pool']              = ENV['DB_POOL'] || 5
    ActiveRecord::Base.establish_connection
  end
end
Run Code Online (Sandbox Code Playgroud)

问题:

a)我是否需要像Unicorn一样的before_fork/after_fork配置,因为群集工作者是分叉的?
b)如何根据我的应用程序调整我的线程数 - 将它放下的原因是什么?/在什么情况下它会有所作为?是不是已经优化了0:16?
c)Heroku数据库允许500个连接.根据线程,工作线程和动态计数,DB_POOL的值是多少? - 并行工作时,每个dyno的每个工作线程的每个线程是否都需要唯一的DB连接?

一般来说:我的配置应该如何看待并发性和性能?

postgresql ruby-on-rails heroku unicorn puma

18
推荐指数
1
解决办法
6483
查看次数

three.js - 重叠层闪烁

当多个物体在同一平面上重叠时,它们开始闪烁.如何告诉渲染器将其中一个对象放在前面?

我尝试使用.renderDepth,但它只能部分工作 - 请参见此处的示例:
http ://liveweave.com/ahTdFQ
这两个框具有相同的大小,并且按预期工作.我可以通过设置更改哪些框可见.renderDepth.但是,如果其中一个盒子稍微小一些(例如40,50,50),则接触层会闪烁,渲染深度不再起作用.

如何解决这个问题?

three.js

3
推荐指数
2
解决办法
5911
查看次数

Node.js无法识别Coffeescript

我目前正在尝试与SailsJS框架一起进入NodeJS.我想在服务器端使用藏汉CoffeeScript的,但将所有文件后config/*.js,以config/*.coffee正确地js2coffee,我在尝试启动应用程序时出现以下错误:

配置/ 400.coffee

SyntaxError: Unexpected token ILLEGAL
Run Code Online (Sandbox Code Playgroud)

指向文件中的第一个字符,这是咖啡评论的标签.因此,似乎该应用程序不会将该文件识别为coffeescript,而是搜索标准js.

我尝试安装包coffee-script并要求它

app.js

require('coffee-script');
require('sails').lift(require('optimist').argv);
Run Code Online (Sandbox Code Playgroud)

但它没有帮助.

如果我删除400.coffee,则错误出现在下一个文件中403.coffee.

我究竟做错了什么?配置文件中是不允许使用coffeescript还是我遗漏了什么?

javascript node.js coffeescript sails.js

1
推荐指数
1
解决办法
787
查看次数