淺談SOA面向服務化編程架構(dubbo)

 

     dubbo 是阿里系的技術。並不是淘寶系的技術啦,淘寶系的分佈式服務治理框架式HSF啦
,只聞其聲,不能見其物。而dubbo是阿里開源的一個SOA服務治理解決方案,dubbo自己
集成了監控中心,註冊中心,負載集羣...等等。代碼和總體的框架仍是很優雅滴呀!
     github地址 https://github.com/alibaba/dubbo
     文檔地址:http://alibaba.github.io/dubbo-doc-static/Developer+Guide-zh.htm  
     目前發佈的版本是2.5.3,gihub上的最新代碼到2.5.4快照版本。很遺憾的是到dubbo的
維護團隊沒有繼續維護下去呀!不過dubbo目前的功能已經算是灰常的完善了。能夠說是一
整套的SOA治理方案了,徹底可以用於生產環境之中啦。更多的詳細使用,文檔中寫的灰常
的詳細呀,過一遍文檔就基本上搞明白啦!扯淡完了,進入正題。

     首先是最圖最底部的爲dubbo服務的集羣(服務者),即對外界暴露服務,dubbo自己就
是支持集羣模式,並且支持多種通訊協議(dubbo,rmi,http...)。主要部署核心的業務代碼。

 右邊的註冊中心,dubbo提供了也是提供了多種註冊中心, zookeeper註冊中心是其中一
種一樣無單點故障問題,dubbo服務依賴於註冊中心,在dubbo服務啓動時,迴向註冊中心
去進行一個服務的註冊(發佈服務)。對服務進行管理。

    接下來看tomcat集羣,主流的tomcat集羣搭配(nginx+tomcat+redis/memcache)都是灰常
的簡單的,百度google一下就能搞定。書寫的全部控制器都放到其中,控制器中依賴的服
務實現是來以後端dubbo集羣的,而dubbo服務是註冊到zookeeper上的,只須要連上註冊
中心就獲取到了咱們所須要的服務,而且進行調用。主要是對控制器層作一個集羣,提升
可用性和性能。

    tomcat左下角是一個NOSQL集羣,主要是處理一個session的共享/分佈式緩存。
    最上層是nginx的集羣主要是把靜態頁面全都放到nginx中便可,注意,若是使用restful風
格,而且使用JS MVC框架的話!徹底不須要把頁面部署到tomcat中,讓tomcat只跑控制代
碼便可。restful架構的話頁面時全靜態,數據全都走json的方式便可。

   上訴擴展瓶頸在nginx上,解決的方式就算使用在nginx以前套LVS吧,或者硬件作一個負
載。
相關文章
相關標籤/搜索