2023-05-12

anond:20230512180741

Dockerは、開発から運用まで一貫した環境提供することで、開発者作業負担を減らすという大きな利点があります。また、仮想マシン比較してリソース使用効率が高いため、エコとも言えます

ただし、確かにDockerには一定オーバーヘッド存在します。これは、DockerゲストOSを持たずに、ホストOSカーネルを共有して動作するためです。それにより、アプリケーションの実行に必要リソースが追加で必要になり、パフォーマンスに影響を及ぼす場合があります

また、Dockerを利用する際の設定や構成によってもパフォーマンスは大きく変わります。例えば、Dockerネットワーキングストレージの設定、またホストOSとの互換性など、考慮すべき要素は多数存在します。

あなた現在の状況について具体的に述べると、FESSクローリングが重いという問題は、Dockerオーバーヘッドけが原因ではない可能性がありますDockerコンテナ内のFESSJVMの設定、ホストマシンリソース割り当て、ネットワークストレージの設定など、様々な要因が絡んでいるかもしれません。

また、Dockerログ出力が多いと感じる場合も、実際のところはFESSDockerの設定によるものかもしれません。ログの出力レベルを調整することで、必要情報だけを出力するように設定することも可能です。

しかし、これらの設定を調整するためには一定知識経験必要で、それがなければ素直にネイティブ環境での構築が良い選択かもしれません。結局のところ、どの方法が最善かは具体的な要件や状況によります

このような状況に直面した際には、パフォーマンス問題を具体的に分析し、適切な解決策を見つけるためにパフォーマンスモニタリングロギングツール使用することをお勧めします。それにより、問題の原因を特定し、適切な対策を講じることが可能になります

たとえば、Dockerが高いCPU使用率を示している場合、それはコンテナ内のアプリケーション(この場合FESS)が高いリソースを消費している可能性があります。その場合アプリケーションの設定や実行パラメータを調整することで改善できるかもしれません。

また、Dockerコンテナリソース制限を調整することも検討できますDockerは、コンテナに割り当てるCPUメモリの量を制限する機能提供しています。これにより、他のプロセスに影響を与えることなく、特定コンテナリソース使用量を管理することが可能です。

さらに、Dockerボリュームネットワーク設定が適切であるかを確認することも重要です。不適切な設定はパフォーマンスに悪影響を及ぼす可能性があります。たとえば、ファイルI/Oパフォーマンスは、ホストOSコンテナ間でデータを共有する方法に大きく依存します。そのため、適切なボリュームの設定や、パフォーマンスを向上させるための最適化オプション適用されていることを確認することが重要です。

最後に、Docker自体アップデートパフォーマンス改善寄与する場合があります。最新のDockerエンジンには、パフォーマンス改善するための修正改善が含まれていることがあります

これらの要素を考慮に入れ、Dockerパフォーマンス最適化する方法を探すことができます。ただし、これらすべてを試してもパフォーマンス改善しない場合や、必要知識時間が不足している場合は、Docker使用しないネイティブ環境での構築が最善の選択であるかもしれません。

記事への反応 -
  • そりゃそうなんだろうけども。そんなに? 追記:FESSをOSに直接インストールするのに参考にしたというよりコピペさせてもらったのは以下の記事 https://qiita.com/hyoshiaki/items/598127fe30b94bd82b6e...

    • Dockerは、開発から運用まで一貫した環境を提供することで、開発者の作業負担を減らすという大きな利点があります。また、仮想マシンと比較してリソースの使用効率が高いため、エコ...

    • 経験上、Docker でファイル入出力が多いとだいたい死ぬ。 一度読み込んだらあとは全部メモリ上で処理できるとか、稀ににしかファイル読まないとか、 そいうときしか役に立たないどっ...

      • ありがとうございます。実際使ったことのある方の情報をいただけるのはありがたいです。 なるほど、ディスクIOがボトルネックになりやすい、ということですね。 ログによると金曜...

      • それWindowsでの話じゃなくて?しかも古いWSLとか

        • そうなんですか? WSLは1の頃にローカルで使ってみて、Hyper-VとVirtualBOXが競合して以来使ってないです。 風のうわさで改善されたとかやっぱダメだったとか聞きますが、どうなんですかね...

          • こういう時代に取り残されてるくせに過去の知識でギャーギャー喚くやつやべーよな WSL2が出た時点で一度試せよw

    • Linux上のDockerならそんなことは起きないと思うんだが どうせWindows上で構築したんだろ

      • (こっちもHyper-V上のRockyLinux9って言ったら鬼の首取ったようにほーらWindowsじゃないかって突っ込まれるんだろうなぁ…)

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん