問題タブ [psgi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
42 参照

apache - 既存の Mojolicious アプリへの新しいコードのリリースによる断続的なエラー

既存の Mojolicous アプリに問題があります。いくつかの新しいルート、ビュー、コントローラー、およびモデルを追加し、Rose::DB::Object ORM を使用してビューにデータベースの結果を返しています。

本日、Morbo でうまく機能していたコードを使用して製品版を更新しました。しかし、apache2/plack/psgi mod_perl config では、新しいモデルは 5 回に 1 回、場合によっては 10 回に 1 回のクエリしか返しません。

データベースに直接クエリを実行して結果を問題なく取得できるように、多くの変数を排除しました。古いモデルとそのクエリは常に機能します。

この新しい機能だけが断続的であるようです。リクエストを 1 つのサーバーのみに絞り込み、Apache を再起動しました。しかし、なぜ問題が解決しないのか理解できません。

これはある種の mod_perl の不安定な動作だと思いますが、Apache を再起動しても修正されない理由がわかりません。

どんな助けやアイデアも素晴らしいでしょう。

0 投票する
2 に答える
296 参照

perl - 多くの同時接続を使用して PSGI アプリケーションをサーバー化する方法

多くの同時接続で PSGI アプリケーションをどのように処理できますか? イベントベースの事前分岐 Web サーバーを試してみましたが、同時接続数はワーカー プロセスの数によって制限されているようです。たとえば、Node.js は数千の並列接続に拡張できると聞きましたが、Perl で同様のことを実現できますか?

これは、接続を無限に開いたままにするサンプル アプリケーションです。重要なのは、接続を無限にすることではなく、接続制限に達するまで接続を開いたままにしておくことです。

0 投票する
0 に答える
212 参照

apache - Apache/Starman - 単一の仮想ホストで多数の異なる Web アプリケーションを実装する方法

フレームワークに基づいて、複雑な強化されたインターフェイスと対応する perl バックエンドを備えたCGIWeb アプリケーションが多数あります。apache2jQueryUICGI::Application

ユーザーの場合、次のようになります。

  1. //localsrv.lan/some_report_xls
  2. //localsrv.lan/some_insert_db
  3. //localsrv.lan/some_perl_plsql_stuff など...

psgi今、私はそれらのアプリを簡単に変えたいと思っています。Apache->ProxyPass/Starman

  • すべてのアプリに多くのポートを使用して、すべてのアプリに対して Starman を実行する必要がありますか?
  • どうにかしてマッピングURLを使用する必要がPlack::App::URLMapありますか?
  • 何百ものアプリの中から 1 つのアプリを作成して、Starman で実行する必要がありますか?
  • それを行う別の方法はありますか?
0 投票する
2 に答える
395 参照

perl - http://0:port について間違っているのは誰ですか?

Plack スイートは一般的にhttp://0:port. たとえば、次の

版画

ただし、LWP::UserAgent(またはより深く呼び出されたモジュール)はそれを受け入れませんでした。

プリント:

しかし

版画

問題は、誰が間違っているかです。

  • 有効か、たとえば LWPがhttp://0:port「間違っている」か
  • それとも有効ではなく、PSGI はそれを「ランダムに有効な」ショートカットとしてのみ使用しますか?
0 投票する
3 に答える
559 参照

perl - Plack でバッファリングされていない応答を送信する

大規模な CSV 応答を作成する Perl モジュールのセクションで作業しています。サーバーは Plack で実行されますが、これについては私は専門家ではありません。

現在、私は次のようなものを使用して応答を送信しています:

ただし、そのquery_data関数は高速ではなく、多くのレコードを取得します。そこでは、各行を連結し$body、すべての行が処理された後、応答全体を送信しています。

私がこれを好まない理由は 2 つあります。1 つ目は、$bodyが破棄されるまで大量の RAM を消費することです。第 2 に、そのメソッドが動作を終了し、実際に$res->body($body).

必要なものを見つけずに、ドキュメントでこれに対する答えを見つけようとしました。

また$res->body($row_object->to_csv)、コールバック セクションを呼び出してみましたが、最後に行った呼び出しのみを送信し$res->body、以前の呼び出しをすべて上書きしてしまうようです。

各行のコンテンツをフラッシュするPlack応答を送信する方法はありますか?そのため、ユーザーはデータが収集されるとリアルタイムでコンテンツを受信し始め、最初にすべてのデータを蓄積する必要はありませんか?

コメントをお寄せいただきありがとうございます。

0 投票する
1 に答える
388 参照

nginx - uWSGI で Perl Dancer 環境を設定する方法 (nginx で使用)

本番環境で Perl Dancer アプリを起動しようとしています。

次のように uWSGI を呼び出しています。

アプリが読み込まれて実行される間、環境がまったく設定されないため (デフォルトの開発環境でさえも)、エラーが発生します。

これらは機能していないようです:

参考までに、これはplackupとstarmanを使用して機能します:

http://uwsgi-docs.readthedocs.org/en/latest/Options.htmlを読みまし たが、Python のような Dancer 固有の環境設定はないようです。

考え?事前にt​​hx!