プリザンターが遅い場合の原因と対処方法
当社が使用しているサーバは仮想サーバのためリソース等が不足していれば、すぐに追加できることから、まずはリソースの確認から開始しました。
まずメモリの使用状況をを確認したところ、メモリ使用量は少なく問題は無しと判断。次にCPU、使用している仮想サーバは1CPU,2コアで動作しており、なぜかSQL ServerのCPU使用率が50パーセントで頭打ち。CPU不足なのか不明なのと、もともと最小限で動作させていたため、4コアに拡張してみましたが、結果は変わらず。
さらに、SQL Serverの各種設定を確認しましたが、特に影響しているところは見られず。
ここまでで切り分けができなかったため、もう一台仮想サーバを立ててプリザンターを構築し、そこでフォルダやテーブルを作って動かしたところ、ログインもアクセスもパフォーマンス的には何の問題もなし。結局仮想サーバの問題なのでは?と考えましたが、試しに問題のサーバからプリザンターのインスタンスをエクスポートして、新しい立てたサーバにインポートしたところ(このやり方はここを参照)、なんとパフォーマンス劣化が再現しました!!
ここでいろいろと試せば、レスポンス悪化の原因が分かると判断し、まずトップ(ルート)にあるフォルダやテーブルを、トップに新しく作成したフォルダにすべて移動してみました。
・・・すると、なんと!一瞬でログインできるように改善。
ただし、トップに新しく作成したフォルダにアクセスすると、これまた遅い。
ここで原因が何となく分かったのですが、当社のプリザンターは、各種権限を複雑にフォルダやテーブルに付けているのが原因なのでは?
その裏付けをするために、権限を整理し、極力権限を委譲する形にしたところ、劇的にパフォーマンスが改善しました。
プリザンターでは、フォルダやテーブルに個別に権限を設定できるのは、とてもよいのですが、パフォーマンスに大きく影響がでるとは思っていませんでした。
プリザンターではサイトIDで連携やリンクを管理しているので、複雑な権限にならないように始めから計画して、運用途中でもパフォーマンスが悪くなっていたら権限や階層を見直すのがよいですね。
同じ様な状況の方がいらっしゃいましたら、まずは権限を見直してみてください。
一つ重要なことがあります。権限を見直して修正しても改善が見られないときは、一度サーバを再起動してみてください。それで改善される場合があります。
プリザンターのレスポンスが遅いケース
こんにちは、CCS田中です。
プリザンターは、パフォーマンス(レスポンス)が良いといわれているのですが、使っていくうちにログインに時間がかかったり、フォルダやテーブルのアクセスが遅くなったと感じたことはありませんか?
基本的にはプリザンターのDBの作りではレスポンスは良いはずなのですが、遅くなることがあります。
当社でも2017年から運用をしていますが、いつの間にかサーバのログインが遅くなり利用者から「遅すぎて使い物にならない!」との声をもらっていました。
実際にログイン時の時間を測ってみると、なんと!遅いときには2分もかかっていました。
さらにフォルダにアクセスすると、表示されるまでに同じくらいの時間がかかっていました。
これでは昔のwebの8秒ルールどころではありませんね。
私もSEの端くれなので、遅い原因についていろいろと調査を開始し解決にいたっています。
調査結果や対処方法については、次に説明します。