You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
{{toc_here}} はじめに Unicornは、Unix系システムで動作するRackアプリケーション用サーバ。接続時間が短いことを前提とした設計となっている。 - http://unicorn.bogomips.org/ preforkモデル Unicornはpreforkモデルを採用している。 Reverse Proxy └TCP Socket[0.0.0.0:8080] > Unicorn(Master) ├(fork)─Worker[0] < TCP Socket[0.0.0.0:8080] ├(fork)─Worker[1] < TCP Socket[0.0.0.0:8080] ┆ └(fork)─Worker[N-1] < TCP Socket[0.0.0.0:8080] マスタプロセスからforkした複数のワーカープロセスがあり、クライアントからのリクエストを
Strongly consider https://github.com/tmm1/gctools if using Ruby 2.1+ It is built on new APIs in Ruby 2.1, so it is more intelligent than this historical implementation. Ruby2.1+の場合は https://github.com/tmm1/gctools を使ってね、とのこと。 作者の記事: http://tmm1.net/ruby21-oobgc/ 日本語訳: http://www.sawanoboly.net/contribution/2014/3/13/ruby-21-out-of-band-gc READMEによるとruby2.1で提供されているapiとイベントを使ってGCの挙動を変更するらしい。したがってuni
Railsのsession_storeやcache_storeとして、memcachedを使うことはよくあると思います。 今回は、memcachedのRuby用クライアントgem, memcache-clientやdalliにて、Passengerやunicornのfork後の初期化をきちんと書かないと、悲惨なことになるというお話です。 ※他のgemやmemcached以外でも当てはまります。 必要な初期化処理 以下の処理を、config/environments/production.rbや、config/initializers/session_store.rbなど、どこでも良いので初期化コードに書いておく必要があります。 dalliを利用している場合 https://github.com/mdesjardins/dalli/tree/ # passengerの場合 if define
構築を試みたときに調べたことなどなど なぜunicorn + nginx? unicornは汎用のRackアプリケーションサーバ。Railsからもsinatraからも使える。 unicornだけでも、任意のポートをlistenすればwebサーバーとして使えるが、 以下のようなメリットがあるため、本番ではnginxをリバースプロキシとして 前に立ててからリクエストをunicornに流すのが良い 画像やcssなどの静的ファイルはnginxで高速に返せる リクエストをバッファリングして受信完了してからunicornにリクエストを 投げるため、遅い回線(3Gなど)で接続が来た時にunicornの ワーカプロセスの待ち時間を削減できる 動作原理はgithubの運用例が記載された以下のドキュメントが詳しい https://github.com/blog/517-unicorn まずは、unicornだ
はじめに Amazon AWS 環境下で Rails 3 のアプリを Nginx/Unicorn で動くように Capistrano 3 でデプロイする手順をまとめました。 以下を前提に話を進めます デプロイ対象のアプリ/DBインスタンスはすでにつくられているとします デプロイ対象のアプリインスタンスのドメインは production.example.com とします アプリインスタンスは ephemeral disk がマウントされているとします プロジェクト名は myproject とします。ご自身のプロジェクト名に読み替えてください アプリインスタンスに SSHログインするための秘密鍵は ~/.ssh/myproject.pem に配置してあるとします RVM を使ってます。rubyenv での設定はこちらの記事が参考になるかと思います デプロイ先ディレクトリの準備 アプリを /va
AI & MLLearn about artificial intelligence and machine learning across the GitHub ecosystem and the wider industry. Generative AILearn how to build with generative AI. GitHub CopilotChange how you work with GitHub Copilot. LLMsEverything developers need to know about LLMs. Machine learningMachine learning tips, tricks, and best practices. How AI code generation worksExplore the capabilities and be
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く