亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

ESFramework介紹之(6)―― 基于C/S的4層架構(gòu)

系統(tǒng) 3155 0
ESFramework 4 層結(jié)構(gòu)的 4 層分別是:客戶端( Client )、應(yīng)用服務(wù)器( AS )、功能服務(wù)器( FS )、數(shù)據(jù)庫服務(wù)器。它們之間的聯(lián)系圖示意如下:
ESFramework介紹之(6)―― 基于C/S的4層架構(gòu)概述

FS FunctionServer ),功能服務(wù)器,處理并且僅處理所有的功能性請求,不參與用戶管理、狀態(tài)保持等,提供最純粹的功能服務(wù)。
AS ApplicationServer ),應(yīng)用服務(wù)器,轉(zhuǎn)發(fā)所有的功能請求給 FS ,并處理所有的非功能請求,并管理終端用戶、進(jìn)行狀態(tài)保持、日志記錄等。
上圖中的功能服務(wù)器 FS 的個(gè)數(shù)可能是 0 N N>0 )個(gè)。在某種意義上可以認(rèn)為,每個(gè)功能服務(wù)器 FS 是可以互換的。

將服務(wù)器拆分為功能服務(wù)器和應(yīng)用服務(wù)器有兩個(gè)顯而易見的好處:
(1) 功能服務(wù)器 FS 的完全可復(fù)用。由于功能服務(wù)器采用“框架+插件”的結(jié)構(gòu),所以整個(gè)功能服務(wù)器是完全可復(fù)用的,從一個(gè)具體應(yīng)用轉(zhuǎn)換到另一個(gè)具體應(yīng)用,只需要替換功能插件即可, FS 不需重新編譯。
(2) 由于 FS 僅提供最純粹的功能服務(wù),不需要進(jìn)行用戶管理、狀態(tài)保持,這種功能服務(wù)器在運(yùn)行時(shí)的無狀態(tài)性,使得功能服務(wù)器很容易實(shí)現(xiàn)負(fù)載均衡集群(后文中會講到,這種動態(tài)負(fù)載均衡是如何實(shí)現(xiàn)的)。

如果 ESFramework 僅僅做到這一步,就沒有必要拿出來和大家分享了, ESFramework 不僅對這種 4 層架構(gòu)給予了充分完整的支持, ESFramework 更進(jìn)了一步,它可以支持“類似地域分布式”的體系結(jié)構(gòu)。讀者可能已經(jīng)了解到,上面的 4 層架構(gòu)已經(jīng)是一種分布式架構(gòu)了,那么這里說的“類似地域分布式”又是什么意思?

可以這么說, 4 層架構(gòu)是一種“縱向”的架構(gòu),“類似地域分布式”則側(cè)重于“橫向”,在“類似地域分布式”體系結(jié)構(gòu)中,每一個(gè)具體的“ 4 層架構(gòu)的實(shí)現(xiàn)”只是其中的一個(gè)組成元素。我舉個(gè)例子,現(xiàn)在我們的一個(gè)應(yīng)用需要為全國范圍內(nèi)的所有大城市的手機(jī)用戶提供某種基于 C/S 的手機(jī)增值服務(wù)。我們的經(jīng)驗(yàn)是,為每個(gè)城市配置一個(gè)應(yīng)用服務(wù)器 AS ,由于大量的計(jì)算在該 AS 對應(yīng)的 FS 上,所以可能需要多個(gè) FS 為這個(gè) AS 服務(wù)。而每個(gè)城市的 AS 之間可能需要相互通信(比如處理漫游用戶),這就需要將 AS 也管理起來,管理 AS 的服務(wù)器是 IRAS (跨區(qū)域服務(wù)器)。如此一來,我可以畫出下圖作為例子:
ESFramework介紹之(6)―― 基于C/S的4層架構(gòu)概述
圖中的 FunAddin 功能插件 ,這再前文已介紹過了。整個(gè)體系中,終端請求的服務(wù)主要分為兩大類,一是向應(yīng)用服務(wù)器 AS 請求功能服務(wù),另一類是終端與終端之間的非功能通信。所有的功能服務(wù)由功能插件( FunAddin )進(jìn)行處理,所有的非功能通信由應(yīng)用服務(wù)器處理或中轉(zhuǎn)。如果,終端請求的功能服務(wù)位于外部系統(tǒng),則功能插件會自動定位外部系統(tǒng)的地址,然后通過 WebService 等方式向外部系統(tǒng)提交請求。

好了,讀者已經(jīng)了解了
ESFramework 中的 4 層結(jié)構(gòu)和“類似地域分布式”結(jié)構(gòu)是怎么回事了,下面我簡單概述一下 ESFramework 4 層結(jié)構(gòu)和“類似地域分布式”結(jié)構(gòu)提供了哪些強(qiáng)有力的特性支持:

1. 基于構(gòu)件
除了所有的功能插件是構(gòu)件外,整個(gè) ESF 平臺也是由構(gòu)件組裝而成。其好處是:
(1) 快速搭建系統(tǒng)
(2) 促進(jìn)構(gòu)件復(fù)用,如 AS/IRAS/FS/IRFS 可以使用同一個(gè)通信組件來完成通信層工作。
(3) 實(shí)現(xiàn)功能插件的“熱插拔”,可以在運(yùn)行時(shí)動態(tài)的添加 / 移除功能服務(wù)

2. 高度可擴(kuò)展
由于 ESF 服務(wù)平臺體系需要隨時(shí)隨地的應(yīng)付各種突如其來的變化,其一定要具備高度的可擴(kuò)展性:
(1) 功能插件的“熱插拔”
(2) 外部服務(wù)的動態(tài)接入(通常是通過 WebService
(3) 應(yīng)用服務(wù)器 AS 的動態(tài)添加 / 移除,比如,新開通針對大連城市的服務(wù)。
(4) 功能服務(wù)器 FS 的動態(tài)添加 / 移除,實(shí)現(xiàn)功能服務(wù)器的動態(tài)負(fù)載均衡集群。

3. 高度可伸縮
隨著我們提供的服務(wù)日漸深入人心,我們的用戶的數(shù)量會急劇增加,所以 ESF 服務(wù)平臺體系必須具備高度可伸縮性來提高系統(tǒng)的最大負(fù)載和吞吐量。
(1) 由于功能服務(wù)器需要進(jìn)行大量的功能運(yùn)算,所以平臺的瓶頸通常位于功能服務(wù)器,這可以通過功能服務(wù)器的動態(tài)集群來解決。集群中的各個(gè)功能服務(wù)器之間的負(fù)載均衡由對應(yīng)的應(yīng)用服務(wù)器 AS 來調(diào)度。
(2) 當(dāng)單個(gè)區(qū)域的常在線用戶數(shù)量突破 5000 10000 時(shí),我們需要添加 AS 進(jìn)行區(qū)域級的負(fù)載均衡,這可以通過具有端口映射功能分硬件來解決。

4. 高度可復(fù)用
ESF 服務(wù)平臺體系并非只是適用于我們的 LBS 服務(wù),其實(shí), ESF 服務(wù)平臺體系是一個(gè)高度可復(fù)用的體系,也就是說 ESF 服務(wù)平臺可以作為任何、任意的服務(wù)的基本平臺,只要其所提供的服務(wù)是終端和服務(wù)器之間通過 Tcp 進(jìn)行基于連接的通信。

5. 分布式
除了外部系統(tǒng)的接入通過分布式服務(wù)進(jìn)行外,各應(yīng)用服務(wù)器之間、功能服務(wù)器與應(yīng)用服務(wù)器之間、應(yīng)用服務(wù)器和跨區(qū)域的應(yīng)用服務(wù)器之間都是采用分布式通信。跨區(qū)域的應(yīng)用服務(wù)器通過類似于 remoting 的方式在各個(gè)應(yīng)用服務(wù)器之間進(jìn)行調(diào)度。

6. 簡單部署、自動升級
由于 ESF 服務(wù)平臺體系服務(wù)的區(qū)域可能非常多,比如各個(gè)大城市可能都需要部署應(yīng)用服務(wù)器和功能服務(wù)器,所以如果通過人工進(jìn)行部署和升級是非常低效的, ESF 服務(wù)平臺提供了自動升級、加載、運(yùn)行的功能。
(1) 服務(wù)平臺安裝后,僅僅需要修改配置文件中的幾個(gè)參數(shù)即可正常運(yùn)行。
(2) 當(dāng)功能插件擁有新版本的時(shí)候,可以在不停止服務(wù)的情況下,自動升級到新版本。
(3) 當(dāng)各服務(wù)器系統(tǒng)( AS/IRAS/FS/IRFS )有新版本時(shí),會在該系統(tǒng)重啟的時(shí)候自動升級到新版本。為了在升級的時(shí)候不終止服務(wù),服務(wù)器系統(tǒng)可以使用逐步升級的方式。

7. 通信保證機(jī)制
當(dāng)遇到網(wǎng)絡(luò)突然斷開或某服務(wù)器重啟的情況,在網(wǎng)絡(luò)恢復(fù)或服務(wù)器重啟完成后,需要一種能自動的立即恢復(fù)通信(比如AS和FS的通信,各AS與IRAS之間的通信)的機(jī)制, ESF 服務(wù)平臺提供了這種保證,其采用的策略主要基于:
(1) 定時(shí)論詢
(2) Tcp 連接池自動重連
(3) 連接動態(tài)反轉(zhuǎn)

8. 漫游支持、跨區(qū)域功能請求支持
ESF 服務(wù)平臺體系中,漫游是指某一區(qū)域的用戶登錄到另外一區(qū)域的應(yīng)用服務(wù)器 AS 上,對于此 AS 來說,該用戶是漫游用戶。如果用戶登錄到某 AS 卻請求其它區(qū)域的功能服務(wù),則是跨區(qū)域的功能請求。 ESF 服務(wù)平臺對這兩種情況都給予了充分的支持。

9. 終端與終端之間的通信支持
有時(shí),終端需要和終端(可能是同區(qū)域的、也可能是其它區(qū)域的)之間進(jìn)行通信,并且這種通信可以基于連接和基于非連接。基于連接的通信像實(shí)時(shí)視頻聊天、實(shí)時(shí)監(jiān)控,基于非連接的像發(fā)送一張圖片給不在線的用戶。所有這些, ESF 服務(wù)平臺都提供了支持。

10 .支持二次開發(fā)
在基于 ESF 服務(wù)平臺高度可復(fù)用和可擴(kuò)展的基礎(chǔ)上, ESF 平臺可以非常容易的支持二次開發(fā),只要遵循相同的接口和通信協(xié)議,就可在 ESF 平臺進(jìn)行二次開發(fā)。

11 .客戶端框架
如果應(yīng)用的客戶端也可以使用 .NET 開發(fā),則 ESFramework 也提供了完善的支持,在 ESFramework 的支持下,開發(fā)客戶端僅僅需要開發(fā)業(yè)務(wù)插件就可以了,而整個(gè)網(wǎng)絡(luò)通信、多線程、升級部署等,都由框架完成了。后面的文章中我會介紹如何在 AgileIM 中開發(fā)自定義的業(yè)務(wù)插件。

上面的所有特性將會在“ 基于 C/S 4 層架構(gòu) ”部分分節(jié)介紹,感謝關(guān)注!

如果你的應(yīng)用不需要這么復(fù)雜的結(jié)構(gòu),比如僅僅一個(gè)簡單的3層架構(gòu),那么ESFramework仍然可以幫助你快速構(gòu)建,ESFramework是個(gè)輕量級的應(yīng)用框架,你不會為那些ESFramework提供了的而你不需要的功能/特性付出任何代價(jià)。
(注意,ESFramework不太適合處理遺留系統(tǒng)(就像你很難使用MFC去處理基于VCL構(gòu)建的UI應(yīng)用一樣),ESFramework雖然與應(yīng)用無關(guān),但是為了能將更多的任務(wù)從應(yīng)用中抽象到框架中來,必須對應(yīng)用做一些假設(shè),幸運(yùn)的是,ESFramework僅僅對應(yīng)用的通信協(xié)議做了最少的假設(shè),這個(gè)假設(shè)包含在 NetMessage 中。如果你不是處理遺留系統(tǒng),而是構(gòu)建一個(gè)全新的C/S應(yīng)用,那么ESFramework可以為你節(jié)省大量的架構(gòu)設(shè)計(jì)時(shí)間、軟件開發(fā)時(shí)間、調(diào)試和維護(hù)時(shí)間。)

(最后做個(gè)廣告,如果你新接手的項(xiàng)目非常適合采用上面介紹的
4 層架構(gòu)或“類似地域分布式”體系結(jié)構(gòu),希望我們有合作的機(jī)會:)通過 agilesoft@163.com 聯(lián)系我)

轉(zhuǎn)到: ESFramework 可復(fù)用的通信框架(序)

ESFramework介紹之(6)―― 基于C/S的4層架構(gòu)概述


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲一级毛片免费观看 | 女人十八毛片免费观 | 神马在线影视我不卡 | 日韩久久久精品首页 | 涩涩在线观看 | 狠狠干图片 | 三级大黄 | 日本不卡中文字幕一区二区 | 性成人动作片在线看 | 国产免费播放一区二区 | 一区在线观看 | 亚洲色图国产精品 | 国产精品久久久香蕉 | 亚洲一区二区三区欧美 | 在线免费国产 | 亚洲网在线观看 | 婷婷激情在线 | 国产成人精视频在线观看免费 | 国产一区二区免费福利片 | 亚洲www视频| 狠狠狠操| 四虎影视在线影院www | 国产极品白嫩美女在线观看看 | 99涩涩| 免费高清成人啪啪网站 | 欧美人交性视频在线香蕉 | 美女被羞羞视频网站在线 | 日韩精品一区二区三区 在线观看 | 色片网站在线观看 | 狠狠色噜噜狠狠狠狠黑人 | 久久精品中文字幕一区 | 日日爽夜夜操 | 精品久草| 天天操 夜夜操 | 亚洲综合一区二区精品久久 | 国产精品视频一区二区三区不卡 | 国产亚洲精品资源一区 | 欧美xxx视频 | 在线综合 亚洲 欧美中文字幕 | 欧美久久久久久久久 | 精品99视频|