2019年2月15日金曜日

データベース接続数(応用)

PaperCut技術サポートには時折「PaperCutに必要なデータベース接続数はいくつですか?」という問い合わせが来ます。

これは単純な質問ですが、正確な回答は簡単ではありません。
PaperCutが使用するデータベース接続数に影響する変数が多数あるためです。

例えば、次に記載するイベントが発生すると、1つ以上のデータベース接続が発生します。

 ・PaperCutアプリケーション・サーバの起動と再起動
 ・セカンダリ・サーバの起動と再起動
 ・プリント・ジョブの実行
 ・複合機からコピーやスキャンを実行
 ・プリント・ジョブのリリースを実行(リリースステーションやエンベディッド・ソフトウェア)
 ・ユーザ・クライアントの起動とアップデート
 ・PaperCut管理者用Web画面もしくはユーザ用Web画面へのログイン
 ・PaperCutのAPIを使用するイントラネットもしくは他の外部システム
 ・レポートの実行
 ・夜間メンテナンス(バックアップやユーザ同期など)
 ・クォータ割り当て
 ・その他

上記の通り、PaperCutはデータベースから情報の読み取り,更新,保存を行うエリアが数多くあります。
PaperCut社は可能な限り効率的であることを確認する努力をしてきました。
コネクション・プーリングとコネクション・リユース(再利用)のアルゴリズムを利用しています。
例えば、あるユーザがドキュメントを印刷したためユーザの残高を更新するために1つの接続が使用されていると仮定します。
数ミリ秒後に他のユーザのメール・アドレスをチェックする必要がある場合、
一度接続を閉じてから再度接続するのではなく、接続を再利用します。
接続がアイドル状態になると(設定変可能)、接続は閉じられます。
これはデータベース接続の総数が、プリント・ジョブ,ユーザ・セッション,デバイス数と直接相関することができないことを意味します。
これらのすべてのプロセスは同時に行われる訳ではないからです。

通常の運用条件下では、データベース接続数は少なくなります。
接続数は需要を満たすために増加し、その後減少します。
これは、ビジーの瞬間に接続数の急上昇を招きます。
例えば、遠隔地のオフィスのインターネット接続が再開したり、大量のプリント・ジョブがリリースされた場合などです。

注記: PaperCutの外部DBMSに対して確立できる接続数を制限するようなデータベースが設定されている場合、
   予期しない動作が発生する可能性があります。
   大量の印刷が実行されているサイトやユーザが多数いるサイトでは、この同時接続数を400にする必要があります。



-------------------------
https://www.papercut.com/kb/Main/DatabaseConnections

0 件のコメント :

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。