3

だから私はこれについてもっと調べようとしてきました。
現在、sinatra + mongodb + unicorn を使用して軽量 API を構築しています。
ユニコーンで実行されているミドルウェア アプリ内のインスタンス変数は、単一の要求ごとにしか存続しないため、次のようなものは機能しません。

@connector ||= Mongo::Connector.new 'localhost'

つまり、着信リクエストごとに、新しい Mongo::Connection インスタンスを作成します。このインスタンスは、かなりの数のリクエストの後、マシン上で mongodb プロセスの軍隊全体を生成します。グローバル変数を宣言することで問題を解決しました

$connector ||= Mongo::Connector.new 'localhost'

しかし、それは行く方法ですか?この表記法を使用しても安全ですか? あなたの考えを教えてください。

4

1 に答える 1