飼育係を放棄するのはなぜアリダボレジストリが、ナコスで

まず第一に、なぜ飼育係のサービスレジストリこれには適していませんか?

 

CAPの観点から

思考は、サービスレジストリシステムは、CPまたはAPシステムであり、CAPからの視点を考慮し、あるのでしょうか?

 

まず、サービスコール間のサービスのためのサービスレジストリ間違いなくサービスセンターとして登録されていない場合、サービスコールの間の問題に起因する問題があります。

また、ノード1、ノード2、ノード3、クラスタノードがある場合。利用可能なサービスのリストがIP1保存、IP2、IP3は、この時間は、ノード1にのみ保存されたIP1、IP2として、矛盾している場合を想像し、今回のサービスノードのノード1を読んで、そして意味は何ですか?

サービスを呼び出すノード1は、最大で、トラフィックヒットIP3、その後、node1およびその他のIP3後同期バックするだけでなく、一貫性のあるロード・バランシングは存在しません、このサービスは、実際には何も大きな影響です。

したがって、サービスセンターの導入は、登録APシステムであるべきです。

 

 

飼育係は、CPシステム、強い整合性でした

 

シーン1、マスターがハングアップしたときに、この時間、サービスが利用可能なサービスを読み取る必要がある時に再選へのZooKeeperクラスタ必要は使用できません。サービスの可用性に影響を与えます

もちろん、あなたがローカルで利用可能なサービスのリストがキャッシュされたと言うことができます。しかし、この方法以下でも対処することは不可能です。

シナリオ2は、パーティションが利用可能です。ただ、明らかに不合理である、そこに3つの部屋があり、一つの部屋3室1,2ネットワークが切断された場合、登録センタ3部屋はまだ新しいマシンを登録することはできません、と思います

ビューのヘルスチェックの観点から

 

飼育係は、判定サービスのハートビートTCPを通じて利用可能です

しかし、TCPの活動は、サービスが利用可能であることを意味するものではありませんが、それはアクティブなTCPサービスがそれに利用できる示し、答えは例えば、何も明らかに:接続プールが満杯になった、DB等、ハングアップしません

 

 

理想的なレジストリは何それ、思考未満の下で

 

1、少なくとも、自動サービス登録、発見。登録までの新しいサービスを持っている場合に最良しかし、また、最後の呼び出しにプッシュ

2は、(サービスがエレガントな組立ラインをオフにできるように信号を送る)マニュアルなくすことができ、便利、最大登録済みのコンピュータに管理することができ、マシンをリストア

3、ヘルスチェックサービスは、実際にサービスが提供されて検出することができます

4、でも最高のポイント場合は、通話サービスを登録している他のサブスクリプションサービスがあるかどうかを確認することができます

5、我々はそんなに良くIPの外に加えて、他のいくつかの情報を、取ることができる場合

 

ZooKeeperの事実は、さらに私は、ボトルネックを考えていたよりも、最近の出会いで語りました

1. ZooKeeperの書き込みは、特定のノード、書き込み性能のボトルネック、キューパブリッシュするとき、現象が顕在化するの登録、起動アプリケーションは非常に遅くなったときに、拡張可能ではありません

2. ZooKeeperのは、部屋とは異なりユーレカ、ゾーンの概念を越えルーティングの問題があるこの部屋で、この部屋には、別の部屋にルーティングすることができたときに、ルーティング、ローカルルーティングを優先してサポートしていません。

あまりにも多くのノードは、サービス・ノードは、変更がある場合とき、あなたは即座に再生カードを発生します「群れ効果は雷が鳴っ」、および、3 ZooKeeperのマシンに通知する必要がある、と簡単な繰り返し通知へ

リリース8元の記事 ウォン称賛10 ビュー120 000 +

おすすめ

転載: blog.csdn.net/hu2010shuai/article/details/104064366