Netty独自接続プールChannelPoolの使用は推奨されません

763 ワード

まず、ネット上でNettyが接続プールChannelPoolを持参していることについての記事が少ないのは、Nettyを使用する場合、サービス側として応用されることが多いため、接続プールがほとんど使われていないためだと推測します.しかし、Nettyを使用してHTTPクライアントをカプセル化する場合は、Channelプールを考慮する必要があります.
内蔵ChannelPoolの使用を推奨しない理由は次のとおりです.
  • は、server側が接続を閉じた場合、プール内のchannelが無効になります.健康診断が不足しているため、この無効なchannelは呼び出し元によって取得されます.
  • (evict)指定チャネルを削除できません.このプールはチャネルを追加するだけで削除できません.つまり、どのチャンネルが閉鎖されたかを明確に知っていれば、このチャンネルを池から取り除くことはできません.まるで
  • です.
  • 接続数を動的に制御できません.私たちはデータベース接続プールを使用するときに、maxActivemaxIdleのようなパラメータを構成します.これは、プールの最大許容接続数、最大アイドル接続などを意味します.暇なときに積極的に接続を解放してリソースを節約し、忙しいときに接続を多く作成することを望んでいます.これは非常に基本的な機能でしょう.申し訳ありませんが、サポートされていません.

  • だから、このプールはおもちゃのコードを書いてブログを送るだけなら大丈夫です.生産環境はともかく、apacheのオブジェクトプールを使うか、自分で実現しましょう.