隨筆 - 3  文章 - 0  trackbacks - 0
          <2007年7月>
          24252627282930
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章檔案

          搜索

          •  

          積分與排名

          • 積分 - 1573
          • 排名 - 4239

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          Globus開源網(wǎng)格基礎(chǔ)平臺(tái)簡(jiǎn)介
          http://www.media.edu.cn 2007-10-22 作者:
          網(wǎng)格技術(shù)出現(xiàn)于20世紀(jì)90年代,其核心思想是:“整個(gè)因特網(wǎng)就是一臺(tái)計(jì)算機(jī)!”Globus Tookit工具包來源于Globus項(xiàng)目,Globus項(xiàng)目是國(guó)際上最有影響力的與網(wǎng)格計(jì)算相關(guān)的項(xiàng)目之一,是由來自世界各地關(guān)注網(wǎng)格技術(shù)的研究人員和開發(fā)人員共同努力的成果。

          網(wǎng)格技術(shù)出現(xiàn)于20世紀(jì)90年代,它的目的是想利用高速互聯(lián)網(wǎng)把分布于不同地理位置的計(jì)算機(jī)、數(shù)據(jù)庫(kù)、存儲(chǔ)器和軟件等資源連成整體,就像一臺(tái)超級(jí)計(jì)算機(jī)一樣,為用戶提供一體化信息服務(wù),其核心思想是:“整個(gè)因特網(wǎng)就是一臺(tái)計(jì)算機(jī)!”

          由全球網(wǎng)格論壇(GGF)下屬Globus項(xiàng)目組成員聯(lián)合開發(fā)的Globus Toolkit標(biāo)準(zhǔn)工具包,已被公認(rèn)為當(dāng)前建立網(wǎng)格系統(tǒng)和開發(fā)網(wǎng)格軟件事實(shí)的參考標(biāo)準(zhǔn)。

          最近一兩年,“網(wǎng)格”這個(gè)詞持續(xù)升溫。你如果用Google搜索“網(wǎng)格”,可以看到8萬個(gè)結(jié)果;你會(huì)發(fā)現(xiàn)除了美國(guó)、歐洲對(duì)網(wǎng)格的研究投入了巨資,我們國(guó)家也通過“863”、自然科學(xué)基金等設(shè)立了網(wǎng)格專項(xiàng),對(duì)網(wǎng)格有數(shù)億元的投資;你還可以看到,有關(guān)網(wǎng)格的活動(dòng)高潮迭起。

          所有這些都說明了網(wǎng)格已經(jīng)悄然的走進(jìn)了千家萬戶,它正被越來越多的人認(rèn)識(shí)和熟悉。在因特網(wǎng)的刺激下,計(jì)算機(jī)行業(yè)正迎接影響深遠(yuǎn)的第三次發(fā)展浪潮。

          Globus Toolkit

          Globus Tookit工具包來源于Globus項(xiàng)目,Globus項(xiàng)目是國(guó)際上最有影響力的與網(wǎng)格計(jì)算相關(guān)的項(xiàng)目之一,是由來自世界各地關(guān)注網(wǎng)格技術(shù)的研究人員和開發(fā)人員共同努力的成果。Globus Tookit是一個(gè)開放源碼的網(wǎng)格的基礎(chǔ)平臺(tái),基于開放結(jié)構(gòu)、開放服務(wù)資源和軟件庫(kù),并支持網(wǎng)格和網(wǎng)格應(yīng)用,目的是為構(gòu)建網(wǎng)格應(yīng)用提供中間件服務(wù)和程序庫(kù)。

          Globus Tookit具有較為統(tǒng)一的國(guó)際標(biāo)準(zhǔn),有利于整合現(xiàn)有資源,也易于維護(hù)和升級(jí)換代。現(xiàn)在,一些重要的公司,包括IBM和微軟等都公開宣布支持Globus Toolkit。目前大多數(shù)網(wǎng)格項(xiàng)目都是采用基于Globus Tookit所提供的協(xié)議及服務(wù)建設(shè)的。

           

          Globus現(xiàn)在的發(fā)展勢(shì)頭正可謂與Linux有異曲同工之處。作為免費(fèi)的操作系統(tǒng),Linux正以勢(shì)如破竹之勢(shì)發(fā)展著。從世界范圍來看,開放源代碼軟件(OSS)是軟件業(yè)發(fā)展的大趨勢(shì),Linux更是OSS的重頭戲,不僅深得IBM、惠普和Sun等國(guó)際IT巨頭的厚愛,同時(shí)也博得了各國(guó)政府的支持。

           

          Globus與Linux 最大的相似之處在于,它們都是開放源代碼軟件,推廣、使用開源軟件已成為眾多政府官員、專家、企業(yè)與用戶的共識(shí)。目前,Globus和Linux的都非常注重標(biāo)準(zhǔn)的制定,通過采用統(tǒng)一的標(biāo)準(zhǔn),使各個(gè)公司企業(yè)同一個(gè)方向上發(fā)展,加快他們的普及。所以我們可以形象地將Globus稱作網(wǎng)格世界的Linux。

           

          隨著時(shí)代的發(fā)展和進(jìn)步,Globus隨著體系結(jié)構(gòu)的變化也經(jīng)歷了幾次飛躍,它現(xiàn)在變得越來越完善。

           

          Globus Toolkit 2

           

          自從1997年起,Globus Toolkit工具包的第二版(GT2)成為了網(wǎng)格計(jì)算的事實(shí)標(biāo)準(zhǔn)。它著重于可用性和互操作性能力,定義和實(shí)現(xiàn)了一些協(xié)議、API和服務(wù)。

           

          當(dāng)時(shí)在世界上有上千個(gè)網(wǎng)格應(yīng)用基于GT2,通過提供授權(quán)認(rèn)證、資源發(fā)現(xiàn)和資源訪問等共同問題的解決方案,GT2加快了網(wǎng)格應(yīng)用的構(gòu)建。GT2通過定義和實(shí)現(xiàn)的“標(biāo)準(zhǔn)”協(xié)議和服務(wù),真正地實(shí)現(xiàn)了可互操作的網(wǎng)格系統(tǒng)。

           

          但是,GT2畢竟目的是針對(duì)網(wǎng)格的具體實(shí)現(xiàn),所以它并沒有一個(gè)正式的標(biāo)準(zhǔn),也沒有接受公開的審閱,所以在某種程度上限制了它的發(fā)展。隨著網(wǎng)格技術(shù)的快速發(fā)展和全球網(wǎng)格論壇這個(gè)標(biāo)準(zhǔn)性的機(jī)構(gòu)出現(xiàn),使修訂Globus Tookit的協(xié)議的標(biāo)準(zhǔn)提到了日程上。

           

          基于OGSI的Globus

           

          2002年2 月,在加拿大多倫多市召開的全球網(wǎng)格論壇GGF會(huì)議上,Globus項(xiàng)目組和IBM共同倡議了一個(gè)全新的網(wǎng)格標(biāo)準(zhǔn)OGSA。OGSA叫做開放網(wǎng)格服務(wù)體系,它把Globus標(biāo)準(zhǔn)與以商用為主的Web Services的標(biāo)準(zhǔn)結(jié)合起來,網(wǎng)格服務(wù)統(tǒng)一以Services的方式對(duì)外界提供。2003年符合OGSA規(guī)范的Globus Toolkit 3.0(GT3)發(fā)布,這標(biāo)志著OGSA已經(jīng)從一種理念、一種體系結(jié)構(gòu),走到付諸實(shí)踐的階段了。

           

          GT3提供了一個(gè)完整的開放網(wǎng)格服務(wù)基礎(chǔ)設(shè)施(OGSI)實(shí)現(xiàn),它的許多功能重構(gòu)成與OGSI兼容的服務(wù)。GT3將服務(wù)發(fā)現(xiàn)、程序執(zhí)行作業(yè)的提交、監(jiān)控和可靠的文件傳輸,定義成了與OGSI兼容的服務(wù)。其它如數(shù)據(jù)傳遞、副本定位和授權(quán)等服務(wù)也盡量構(gòu)建成與OGSI相兼容。并且GT3定義了一組關(guān)于使用Web服務(wù)描述語言(WSDL)和擴(kuò)展標(biāo)識(shí)語言(XML)模式的約定與擴(kuò)展,以便啟用有狀態(tài)服務(wù)。

           

          雖然OGSI的概念很重要,但是也存在一些自身的缺陷,需要一些新的結(jié)構(gòu)來解決這些問題。所以采用新的結(jié)構(gòu)代替OGSI是有必要的,通過轉(zhuǎn)變可以獲得網(wǎng)絡(luò)服務(wù)強(qiáng)有力的支持。

           

          基于WSRF的Globus

           

          2004年1 月,美國(guó)Akamai Technologies、美國(guó)The Globus Alliance、惠普、IBM、美國(guó)Sonic Software和美國(guó)TIBCO Software六公司公布了統(tǒng)一網(wǎng)格計(jì)算和Web服務(wù)的新標(biāo)準(zhǔn)“WS-Notification”和“WS-Resource Framework”。Web服務(wù)資源框架(WSRF)是OGSI的重構(gòu)和發(fā)展,利用新的Web服務(wù)標(biāo)準(zhǔn)。

           

          WSRF基本保留了OGSI中的所有功能,同時(shí)更改了一些語法,并且還在其表示中采用了不同的技術(shù)。Web服務(wù)通知(WSN)為Web服務(wù)提供基于消息發(fā)布和預(yù)定能力。WSRF和WSN都是建立在已存在的Web服務(wù)定義和技術(shù)基礎(chǔ)上的,幫助實(shí)現(xiàn)了網(wǎng)格計(jì)算、系統(tǒng)管理和Web服務(wù)的統(tǒng)一。

           

          2005年1月31日發(fā)布的Globus Toolkit 4(GT4),實(shí)現(xiàn)了WSRF和WSN標(biāo)準(zhǔn)。GT4提供API來構(gòu)建有狀態(tài)的Web服務(wù),其目標(biāo)是建立分布式異構(gòu)計(jì)算環(huán)境。所有知名的GT3協(xié)議都被重新設(shè)計(jì)為可以使用WSRF。并且GT4也在其中增添了一些新的Web服務(wù)的組件。    

          posted @ 2007-11-03 11:56 y 閱讀(203) | 評(píng)論 (0)編輯 收藏
          給個(gè)通俗的解釋吧.
          例表a
          aid adate
          1 a1
          2 a2
          3 a3
          表b
          bid bdate
          1 b1
          2 b2
          4 b4
          兩個(gè)表a,b相連接,要取出id相同的字段
          select * from a inner join b on a.aid = b.bid這是僅取出匹配的數(shù)據(jù).
          此時(shí)的取出的是:
          1 a1 b1
          2 a2 b2
          那么left join 指:
          select * from a left join b on a.aid = b.bid
          首先取出a表中所有數(shù)據(jù),然后再加上與a,b匹配的的數(shù)據(jù)
          此時(shí)的取出的是:
          1 a1 b1
          2 a2 b2
          3 a3 空字符
          同樣的也有right join
          指的是首先取出b表中所有數(shù)據(jù),然后再加上與a,b匹配的的數(shù)據(jù)
          此時(shí)的取出的是:
          1 a1 b1
          2 a2 b2
          4 空字符 b4
          posted @ 2007-07-10 12:01 y 閱讀(189) | 評(píng)論 (0)編輯 收藏
          聲明方法的存在而不去實(shí)現(xiàn)它的類被叫做抽象類(abstract class),它用于要?jiǎng)?chuàng)建一個(gè)體現(xiàn)某些基本行為的類,并為該類聲明方法,但不能在該類中實(shí)現(xiàn)該類的情況。不能創(chuàng)建abstract 類的實(shí)例。然而可以創(chuàng)建一個(gè)變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法。Abstract 類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否則它們也是抽象類為。取而代之,在子類中實(shí)現(xiàn)該方法。知道其行為的其它類可以在類中實(shí)現(xiàn)這些方法。

                  接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實(shí)現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個(gè)有程序體。接口只可以定義static final成員變量。接口的實(shí)現(xiàn)與子類相似,除了該實(shí)現(xiàn)類不能從接口定義中繼承行為。當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現(xiàn)了該接口的類的任何對(duì)象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動(dòng)態(tài)聯(lián)編將生效。引用可以轉(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanceof 運(yùn)算符可以用來決定某對(duì)象的類是否實(shí)現(xiàn)了接口。

                 接口可以繼承接口。抽象類可以實(shí)現(xiàn)(implements)接口,抽象類是可以繼承實(shí)體類,但前提是實(shí)體類必須有明確的構(gòu)造函數(shù)。

                接口更關(guān)注“能實(shí)現(xiàn)什么功能”,而不管“怎么實(shí)現(xiàn)的”。

          相同及聯(lián)系
            A. 兩者都是抽象類,都不能實(shí)例化。
            B. interface實(shí)現(xiàn)類及abstrct class的子類都必須要實(shí)現(xiàn)已經(jīng)聲明的抽象方法。

          2. 不同
            A. interface需要實(shí)現(xiàn),要用implements,而abstract class需要繼承,要用extends。
            B. 一個(gè)類可以實(shí)現(xiàn)多個(gè)interface,但一個(gè)類只能繼承一個(gè)abstract class。
            C. interface強(qiáng)調(diào)特定功能的實(shí)現(xiàn),而abstract class強(qiáng)調(diào)所屬關(guān)系。 
            D. 盡管interface實(shí)現(xiàn)類及abstrct class的子類都必須要實(shí)現(xiàn)相應(yīng)的抽象方法,但實(shí)現(xiàn)的形式不同。interface中的每一個(gè)方法都是抽象方法,都只是聲明的(declaration, 沒有方法體),實(shí)現(xiàn)類必須要實(shí)現(xiàn)。而abstract class的子類可以有選擇地實(shí)現(xiàn)。這個(gè)選擇有兩點(diǎn)含義:
              一是Abastract class中并非所有的方法都是抽象的,只有那些冠有abstract的方法才是抽象的,子類必須實(shí)現(xiàn)。那些沒有abstract的方法,在Abstrct class中必須定義方法體。
              二是abstract class的子類在繼承它時(shí),對(duì)非抽象方法既可以直接繼承,也可以覆蓋;而對(duì)抽象方法,可以選擇實(shí)現(xiàn),也可以通過再次聲明其方法為抽象的方式,無需實(shí)現(xiàn),留給其子類來實(shí)現(xiàn),但此類必須也聲明為抽象類。既是抽象類,當(dāng)然也不能實(shí)例化。
            E. abstract class是interface與Class的中介。
            interface是完全抽象的,只能聲明方法,而且只能聲明pulic的方法,不能聲明private及protected的方法,不能定義方法體,也不能聲明實(shí)例變量。然而,interface卻可以聲明常量變量,并且在JDK中不難找出這種例子。但將常量變量放在interface中違背了其作為接口的作用而存在的宗旨,也混淆了interface與類的不同價(jià)值。如果的確需要,可以將其放在相應(yīng)的abstract class或Class中。
            abstract class在interface及Class中起到了承上啟下的作用。一方面,abstract class是抽象的,可以聲明抽象方法,以規(guī)范子類必須實(shí)現(xiàn)的功能;另一方面,它又可以定義缺省的方法體,供子類直接使用或覆蓋。另外,它還可以定義自己的實(shí)例變量,以供子類通過繼承來使用。

          3. interface的應(yīng)用場(chǎng)合
            A. 類與類之前需要特定的接口進(jìn)行協(xié)調(diào),而不在乎其如何實(shí)現(xiàn)。
            B. 作為能夠?qū)崿F(xiàn)特定功能的標(biāo)識(shí)存在,也可以是什么接口方法都沒有的純粹標(biāo)識(shí)。
            C. 需要將一組類視為單一的類,而調(diào)用者只通過接口來與這組類發(fā)生聯(lián)系。
            D. 需要實(shí)現(xiàn)特定的多項(xiàng)功能,而這些功能之間可能完全沒有任何聯(lián)系。

          4. abstract class的應(yīng)用場(chǎng)合
            一句話,在既需要統(tǒng)一的接口,又需要實(shí)例變量或缺省的方法的情況下,就可以使用它。最常見的有:
            A. 定義了一組接口,但又不想強(qiáng)迫每個(gè)實(shí)現(xiàn)類都必須實(shí)現(xiàn)所有的接口。可以用abstract class定義一組方法體,甚至可以是空方法體,然后由子類選擇自己所感興趣的方法來覆蓋。
            B. 某些場(chǎng)合下,只靠純粹的接口不能滿足類與類之間的協(xié)調(diào),還必需類中表示狀態(tài)的變量來區(qū)別不同的關(guān)系。abstract的中介作用可以很好地滿足這一點(diǎn)。
            C. 規(guī)范了一組相互協(xié)調(diào)的方法,其中一些方法是共同的,與狀態(tài)無關(guān)的,可以共享的,無需子類分別實(shí)現(xiàn);而另一些方法卻需要各個(gè)子類根據(jù)自己特定的狀態(tài)來實(shí)現(xiàn)特定的功能。

          posted @ 2007-07-06 15:53 y 閱讀(242) | 評(píng)論 (0)編輯 收藏
          主站蜘蛛池模板: 新河县| 志丹县| 阳新县| 裕民县| 府谷县| 尼木县| 宜黄县| 仁化县| 竹北市| 开远市| 仁怀市| 大新县| 伽师县| 眉山市| 乐安县| 乌鲁木齐市| 吉林省| 西盟| 五寨县| 昌宁县| 寻乌县| 青海省| 沂水县| 鄯善县| 蓬莱市| 专栏| 忻城县| 灵丘县| 修武县| 洪雅县| 长寿区| 阿瓦提县| 灵璧县| 大关县| 都江堰市| 晋宁县| 凯里市| 招远市| 临猗县| 三都| 麟游县|