???
????????? REBOL Desktop,是通過Web server將REBOL程序傳回到client端,在client端執(zhí)行REBOL程序。有些時候,我們會希望某些REBOL程序可以在server上執(zhí)行(例如處理數(shù)據(jù))【注】,某些程序可以在client端執(zhí)行(例如畫出圖表)。REBOL/IOS正是這樣的架構(gòu)。
【注】利用CGI或Fast-CGI,也可以讓REBOL程序在Server上執(zhí)行。
????????? REBOL/IOS是架構(gòu)在REBOL技術(shù)上的一個分布式系統(tǒng)(distributed system),IOS是Internet Operating System的縮寫。IOS是商業(yè)軟件,必須向REBOL Technologies公司購買(可以申請試用),請參考網(wǎng)址:http://www.rebol.com/express-form.html。
REBOL/IOS的架構(gòu)如圖1所示。
????? 在Client計算機(jī)上安裝REBOL/Link,Web server上安裝REBOL CGI Proxy,商業(yè)邏輯(business logic)的計算機(jī)上安裝REBOL/Express。這剛好很接近目前最流行的四層式(4-tier)架構(gòu)【注】:
l???????? 第一層:REBOL/Link(Client端程序在此執(zhí)行)
l???????? 第二層:Web Server(+ REBOL CGI Proxy)
l???????? 第三層:REBOL/Express Server(Server端程序在此執(zhí)行)
l???????? 第四層:數(shù)據(jù)庫

圖1? REBOL/IOS的四層式架構(gòu)
【注】唯一的差別在于,一般我們提到四層的架構(gòu),指的都是第一層使用網(wǎng)頁瀏覽器,而REBOL/IOS則是使用自己的軟件:REBOL/Link。
????? 除了圖1的四層式(4-tier)架構(gòu)之外,也可以不經(jīng)過Web Server,改用Client-Server的兩層式架構(gòu)【注】,如圖2所示。
【注】其實,我刻意把圖2中的數(shù)據(jù)庫拿掉,免得被誤認(rèn)為是三層的架構(gòu)。通常三層的架構(gòu)指的是:第一層瀏覽器,第二層Web,第三層數(shù)據(jù)庫。

圖2? REBOL/IOS的兩層式架構(gòu)
REBOL/Link除了和Server連接之外,也可以和其它REBOL/Link連接,成為Peer-To-Peer(點對點)的架構(gòu),如圖3所示。

圖3? REBOL/IOS的Peer-To-Peer架構(gòu)
????? 在安裝REBOL/Link的時候,會同時安裝IOS Desktop,這樣的感覺有點類似在安裝REBOL/View時,同時安裝REBOL Desktop。事實上,REBOL/Link的功能和REBOL/View相差無幾(但是REBOL/Link比起REBOL/View的功能更多),而且REBOL Desktop和IOS Desktop也是很神似(但是IOS Desktop比起REBOL Desktop更美觀)。
????? 想在REBOL腳本中判斷你的REBOL解釋器是否為REBOL/Link,可以利用link?函數(shù):
>> link?
== false
?
發(fā)表日期: Mar. 14, 2004