Dubbox當前的主要功能java
支持REST風格遠程調用(HTTP + JSON/XML):基於很是成熟的JBoss RestEasy框架,在dubbo中實現了REST風格(HTTP + JSON/XML)的遠程調用,以顯著簡化企業內部的跨語言交互,同時顯著簡化企業對外的Open API、無線API甚至AJAX服務端等等的開發。事實上,這個REST調用也使得Dubbo能夠對當今特別流行的「微服務」架構提供基礎性支持。 另外,REST調用也達到了比較高的性能,在基準測試下,HTTP + JSON與Dubbo 2.x默認的RPC協議(即TCP + Hessian2二進制序列化)之間只有1.5倍左右的差距,詳見文檔中的基準測試報告。git
支持基於Kryo和FST的Java高效序列化實現:基於當今比較知名的Kryo和FST高性能序列化庫,爲Dubbo默認的RPC協議添加新的序列化實現,並優化調整了其序列化體系,比較顯著的提升了Dubbo RPC的性能,詳見文檔中的基準測試報告。github
支持基於Jackson的JSON序列化:基於業界應用最普遍的Jackson序列化庫,爲Dubbo默認的RPC協議添加新的JSON序列化實現。spring
支持基於嵌入式Tomcat的HTTP remoting體系:基於嵌入式tomcat實現dubbo的HTTP remoting體系(即dubbo-remoting-http),用以逐步取代Dubbo中舊版本的嵌入式Jetty,能夠顯著的提升REST等的遠程調用性能,並將Servlet API的支持從2.5升級到3.1。(注:除了REST,dubbo中的WebServices、Hessian、HTTP Invoker等協議都基於這個HTTP remoting體系)。tomcat
升級Spring:將dubbo中Spring由2.x升級到目前最經常使用的3.x版本,減小版本衝突帶來的麻煩。架構
升級ZooKeeper客戶端:將dubbo中的zookeeper客戶端升級到最新的版本,以修正老版本中包含的bug。負載均衡
支持徹底基於Java代碼的Dubbo配置:基於Spring的Java Config,實現徹底無XML的純Java代碼方式來配置dubbo框架
調整Demo應用:暫時將dubbo的demo應用調整並改寫以主要演示REST功能、Dubbo協議的新序列化方式、基於Java代碼的Spring配置等等。微服務
修正了dubbo的bug 包括配置、序列化、管理界面等等的bug。性能
注:dubbox和dubbo 2.x是兼容的,沒有改變dubbo的任何已有的功能和配置方式(除了升級了spring之類的版本)
目前最好在JDK 1.7以上運行
能夠的,並且是自動集成的,也就是你在dubbo中開發的全部REST服務都會自動註冊到服務冊中心和監控中心,能夠經過它們作管理。
可是,只有當REST的消費端也是基於dubbo的時候,註冊中心中的許多服務治理操做才能徹底起做用。而若是消費端是非dubbo的,天然不受註冊中心管理,因此其中不少操做是不會對消費端起做用的。
若是dubbo REST的消費端也是dubbo的,則Dubbo REST和其餘dubbo遠程調用協議基本徹底同樣,由dubbo框架透明的在消費端作load balance、failover等等。
若是dubbo REST的消費端是非dubbo的,甚至是非java的,則最好配置服務提供端的軟負載均衡機制,目前可考慮用LVS、HAProxy、 Nginx等等對HTTP請求作負載均衡。
附一個博主搭建地址: