一種應(yīng)用于出行的系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種應(yīng)用于出行的系統(tǒng),所述系統(tǒng)包括硬件層、接入服務(wù)層、應(yīng)用服務(wù)層和業(yè)務(wù)展現(xiàn)層,所述硬件層與所述接入服務(wù)層通訊,本發(fā)明通過提供具備規(guī)模效益的共享、通用、快捷、方便、安全交通綜合查詢系統(tǒng),解決人們的出行旅游問題,通過構(gòu)建完整的應(yīng)用于出行的系統(tǒng)架構(gòu),使得高性能的系統(tǒng)服務(wù)于出行成為可能,并通過使用主從模式的數(shù)據(jù)庫,大大提高讀取的效率,從而提高系統(tǒng)的反應(yīng)速度和魯棒性。
【專利說明】
一種應(yīng)用于出行的系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計算機系統(tǒng),具體涉及一種應(yīng)用于出行的系統(tǒng)。
【背景技術(shù)】
[0002]隨著科技的日益發(fā)展,人們的生活水平有了很大提高,多種多樣的出行方式為人們的出行提供了許多便利,為了適應(yīng)越來越快的生活節(jié)奏,有必要構(gòu)建集成有多種出行信息的資源查詢平臺,為出行線路做出科學(xué)的規(guī)劃,并提供汽車、火車和航班的相關(guān)信息,為人們提供多種出行選擇,從而節(jié)省出行時間,適應(yīng)人們的生活節(jié)奏。
[0003]而針對出行信息的集成資源查詢平臺不可避免需要使用數(shù)據(jù)庫技術(shù),然而,傳統(tǒng)的數(shù)據(jù)庫技術(shù)存在很多弊端。
[0004]在Web應(yīng)用系統(tǒng)中,數(shù)據(jù)庫性能是導(dǎo)致系統(tǒng)性能瓶頸最主要的原因之一?,F(xiàn)有技術(shù)中,大多將所有的功能都放在一個數(shù)據(jù)庫中進(jìn)行,這樣數(shù)據(jù)的性能消耗就會非常大,因此有必要改變數(shù)據(jù)庫的運行模式,從而提升數(shù)據(jù)庫的運行效力,研發(fā)出可行的應(yīng)用于旅游出行的計算機系統(tǒng)。
【發(fā)明內(nèi)容】
[0005]為解決上述技術(shù)問題,集聚社會資源,共同建設(shè)具備規(guī)模效益的共享、通用、快捷、方便、安全交通綜合查詢系統(tǒng),本發(fā)明提供一種應(yīng)用于出行的系統(tǒng)。
[0006]本發(fā)明是以如下技術(shù)方案實現(xiàn)的,一種應(yīng)用于出行的系統(tǒng),所述系統(tǒng)包括硬件層、接入服務(wù)層、應(yīng)用服務(wù)層和業(yè)務(wù)展現(xiàn)層,所述硬件層與所述接入服務(wù)層通訊,
[0007]所述硬件層包括交換設(shè)備、傳輸設(shè)備和動力設(shè)備;
[0008]所述接入服務(wù)層包括與硬件層通訊的適配器模塊、安全審計模塊、XML映射模塊、路由選擇模塊和異常監(jiān)視模塊;
[0009]所述應(yīng)用服務(wù)層包括基礎(chǔ)構(gòu)件層、驅(qū)動引擎層和服務(wù)層:
[0010]所述服務(wù)層包括日志服務(wù)、異常服務(wù)和消息服務(wù),所述服務(wù)層與所述接入服務(wù)層通訊,
[0011 ]所述基礎(chǔ)構(gòu)件層包括WEB框架構(gòu)件、表單構(gòu)件和組織權(quán)限構(gòu)件,所述基礎(chǔ)構(gòu)件層與所述業(yè)務(wù)展現(xiàn)層通訊,
[0012]所述驅(qū)動引擎層包括數(shù)據(jù)引擎和流程引擎,所述驅(qū)動引擎層與所述服務(wù)層和所述基礎(chǔ)構(gòu)件層通訊;
[0013]所述業(yè)務(wù)展現(xiàn)層包括通訊模塊、報文解析模塊、監(jiān)聽模塊、任務(wù)執(zhí)行模塊、服務(wù)啟動模塊和數(shù)據(jù)訪問模塊。
[0014]優(yōu)選的,所述通訊模塊用于和第三方數(shù)據(jù)源進(jìn)行通訊,并將獲取的數(shù)據(jù)傳輸至所述報文解析模塊,所述通訊模塊包括協(xié)議解包子模塊、協(xié)議封包子模塊和sess1n控制子模塊。
[0015]優(yōu)選的,所述報文解析模塊用于解析第三方數(shù)據(jù)源發(fā)送的報文,并將所述報文轉(zhuǎn)換成適用于所述系統(tǒng)的格式,所述報文解析模塊包括字符編碼子模塊、公交GPS報文子模塊、出租GPS子報文模塊和解析天氣子報文模塊。
[0016]優(yōu)選的,所述報文解析模塊包括7個單元,分別為將公交報文的字段類型抽象的公交報文抽象單元、公交報文javabean和出租報文javabean的屬性加載單元、將公交報文和出租報文轉(zhuǎn)換為javabean的報文轉(zhuǎn)換單元、報文解析單元、將報文中的類型轉(zhuǎn)換為相應(yīng)的字節(jié)長度的字節(jié)計算單元、編碼轉(zhuǎn)換單元和將出租報文抽象的出租報文抽象單元。
[0017]優(yōu)選的,所述監(jiān)聽模塊用于監(jiān)聽通訊端口,所述監(jiān)聽模塊包括公交GPS監(jiān)聽模塊、出租GPS監(jiān)聽模塊和客戶端請求監(jiān)聽模塊,所述公交GPS監(jiān)聽模塊和出租GPS監(jiān)聽模塊獲取所述報文解析模塊解析的數(shù)據(jù),
[0018]所述任務(wù)執(zhí)行模塊用于執(zhí)行調(diào)度任務(wù),包括基礎(chǔ)數(shù)據(jù)同步子模塊和內(nèi)存數(shù)據(jù)庫同步子t吳塊:
[0019]所述基礎(chǔ)數(shù)據(jù)同步子模塊用于同步線路的基礎(chǔ)信息,
[0020]所述內(nèi)存數(shù)據(jù)庫同步子模塊用于同步gps信息、基礎(chǔ)信息和景點信息到內(nèi)存數(shù)據(jù)庫。
[0021]優(yōu)選的,所述數(shù)據(jù)訪問模塊用于訪問數(shù)據(jù)庫,獲取客運信息、路況信息和景點信息,所述數(shù)據(jù)庫包括oracle和mysql,所述數(shù)據(jù)訪問模塊對oracle和mysql進(jìn)行連接,所述oracle和mysql數(shù)據(jù)庫均進(jìn)行主從數(shù)據(jù)分離模式,并且oracle和mysql采用不同的主從數(shù)據(jù)分離子模式。
[0022]優(yōu)選的,所述服務(wù)啟動模塊用于啟動業(yè)務(wù)容器,并加載監(jiān)聽模塊和任務(wù)執(zhí)行模塊,所述啟動業(yè)務(wù)容器包括加載容器配置文件并啟動服務(wù)容器。
[0023]優(yōu)選的,所述主從數(shù)據(jù)分離模式中,oracle和mysql數(shù)據(jù)庫所在的主機進(jìn)行數(shù)據(jù)庫寫操作,oracle和mysql數(shù)據(jù)庫所在的從機進(jìn)行數(shù)據(jù)庫讀操作。
[0024]在一般的互聯(lián)網(wǎng)應(yīng)用中,經(jīng)過一些數(shù)據(jù)調(diào)查得出結(jié)論,讀/寫的比例大概在10:1左右,大量的數(shù)據(jù)操作是集中在讀的操作,而寫操作涉及到鎖的問題,不管是行鎖還是表鎖還是塊鎖,都是比較降低系統(tǒng)執(zhí)行效率的事情。主從模式的分離是把寫操作集中在一個節(jié)點上,而讀操作其其他的N個節(jié)點上進(jìn)行,從另一個方面有效地提高了讀的效率,保證了系統(tǒng)的尚可用性。
[0025]優(yōu)選的,mysql主從分離子模式實現(xiàn)方法包括如下步驟:
[0026]S1.配置主從服務(wù)器,所述主服務(wù)器啟用二進(jìn)制日志,所述主從服務(wù)器均使用相應(yīng)的IP值最后一段作為ID;
[0027]S2.在主服務(wù)器上建立帳戶并授權(quán)從服務(wù)器對所述主服務(wù)器進(jìn)行讀操作;
[0028]S3.重啟所述主從服務(wù)器,并查詢主服務(wù)器的狀態(tài),并保持所述主服務(wù)器狀態(tài)值不變;
[0029]S4.配置從服務(wù)器,并啟動從服務(wù)器復(fù)制功能;
[0030]S5.檢查從服務(wù)器復(fù)制功能狀態(tài),其中,Slave_10_Running與Slave_SQL_Running為yes;
[0031]S6.在主服務(wù)器上建立數(shù)據(jù)庫,并對所述數(shù)據(jù)庫進(jìn)行寫操作。
[0032]本發(fā)明提供了一種應(yīng)用于出行的系統(tǒng),通過提供具備規(guī)模效益的共享、通用、快捷、方便、安全交通綜合查詢系統(tǒng),解決人們的出行旅游問題,通過構(gòu)建完整的應(yīng)用于出行的系統(tǒng)架構(gòu),使得高性能的系統(tǒng)服務(wù)于出行成為可能,并通過使用主從模式的數(shù)據(jù)庫,大大提尚讀取的效率,從而提尚系統(tǒng)的反應(yīng)速度和魯棒性。
【附圖說明】
[0033]圖1是本發(fā)明實施例系統(tǒng)邏輯示意圖;
[0034]圖2是本發(fā)明實施例業(yè)務(wù)展現(xiàn)層邏輯示意圖。
【具體實施方式】
[0035]以下結(jié)合附圖對本發(fā)明的原理和特征進(jìn)行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0036]在一個實施例中,如圖1所示,一種應(yīng)用于出行的系統(tǒng),所述系統(tǒng)包括硬件層、接入服務(wù)層、應(yīng)用服務(wù)層和業(yè)務(wù)展現(xiàn)層,所述硬件層與所述接入服務(wù)層通訊,
[0037]所述硬件層包括交換設(shè)備、傳輸設(shè)備和動力設(shè)備;
[0038]所述接入服務(wù)層包括與硬件層通訊的適配器模塊、安全審計模塊、XML映射模塊、路由選擇模塊和異常監(jiān)視模塊;
[0039]所述應(yīng)用服務(wù)層包括基礎(chǔ)構(gòu)件層、驅(qū)動引擎層和服務(wù)層:
[0040]所述服務(wù)層包括日志服務(wù)、異常服務(wù)和消息服務(wù),所述服務(wù)層與所述接入服務(wù)層通訊,
[0041]所述基礎(chǔ)構(gòu)件層把包括WEB框架構(gòu)件、表單構(gòu)件和組織權(quán)限構(gòu)件,所述基礎(chǔ)構(gòu)件層與所述業(yè)務(wù)展現(xiàn)層通訊,
[0042]所述驅(qū)動引擎層包括數(shù)據(jù)引擎和流程引擎,所述驅(qū)動引擎層與所述服務(wù)層和所述基礎(chǔ)構(gòu)件層通訊;
[0043]所述業(yè)務(wù)展現(xiàn)層包括通訊模塊、報文解析模塊、監(jiān)聽模塊、任務(wù)執(zhí)行模塊、服務(wù)啟動模塊和數(shù)據(jù)訪問模塊。
[0044]具體地,如圖2所示,所述通訊模塊用于和第三方數(shù)據(jù)源進(jìn)行通訊,并將獲取的數(shù)據(jù)傳輸至所述報文解析模塊,所述通訊模塊包括協(xié)議解包子模塊、協(xié)議封包子模塊和sess 1n控制子模塊,
[0045]所述報文解析模塊用于解析第三方數(shù)據(jù)源發(fā)送的報文,并將所述報文轉(zhuǎn)換成適用于所述系統(tǒng)的格式,所述報文解析模塊包括字符編碼子模塊、公交GPS報文子模塊、出租GPS子報文模塊和解析天氣子報文模塊:
[0046]具體地,所述報文解析模塊包括7個單元,分別為將公交報文的字段類型抽象的公交報文抽象單元、公交報文javabean和出租報文javabean的屬性加載單元、將公交報文和出租報文轉(zhuǎn)換為javabean的報文轉(zhuǎn)換單元、報文解析單元、將報文中的類型轉(zhuǎn)換為相應(yīng)的字節(jié)長度的字節(jié)計算單元、編碼轉(zhuǎn)換單元和將出租報文抽象的出租報文抽象單元。
[0047]所述監(jiān)聽模塊用于監(jiān)聽通訊端口,所述監(jiān)聽模塊包括公交GPS監(jiān)聽模塊、出租GPS監(jiān)聽模塊和客戶端請求監(jiān)聽模塊,所述公交GPS監(jiān)聽模塊和出租GPS監(jiān)聽模塊獲取所述報文解析模塊解析的數(shù)據(jù),
[0048]所述任務(wù)執(zhí)行模塊用于執(zhí)行調(diào)度任務(wù)、獲取客運信息入庫、獲取路況信息和處理客戶端請求,包括基礎(chǔ)數(shù)據(jù)同步子模塊和內(nèi)存數(shù)據(jù)庫同步子模塊,所述基礎(chǔ)數(shù)據(jù)同步子模塊用于同步線路的基礎(chǔ)信息,所述內(nèi)存數(shù)據(jù)庫同步子模塊用于同步gps信息、基礎(chǔ)信息和景點信息到內(nèi)存數(shù)據(jù)庫。
[0049]所述服務(wù)啟動模塊用于啟動業(yè)務(wù)容器,并加載監(jiān)聽模塊和任務(wù)執(zhí)行模塊,所述啟動業(yè)務(wù)容器包括加載容器配置文件并啟動服務(wù)容器。
[0050]具體地,所述服務(wù)啟動模塊還用于配置消息隊列、配置全局異常、配置程序打包、配置內(nèi)存數(shù)據(jù)庫和業(yè)務(wù)容器。
[0051]所述數(shù)據(jù)訪問模塊用于訪問數(shù)據(jù)庫,獲取客運信息、路況信息和景點信息,所述數(shù)據(jù)庫包括oracle和mysql,所述數(shù)據(jù)訪問模塊對oracle和mysql進(jìn)行連接,所述oracle和mysql數(shù)據(jù)庫均進(jìn)行主從數(shù)據(jù)分離模式,并且oracle和mysql采用不同的主從數(shù)據(jù)分離子模式,
[0052]具體地,所述主從數(shù)據(jù)分離模式中,oracle和mysql數(shù)據(jù)庫所在的主機進(jìn)行數(shù)據(jù)庫寫操作,oracle和mysql數(shù)據(jù)庫所在的從機進(jìn)行數(shù)據(jù)庫讀操作。
[0053]具體地,mysql數(shù)據(jù)庫主從分離方法如下:
[0054]mysql主從分離子模式實現(xiàn)方法包括如下步驟:
[0055]S1.初始化主從服務(wù)器;
[0056]S2.修改主服務(wù)器master,所述主服務(wù)器唯一 ID,取IP最后一段;
[0057]S3.修改從服務(wù)器slave,所述從服務(wù)器唯一 ID,取IP最后一段;
[0058]S4.重啟兩臺服務(wù)器的mysql;
[0059]S5.在主服務(wù)器上建立帳戶并授權(quán)從服務(wù)器;
[0060]S6.登錄主服務(wù)器的mysql,查詢主服務(wù)器的狀態(tài);
[0061 ] S7.配置從服務(wù)器,啟動從服務(wù)器復(fù)制功能;
[0062]S8.檢查從服務(wù)器復(fù)制功能狀態(tài),Slave_10_Running和Slave_SQL_Running的值必須是YES;
[0063]S9.在主服務(wù)器上建立數(shù)據(jù)庫,并對所述數(shù)據(jù)庫進(jìn)行寫操作。
[0064]以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【主權(quán)項】
1.一種應(yīng)用于出行的系統(tǒng),其特征在于,所述系統(tǒng)包括硬件層、接入服務(wù)層、應(yīng)用服務(wù)層和業(yè)務(wù)展現(xiàn)層,所述硬件層與所述接入服務(wù)層通訊, 所述硬件層包括交換設(shè)備、傳輸設(shè)備和動力設(shè)備; 所述接入服務(wù)層包括與硬件層通訊的適配器模塊、安全審計模塊、XML映射模塊、路由選擇模塊和異常監(jiān)視模塊; 所述應(yīng)用服務(wù)層包括基礎(chǔ)構(gòu)件層、驅(qū)動弓I擎層和服務(wù)層: 所述服務(wù)層包括日志服務(wù)、異常服務(wù)和消息服務(wù),所述服務(wù)層與所述接入服務(wù)層通訊, 所述基礎(chǔ)構(gòu)件層包括WEB框架構(gòu)件、表單構(gòu)件和組織權(quán)限構(gòu)件,所述基礎(chǔ)構(gòu)件層與所述業(yè)務(wù)展現(xiàn)層通訊, 所述驅(qū)動引擎層包括數(shù)據(jù)引擎和流程引擎,所述驅(qū)動引擎層與所述服務(wù)層和所述基礎(chǔ)構(gòu)件層通訊; 所述業(yè)務(wù)展現(xiàn)層包括通訊模塊、報文解析模塊、監(jiān)聽模塊、任務(wù)執(zhí)行模塊、服務(wù)啟動模塊和數(shù)據(jù)訪問模塊。2.根據(jù)權(quán)利要求1所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述通訊模塊用于和第三方數(shù)據(jù)源進(jìn)行通訊,并將獲取的數(shù)據(jù)傳輸至所述報文解析模塊,所述通訊模塊包括協(xié)議解包子模塊、協(xié)議封包子模塊和s e s s i on控制子模塊。3.根據(jù)權(quán)利要求1或2所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述報文解析模塊用于解析第三方數(shù)據(jù)源發(fā)送的報文,并將所述報文轉(zhuǎn)換成適用于所述系統(tǒng)的格式,所述報文解析模塊包括字符編碼子模塊、公交GPS報文子模塊、出租GPS子報文模塊和解析天氣子報文模塊。4.根據(jù)權(quán)利要求3所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述報文解析模塊包括7個單元,分別為將公交報文的字段類型抽象的公交報文抽象單元、公交報文javabean和出租報文javabean的屬性加載單元、將公交報文和出租報文轉(zhuǎn)換為javabean的報文轉(zhuǎn)換單元、報文解析單元、將報文中的類型轉(zhuǎn)換為相應(yīng)的字節(jié)長度的字節(jié)計算單元、編碼轉(zhuǎn)換單元和將出租報文抽象的出租報文抽象單元。5.根據(jù)權(quán)利要求1或2所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述監(jiān)聽模塊用于監(jiān)聽通訊端口,所述監(jiān)聽模塊包括公交GPS監(jiān)聽模塊、出租GPS監(jiān)聽模塊和客戶端請求監(jiān)聽模塊,所述公交GPS監(jiān)聽模塊和出租GPS監(jiān)聽模塊獲取所述報文解析模塊解析的數(shù)據(jù), 所述任務(wù)執(zhí)行模塊用于執(zhí)行調(diào)度任務(wù),包括基礎(chǔ)數(shù)據(jù)同步子模塊和內(nèi)存數(shù)據(jù)庫同步子豐旲塊: 所述基礎(chǔ)數(shù)據(jù)同步子模塊用于同步線路的基礎(chǔ)信息, 所述內(nèi)存數(shù)據(jù)庫同步子模塊用于同步gps信息、基礎(chǔ)信息和景點信息到內(nèi)存數(shù)據(jù)庫。6.根據(jù)權(quán)利要求1所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述數(shù)據(jù)訪問模塊用于訪問數(shù)據(jù)庫,獲取客運信息、路況信息和景點信息,所述數(shù)據(jù)庫包括oracle和mysql,所述數(shù)據(jù)訪問模塊對oracle和mysql進(jìn)行連接,所述oracle和mysql數(shù)據(jù)庫均進(jìn)行主從數(shù)據(jù)分離模式,并且oracle和mysql采用不同的主從數(shù)據(jù)分離子模式。7.根據(jù)權(quán)利要求1所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述服務(wù)啟動模塊用于啟動業(yè)務(wù)容器,并加載監(jiān)聽模塊和任務(wù)執(zhí)行模塊,所述啟動業(yè)務(wù)容器包括加載容器配置文件并啟動服務(wù)容器。8.根據(jù)權(quán)利要求6所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,所述主從數(shù)據(jù)分離模式中,oracle和mysql數(shù)據(jù)庫所在的主機進(jìn)行數(shù)據(jù)庫寫操作,oracle和mysql數(shù)據(jù)庫所在的從機進(jìn)行數(shù)據(jù)庫讀操作。9.根據(jù)權(quán)利要求6或8所述的一種應(yīng)用于出行的系統(tǒng),其特征在于,mysql主從分離子模式實現(xiàn)方法包括如下步驟: S1.配置主從服務(wù)器,所述主服務(wù)器啟用二進(jìn)制日志,所述主從服務(wù)器均使用相應(yīng)的IP值最后一段作為ID; S2.在主服務(wù)器上建立帳戶并授權(quán)從服務(wù)器對所述主服務(wù)器進(jìn)行讀操作; S3.重啟所述主從服務(wù)器,并查詢主服務(wù)器的狀態(tài),并保持所述主服務(wù)器狀態(tài)值不變; S4.配置從服務(wù)器,并啟動從服務(wù)器復(fù)制功能; S5.檢查從服務(wù)器復(fù)制功能狀態(tài),其中,Slave_1_Running與Slave_SQL_Running為yes; S6.在主服務(wù)器上建立數(shù)據(jù)庫,并對所述數(shù)據(jù)庫進(jìn)行寫操作。
【文檔編號】G06Q50/10GK105956944SQ201610262644
【公開日】2016年9月21日
【申請日】2016年4月26日
【發(fā)明人】陳浩, 張彬, 楊波, 於杰
【申請人】海南智城科技發(fā)展股份有限公司