阿里為什麼不用 ZooKeeper 做服務發現?

2021-08-20 22:11:33 字數 440 閱讀 4385

本質還是cp和ap的選擇。zookeeper選擇了cp,這意味著選主期間存在服務不可用的情況。但是,對於服務註冊中心,可以容忍短暫的不一致,但是不能接受服務不可用的情況,因此選擇ap更加合理。

客戶端

zk服務端集群的位址列表是寫死在客戶端的,不支援動態變更;

不支援同機房優先策略;

沒有針對服務端集群完全不可用時的容災手段;

服務端

寫能力不足,不支援水平擴充套件(隨著服務規模的增大,服務上下線、發布和健康監測等對需要良好的寫效能);

健康監測手段單一,只有tcp的活性監測,服務健康與否的邏輯更應該開放給服務提供方定義;

阿里內部自己實現了configserver,外部開源的服務發現框架主要是eureka。

參考:阿里巴巴為什麼不用 zookeeper 做服務發現?

為什麼不用Dojo?

不用dojo,原因可能有很多,但是主要的就是 2.dojo的外觀精細度遠不如extjs,extjs的操作更windows一些。3.dijit的widget不如extjs的功能多,使用dojo很多時候你不得不自己編制乙個擴充套件widget。可能更多的原因,還是比較喜歡 拿來就用 不喜歡自己程式設計。...

為什麼不用C 寫遊戲

當今世界上絕大多數遊戲都是c 寫的,為什麼要說不呢?要做什麼?寫遊戲。寫遊戲首先要考慮些什麼?做什麼樣的遊戲,圖形 音效 遊戲邏輯如何實現。用c 要先考慮什麼?定義跨平台資料型別抽象,實現常用集合類,設計巨集實現rtti,寫乙個支援unicode並可以和其他多種字串型別互相轉換的字串類,自定義記憶體...

String為什麼不用例項化

string password ok string password new string ok 這兩條語句的效果是一樣的 不同的是,第一條現在記憶體中建立了 ok 這個string,然後將引用賦給password,如果這個時候還有一條語句string pwd ok 那麼jvm將不再建立 ok 而是...