ruby - 带有 Sinatra、Unicorn 和 Mongodb 的 Ruby 应用程序
问题描述
我的任务是构建一个简单的应用程序。我对 Sinatra、Unicorn 或 Mongo 没有任何经验。我正在努力弄清楚从哪里开始。我有使用 Rails 的经验,我一直在尝试用 Rails 术语来思考问题,但这并没有帮助。我读过的所有内容似乎都表明应该将 Unicorn 与 NGINX 结合使用。boot.rb 的目的是什么?这就是 config/boot.rb 现在的样子:
require 'sinatra'
require 'mongo'
require 'mongoid'
require './app'
这是配置/unicorn.rb:
worker_processes Integer(ENV["WEB_CONCURRENCY"] ||3)
timeout 15
preload_app true
before_fork do |server, worker|
Signal.trap 'TERM' do
puts 'Unicorn master intercepting TERM and sending myself QUIT instead'
Process.kill 'QUIT', Process.pid
end
end
after_fork do |server, worker|
Singal.trap 'TERM' do
puts 'Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT'
end
end
配置/mongoid.yml
development:
clients:
default:
database: db-name
hosts:
- localhost:27017
这是我为 procfile 创建的:
网络:捆绑执行独角兽 -p $PORT -c ./config/unicorn.rb
有什么想法吗?
解决方案
推荐阅读
- java - 是什么让三端队列的 Java 链表实现变慢了?
- ruby - 处理除 Ruby 中的一种错误之外的所有类型的错误?
- rest - Spring数据休息:页面和规范休息API不返回任何数据
- javascript - var_dump 发布后不显示任何内容
- yaml - gatsby-transformer-remark 的自定义 YAML 类型
- xamarin - 从 Xamarin 表单页面替换内容页面
- selenium - 如何通过 RemoteWebDriver 使用 Selenium TouchActions
- python - Aiohttp 干净的架构。交易等
- python - 如果字符串没有空格,则从字符串中获取特定单词
- swift - 如何为同一个标签栏项目显示不同的视图页面?