• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于AIX系統(tǒng)的MQ傳輸方案的設(shè)計(jì)與實(shí)現(xiàn)

      2020-07-26 14:19梁明炯
      科技創(chuàng)新與應(yīng)用 2020年22期
      關(guān)鍵詞:數(shù)據(jù)傳輸

      梁明炯

      摘? 要:IBM WebSphere MQ是跨平臺的消息傳輸通信中間件,通過消息隊(duì)列的存儲轉(zhuǎn)發(fā)機(jī)制,實(shí)現(xiàn)各類異構(gòu)系統(tǒng)之間的數(shù)據(jù)傳輸。AIX是IBM開發(fā)的類UNIX操作系統(tǒng),性能穩(wěn)定。文章基于AIX系統(tǒng)設(shè)計(jì)并實(shí)現(xiàn)了WebSphere MQ的傳輸方案。

      關(guān)鍵詞:AIX;MQ;異構(gòu)系統(tǒng);數(shù)據(jù)傳輸

      中圖分類號:TP311.52? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ? ? ?文章編號:2095-2945(2020)22-0010-05

      Abstract: IBM WebSphere MQ is a message transmission middleware across multiple platforms that uses the store and forward mechanism of messages to achieve data transmission between heterogeneous systems. AIX is a Unix-like operating system with stable performance developed by IBM. This paper designs and implements a transmission scheme using WebSphere MQ based on AIX.

      Keywords: AIX; MQ; heterogeneous systems; transmission

      1 背景及意義

      隨著深圳航空運(yùn)輸業(yè)的快速發(fā)展,深圳空管氣象部門與深圳機(jī)場以及各航空公司之間的數(shù)據(jù)交換需求日益增多。如何保證航空氣象資料的實(shí)時(shí)傳輸尤為關(guān)鍵。IBM的WebSphere MQ是跨平臺跨網(wǎng)絡(luò)的提供消息傳輸功能的通信中間件,是目前應(yīng)用最多的消息中間件產(chǎn)品[1][2]。AIX系統(tǒng)主要應(yīng)用在IBM RISC 6000系列小型機(jī)上[3],性能穩(wěn)定。我們基于AIX設(shè)計(jì)并實(shí)現(xiàn)了空管氣象部門與各航空公司的MQ數(shù)據(jù)傳輸系統(tǒng)。本系統(tǒng)自運(yùn)行以來非常穩(wěn)定,為各航空公司提供了可靠及時(shí)的航空氣象資料。

      2 MQ方案設(shè)計(jì)

      IBM WebSphere MQ實(shí)際上是基于消息隊(duì)列實(shí)現(xiàn)傳輸。應(yīng)用程序通過連接到MQ以發(fā)送或接收消息,如果連接暫時(shí)不可用,MQ會將消息排隊(duì),并在連接重新聯(lián)機(jī)時(shí)將其轉(zhuǎn)發(fā)。MQ中主要涉及三個(gè)概念:隊(duì)列管理器、通道和隊(duì)列。隊(duì)列管理器是消息隊(duì)列的管理者,用來維護(hù)和管理消息隊(duì)列。隊(duì)列管理器確保消息可以發(fā)送至正確的隊(duì)列或傳遞至另一個(gè)隊(duì)列管理器;通道是兩個(gè)隊(duì)列管理器之間的單向通信鏈路。MQ 使用通道在隊(duì)列管理器之間傳送消息。要雙向發(fā)送消息必須定義每個(gè)方向的通道;隊(duì)列是存放消息的容器,隊(duì)列存儲消息直到它被應(yīng)用程序處理。

      MQ的隊(duì)列分為4種,分別是本地隊(duì)列、傳輸隊(duì)列、遠(yuǎn)程隊(duì)列和死信隊(duì)列:(1)本地隊(duì)列是一個(gè)物理上位于本地

      隊(duì)列管理器中的隊(duì)列。應(yīng)用程序可以放消息到本地隊(duì)列,也可以從本地隊(duì)列取消息;(2)傳輸隊(duì)列是特殊類型的本

      地隊(duì)列。如果需發(fā)送消息到遠(yuǎn)程隊(duì)列管理器上的隊(duì)列,消息先被儲存在傳輸隊(duì)列,直到遠(yuǎn)程隊(duì)列管理器上的隊(duì)列可用;(3)遠(yuǎn)程隊(duì)列實(shí)質(zhì)上指向遠(yuǎn)程隊(duì)列管理器,程序可以向遠(yuǎn)程隊(duì)列發(fā)送消息,但不能從遠(yuǎn)程隊(duì)列中去讀取消息;(4)死信隊(duì)列是存儲無法發(fā)送到其正確目的地消息的隊(duì)列,也就是放置發(fā)送失敗的消息。

      限于篇幅,只選取兩個(gè)航空公司(東海航空和深圳航空)來闡述MQ的設(shè)計(jì)方案。我們需要定義各傳輸接收方的隊(duì)列管理器、隊(duì)列以及它們之間相互傳輸?shù)耐ǖ?。這里先定義各傳輸接收方的四字代碼,以便定義MQ對象時(shí)使用:空管氣象部門KGQX、東海航空DHHK、深圳航空SZHK。因此所定義的三個(gè)隊(duì)列管理器分別是KGQX、DHHK和SZHK。

      創(chuàng)建并啟動(dòng)隊(duì)列管理器后,應(yīng)用程序和其他隊(duì)列管理器可以連接到它來發(fā)送和接收消息。MQ通道通過網(wǎng)絡(luò)將一個(gè)隊(duì)列管理器連接到另一個(gè)隊(duì)列管理器。MQ通道命名設(shè)計(jì)為本隊(duì)列管理器名.TO.對方隊(duì)列管理器名,例如空管氣象到東海航空的通道名為KGQX.TO.DHHK。由于傳輸?shù)臍庀筚Y料包括報(bào)文和產(chǎn)品(包括圖片等各種非報(bào)文格式資料),我們設(shè)計(jì)本地隊(duì)列LOCAL.TXT存放報(bào)文資料,本地隊(duì)列LOCAL.PRD存放產(chǎn)品資料。傳輸隊(duì)列使用對方隊(duì)列管理器命名,因?yàn)閭鬏旉?duì)列存儲的數(shù)據(jù)是要發(fā)送到對方隊(duì)列管理器。假如一份報(bào)文需要通過隊(duì)列管理器KGQX傳到DHHK,那么消息先被存儲到本地隊(duì)列LOCAL.TXT,目標(biāo)是遠(yuǎn)程隊(duì)列TO.DHHK.TXT。然后到傳輸隊(duì)列DHHK,通過通道KGQX.TO.DHHK到達(dá)隊(duì)列管理器DHHK。氣象部門與深圳航空和東海航空的MQ設(shè)計(jì)如圖1所示。

      3 MQ方案實(shí)現(xiàn)

      本章首先在AIX系統(tǒng)上創(chuàng)建并配置好MQ,然后通過腳本定義好MQ各對象。

      3.1 創(chuàng)建MQ文件系統(tǒng)及賬戶

      首先在AIX系統(tǒng)上通過smitty創(chuàng)建相應(yīng)的文件系統(tǒng)及MQ賬戶。

      (1)運(yùn)行smitty crfs命令,選擇第一項(xiàng)Add an Enhanc

      ed Journaled File System。在彈出界面中,選擇datavg,在Numb of units中選擇5120,即創(chuàng)建5120MB大小的文件系統(tǒng)。在MOUNT POINT一項(xiàng)選擇/usr/mqm,即掛載點(diǎn)為/usr/mqm;在Mount AUTOMATICALLY at system restart一項(xiàng)選擇yes,即開機(jī)自動(dòng)掛載文件系統(tǒng)。如圖2所示。

      (2)同樣的方法創(chuàng)建/var/mqm文件系統(tǒng),容量也設(shè)置為5G。

      (3)執(zhí)行mount /usr/mqm和mount /var/mqm命令,將

      所創(chuàng)建的兩個(gè)文件系統(tǒng)進(jìn)行掛載。

      (4)通過smitty mkgroup命令創(chuàng)建mqm用戶組,然后通過smitty mkuser命令創(chuàng)建MQ用戶。

      3.2 安裝配置MQ

      把MQ For AIX光盤插入CDROM中。以root用戶登錄,輸入smitty install命令進(jìn)入smitty菜單開始安裝。在SOFTWARE to install選項(xiàng)按F4,將ACCEPT new license agreements 置為yes,按回車,開始進(jìn)行MQ的安裝。如圖3所示。

      安裝結(jié)束后需添加MQSeries服務(wù),步驟如下。

      (1)修改/etc/services文件,在末尾添加一行:MQSeries 1414/tcp

      (2)修改/etc/inetd.conf,在末尾添加一行:

      MQSeries stream tcp nowait mqm /usr/mqm/bin/amqcrsta amqcrsta

      (3)刷新inetd進(jìn)程:refresh -s inetd

      可通過telnet localhost 1414進(jìn)行測試mq是否安裝并配置成功。

      3.3 定義MQ對象

      如圖1所示,在空管氣象端需要?jiǎng)?chuàng)建隊(duì)列管理器、2個(gè)本地隊(duì)列、2個(gè)傳輸隊(duì)列、4個(gè)遠(yuǎn)程隊(duì)列、1個(gè)死信隊(duì)列以及4個(gè)通道。

      3.3.1 定義隊(duì)列管理器

      這里創(chuàng)建一個(gè)缺省的隊(duì)列管理器KGQX,如表1。其中,-lf 表示隊(duì)列管理器日志文件大小,-lp 20 -ls 2表示日志指定為20個(gè)主擴(kuò)展和2個(gè)次擴(kuò)展,-q 選項(xiàng)表示缺省的隊(duì)列管理器名稱。maxmsgl(15728640)表示修改隊(duì)列管理器的最大消息長度(單位為字節(jié)),這里實(shí)際消息長度為15728640/1024/1024=15M。

      3.3.2 定義本地隊(duì)列

      共需要定義兩個(gè)本地隊(duì)列LOCAL.TXT和LOCAL.PRD,如表2。其中,DEFPSIST屬性表示隊(duì)列消息的持久性(值為YES則隊(duì)列管理器重啟時(shí)消息不會丟失),MAXMSGL表示隊(duì)列管理器最大消息長度,MAXDEPTH表示隊(duì)列上允許的最大消息數(shù)。

      3.3.3 定義傳輸隊(duì)列

      隊(duì)列管理器KGQX中共需要定義兩個(gè)傳輸隊(duì)列SZHK和DHHK,分別對應(yīng)深圳航空和東海航空,如表3。每個(gè)傳輸隊(duì)列同時(shí)保存報(bào)文和產(chǎn)品。USAGE(XMITQ)參數(shù)為“XMITQ”,表示指定本隊(duì)列為傳輸隊(duì)列。

      3.3.4 定義遠(yuǎn)程隊(duì)列

      每個(gè)遠(yuǎn)程隊(duì)列對應(yīng)于發(fā)往一個(gè)航空公司的報(bào)文或者產(chǎn)品。RNAME和RQMNAME中的參數(shù)需與遠(yuǎn)程隊(duì)列管理器中的本地隊(duì)列名或者遠(yuǎn)程隊(duì)列管理器名相同,如表4。

      3.3.5 定義死信隊(duì)列

      隊(duì)列管理器KGQX中需定義一個(gè)死信隊(duì)列KGQX.DEADQ,其中參數(shù)KGQX.DEADQ表示本隊(duì)列為死信隊(duì)列,如表5。

      3.3.6 定義消息通道

      隊(duì)列管理器KGQX需接收深圳航空隊(duì)列管理器SZHK和東海航空隊(duì)列管理器DHHK發(fā)送的消息,接收通道名為SZHK.TO.KGQX和DHHK.TO.KGQX,如表6。其中,參數(shù)RCVR指定通道類型為接收類型。BATCHSZ(5)表示批處理大小,當(dāng)發(fā)送的消息個(gè)數(shù)達(dá)到5,通道將統(tǒng)一提交消息。

      還需定義到SZHK和DHHK的消息發(fā)送通道KGQX.TO.SZHK和KGQX.TO.DHHK,如表7所示。這里IP1和IP2表示對方MQ服務(wù)器的IP地址。

      4 結(jié)束語

      本文通過WebSphere MQ設(shè)計(jì)并實(shí)現(xiàn)了用于深圳空管氣象部門與航空公司之間的數(shù)據(jù)傳輸系統(tǒng)。系統(tǒng)自上線之日起不間斷運(yùn)行,表現(xiàn)出穩(wěn)定的傳輸性能。這有效保證了深圳空管氣象部門與各航空公司之間安全可靠的數(shù)據(jù)交換,為深圳航空運(yùn)輸業(yè)的發(fā)展保駕護(hù)航。

      參考文獻(xiàn):

      [1]馬越,羅漢文.WebSphere MQ在零售業(yè)系統(tǒng)數(shù)據(jù)傳輸中的應(yīng)用[J].上海師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2017,46(01):1-9.

      [2]于巖.基于Websphere MQ搭建高可用消息傳輸隊(duì)列[J].電腦知識與技術(shù),2015,11(19):76-77.

      [3]張黎.基于AIX操作系統(tǒng)的銀行中間業(yè)務(wù)平臺的開發(fā)與應(yīng)用研究[D].江漢大學(xué),2018.

      猜你喜歡
      數(shù)據(jù)傳輸
      具有物聯(lián)網(wǎng)功能的醫(yī)用恒溫反應(yīng)箱的研制
      具有物聯(lián)網(wǎng)功能的醫(yī)用恒溫反應(yīng)箱的研制
      基于Ad Hoc的微震監(jiān)測數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)
      基于ZigBee 的井下探測小助手設(shè)計(jì)
      GPRS DTU的應(yīng)用經(jīng)驗(yàn)淺析
      新型高速復(fù)合數(shù)據(jù)傳輸線纜的研究與開發(fā)
      基于FPGA的可反饋式同步串行通信技術(shù)
      配網(wǎng)饋線自動(dòng)化通信方式分析
      山阳县| 玛多县| 永胜县| 宜阳县| 青海省| 招远市| 绥德县| 龙江县| 桑植县| 南木林县| 林甸县| 桂阳县| 祁连县| 正蓝旗| 东至县| 义马市| 宜章县| 德安县| 吉水县| 武陟县| 永城市| 深州市| 宝坻区| 彩票| 且末县| 盐池县| 叶城县| 个旧市| 旬阳县| 理塘县| 贵州省| 精河县| 陇西县| 红原县| 怀集县| 商河县| 清水河县| 德江县| 淮安市| 南丹县| 河间市|