
多くのトラフィックを受信し、低レイテンシSLAを維持する必要があるGolangアプリケーションがあります。最近、Dockerコンテナでアプリケーションを実行すると、どのようにアプリケーションのパフォーマンスが低下するかを調査していました。そこでホスト(EC2)で直接実行して比較してみました。ホストがエラーを非常に迅速に表示する問題に直面していますToo Many Open Files
。
いくつかの事実:
- コンテナはulimitなしで実行されます
ulimit
(ホストulimitを使用)。 - これを行い
lsof
、すべての行を合計すると、制限(1048576)に達しません。