亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種利用Tuxedo處理集群文件服務(wù)器協(xié)作的方法

        2008-04-12 00:00:00唐友生曹慶華傅翠嬌
        現(xiàn)代電子技術(shù) 2008年10期

        摘 要:現(xiàn)代大型信息系統(tǒng)中文件量比較大,一臺(tái)服務(wù)器很難支持大量文件的存儲(chǔ),使用集群文件服務(wù)器,可以解決大量文件存儲(chǔ)的問(wèn)題。通過(guò)實(shí)際項(xiàng)目中使用的方案,描述利用Tuxedo 7.1支持對(duì)XML文件分析功能,實(shí)現(xiàn)文件服務(wù)器互相協(xié)作的方式。特別是通過(guò)使用文件命名散列方法計(jì)算文件服務(wù)器標(biāo)示號(hào),通過(guò)XML傳遞該標(biāo)識(shí)號(hào)到Tuxedo服務(wù)器,從而抉擇將文件放置到哪臺(tái)文件服務(wù)器上。這樣不用在文件數(shù)據(jù)庫(kù)存儲(chǔ)文件位置,就可以直接存儲(chǔ)并獲取文件。

        關(guān)鍵詞:集群文件服務(wù)器;Tuxedo中間件技術(shù);算法;XML

        中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:B

        文章編號(hào):1004-373X(2008)10-091-02

        A Method for Dealing with Cooperating File Servers with Tuxedo

        TANG Yousheng,CAO Qinghua,F(xiàn)U Cuijiao

        (School of Computer Science,Beihang University,Beijing,100083,China)

        Abstract:In the modern large-scale MIS,the amount of files are very high,single file server cannotsupportabundant storage.By using collective file servers,we can deal with problem of abundant storage of files.This chapter describes how to use Tuxedo 7.1 to analyze XML file,then implements the cooperation of file servers for storing the files.Especially,by using Hash of file name to gain the ID of the file server,and send the ID to the Tuxedo server.Tuxedo server decide where the file went by this ID.So,we can directly save and acquire the file on server.

        Keywords:file servers;Tuxedo middleware;arithmetic;XML

        1 基于Tuxedo的編程方式

        Tuxedo是BEA公司出品的交易中間件,經(jīng)過(guò)近20年的努力,Tuxedo已經(jīng)發(fā)展成為交易中間件領(lǐng)域事實(shí)上的標(biāo)準(zhǔn)。作為中間件,他具有跨平臺(tái),跨網(wǎng)絡(luò)的能力??梢怨芾矸植加诓煌?jì)算機(jī)上的數(shù)據(jù)的一致性,協(xié)調(diào)數(shù)據(jù)庫(kù)的分布式處理事務(wù),保障整個(gè)系統(tǒng)的性能和可靠性。

        Tuxedo 從7.1版本開(kāi)始,開(kāi)始支持XML,并且,他允許XML文件通過(guò)基于數(shù)據(jù)的路由從Jolt客戶端流向Tuxedo服務(wù)。本文就是利用Tuxedo 7.1 的這個(gè)特點(diǎn),實(shí)現(xiàn)抉擇文件數(shù)據(jù)流向,使各個(gè)文件服務(wù)器上的文件基本保持平衡。

        基于Tuxedo中間件程序的編程需要配置UBB文件,這里主要就是配置分組,配置網(wǎng)絡(luò)路由和配置XML文件頭分析方式,利用文件頭信息決定路由到哪個(gè)文件服務(wù)器。在編程時(shí),需要利用Tuxedo的API函數(shù)和其內(nèi)置的數(shù)據(jù)類型。下面對(duì)集群文件服務(wù)器網(wǎng)絡(luò)構(gòu)架,這個(gè)網(wǎng)絡(luò)構(gòu)架如何配置UBB文件以及如何進(jìn)行文件傳輸決策的客戶端和服務(wù)器端程序做詳細(xì)的描述。

        2 集群文件服務(wù)器架構(gòu)和UBB配置

        為了方便說(shuō)明,簡(jiǎn)化了實(shí)踐中使用的系統(tǒng)架構(gòu)。其基本思想就是利用一臺(tái)Tuxedo服務(wù)器作為主服務(wù)器,用他來(lái)對(duì)其他服務(wù)器進(jìn)行調(diào)用,抉擇哪一臺(tái)服務(wù)器響應(yīng)客戶的服務(wù)請(qǐng)求。這里要對(duì)這臺(tái)服務(wù)器UBB進(jìn)行配置,將其設(shè)置為主服務(wù)器,并將其中的*MACHINES,*GROUPS,*SERVERS,*NETWORKS,ROUTING等屬性進(jìn)行相應(yīng)的配置。一種可能的配置可以是:

        *RESOURCES

        MASTER SITE1,...SITEN

        MAXACCESSERS40

        MAXSERVERS 40

        OPTIONS LAN

        *MACHINES

        MACHINE1 LMID = SITE1

        APPDIR=\"/tuxedo/bint\"

        TUXCONFIG=\"/tuxedo/bint/tuxconfig\"

        TUXDIR=\"/usr/tuxedo\"

        …

        MACHINEN LMID = SITEN

        APPDIR=\"/tuxedo/bint\"

        TUXCONFIG=\"/tuxedo/bint/tuxconfig\"

        TUXDIR=\"/usr/tuxedo\"

        *GROUPS

        GROUP1

        LMID=SITE1 GRPNO=1 OPENINFO = NONE

        …

        GROUPN

        LMID=SITEN GRPNO=N OPENINFO = NONE

        *NETWORK

        SITE1NADDR=\"http://10.1.13.21:6000\"

        NLSADDR=\"http://10.13.21:6001\"

        …

        SITENNADDR=\"http://10.1.13.103:6000\"

        NLSADDR=\"http://10.13.103:6001\"

        *SERVERS

        SITE1SERV SRVGRP=GROUP1 SRVID=100

        …

        SITENSERV SRVGRP=GROUPN SRVID=190

        *SERVICES

        GETFILE LOAD=50 PRIO=50 ROUTING=SERIALNO

        PUTFILE LOAD=50 PRIO=50 ROUTING=SERIALNO

        *ROUTING

        SERIALNO FIELD=[ZK(]\"FILEMES/HEADER/@SERIALNO\"

        BUFTYPE=\"XML\"

        RANGES=\"1-9:GROUP1

        …

        *:GROUPN\"[ZK)]

        以上是Tuxedo服務(wù)器UBB的示例設(shè)置。如圖1所示,文件服務(wù)器1到文件服務(wù)器中都有2個(gè)公共的服務(wù),GetFile 和PUTFILE,UBB配置文件將這些服務(wù)分在了不同的組中,通過(guò)ROUTING中的SERIALNO字段的判斷來(lái)決定調(diào)用那個(gè)文件服務(wù)器的相應(yīng)服務(wù)。而這個(gè)SERIALNO字段來(lái)自客戶段傳來(lái)的XML文件的頭部信息。

        圖1 集群文件服務(wù)器布局方式

        3 XML文件編程設(shè)置方法

        上面提到Tuxedo服務(wù)器調(diào)用哪個(gè)文件服務(wù)器來(lái)響應(yīng)客戶端的服務(wù)請(qǐng)求,是通過(guò)客戶端在調(diào)用服務(wù)時(shí),向服務(wù)器傳遞的XML文件的頭部信息中的serialno字段決定的。其形式可以是這樣:

        

        200710105675X.tif

        這樣,只要能夠利用合理的算法來(lái)對(duì)不同名稱的文件進(jìn)行標(biāo)示,告知Tuxedo服務(wù)器調(diào)用哪個(gè)文件服務(wù)器相應(yīng)服務(wù),就能達(dá)到將客戶端的文件傳輸?shù)讲煌奈募?wù)器上,同時(shí),利用該字段,也可以從正確的文件服務(wù)器上下載到相應(yīng)的文件。如果能夠填入合適的SERAILNO字段就可以起到使各文件服務(wù)器負(fù)載均衡的作用。使用任何一種編程語(yǔ)言可以產(chǎn)生XML文件并對(duì)其HEADER中的SERIALNO進(jìn)行設(shè)置,下面利用文件名稱計(jì)算出合適的SERIALNO以便可以傳到Tuxedo服務(wù)器,讓其可以將不同名稱的文件存儲(chǔ)在合適的位置,從而達(dá)到各個(gè)文件負(fù)載平衡的目的。實(shí)踐中,使用HP-Unix操作系統(tǒng)運(yùn)行Tuxedo中間件服務(wù)??蛻舳耸褂肨uxedo 客戶端程序,運(yùn)行在MS Windows 操作系統(tǒng)上,為了方便起見(jiàn),客戶端和服務(wù)器端都使用C語(yǔ)言進(jìn)行開(kāi)發(fā)。下面利用網(wǎng)絡(luò)中的DHCP 負(fù)載平衡算法,將各個(gè)文件名作為鍵值,計(jì)算出SERIALNO的值。

        unsigned charloadb_mx_tbl[64] ={

        9,56,24,38,33,44,5,0,41,19,20,63,39,40,43,22,10,53,17,23,52,59,35,4,54,16,32,8,

        21,7,26,18,58,62,45,30,61,57,28,25,51,11,31,50,37,46,42,27,55,6,14,3,15,1,47,60,

        36,49,34,12,2,29,48,13

        };

        char *calserial(

        const unsigned char *filename,/* 文件名 */

        const int len ) /* 長(zhǎng)度*/

        {

        unsigned int hash= len;

        int i;

        for (i=len ; i > 0 ;)

        hash = loadb_mx_tbl [ hash ^ filename [ --i ]];

        return( itoa(hash%N));

        }

        通過(guò)以上算法,計(jì)算出序列號(hào)的值,填入到XML文件中,傳給Tuxedo服務(wù)器,服務(wù)器通過(guò)讀取該值,決定將文件存儲(chǔ)于哪個(gè)文件服務(wù)器。實(shí)踐證明,這個(gè)算法對(duì)于一般類型的文件名稱,有比較好的負(fù)載平衡效果。

        4 結(jié) 語(yǔ)

        這種算法的優(yōu)點(diǎn)是:

        (1) 算法比較簡(jiǎn)單,具有計(jì)算的廉價(jià)性,提高運(yùn)算效率。同時(shí),算法的負(fù)載平衡效果也比較好;

        (2) 系統(tǒng)可擴(kuò)展性比較高。對(duì)于正在服務(wù)器,只需修改Tuxedo服務(wù)器中RANGE字段的配置即可,而不必重寫客戶端的程序。客戶端無(wú)需知道具體文件服務(wù)器的地址,只需知道Txuedo服務(wù)器地址即可;

        (3) 底層文件傳輸利用Tuxedo的二進(jìn)制傳輸方式,隱藏實(shí)現(xiàn)的細(xì)節(jié),減少開(kāi)發(fā)難度。同時(shí),避免直接利用套接字寫文件傳輸程序而可能導(dǎo)致的傳輸效率降低。

        有待擴(kuò)展的地方包括,可以根據(jù)實(shí)際文件名稱情況,書(shū)寫合適的負(fù)載平衡算法,提高文件服務(wù)器的利用率。同時(shí),可以利用Tuxedo服務(wù)器其他特性,如數(shù)據(jù)庫(kù)操作特性,進(jìn)行數(shù)據(jù)庫(kù)方面的控制等。

        參 考 文 獻(xiàn)

        [1]Bernie Volz DHCP 負(fù)載平衡算法RFC 3074 [S].2001.

        [2]徐春金.Tuxedo中間件開(kāi)發(fā)與配置[M].北京:中國(guó)電力出版社,2003.

        注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。

        日日碰狠狠躁久久躁96avv| 中文字幕国产亚洲一区| 脱了老师内裤猛烈进入| 一区二区在线视频免费蜜桃| 亚洲成aⅴ人片久青草影院 | 日韩久久无码免费看A| 中文字幕亚洲五月综合婷久狠狠| 日韩久久无码免费毛片软件| 色偷偷久久一区二区三区 | 极品美女尤物嫩模啪啪| 偷拍综合在线视频二区日韩 | 日韩无码尤物视频| 一本色道精品亚洲国产一区| 国模冰莲极品自慰人体| 久久天天躁狠狠躁夜夜96流白浆| 亚洲无码中文字幕日韩无码| 你懂的视频在线看播放| 九色综合九色综合色鬼| 人妻在卧室被老板疯狂进入国产| 白白色发布永久免费观看视频| 日韩麻豆视频在线观看| 国产成人喷潮在线观看| 亚洲国产18成人中文字幕久久久久无码av| 亚洲日韩区在线电影| 国产成人一区二区三区| 色天使久久综合网天天| 国产大学生粉嫩无套流白浆| 亚洲精品国产综合久久一线| 亚洲乱码中文字幕一线区| 中国老熟女重囗味hdxx| 初高中生精品福利视频| 中文字幕你懂的一区二区| 亚洲av日韩av激情亚洲| 亚洲国产精品综合久久网各| 99国产超薄丝袜足j在线播放| 国产精品久久婷婷六月 | 亚洲成人av在线播放不卡| 国产公开免费人成视频| 日本a级特黄特黄刺激大片| 精品日产一区2区三区| 日本视频一区二区三区观看|