java實(shí)現(xiàn)注冊集成調(diào)用手機(jī)短信驗(yàn)證碼平臺網(wǎng)關(guān)通道接口并發(fā)支撐平臺的構(gòu)建
來源:原創(chuàng) 時(shí)間:2018-03-01 瀏覽:0 次 java實(shí)現(xiàn)注冊集成調(diào)用手機(jī)短信驗(yàn)證碼平臺網(wǎng)關(guān)通道接口并發(fā)支撐平臺的構(gòu)建通過對企業(yè)各種應(yīng)用需求的提取和對操作員接口協(xié)議的分析,抽象出了網(wǎng)關(guān)支持平臺對并行短消息的改進(jìn)需求,通過改進(jìn)的設(shè)計(jì)方案實(shí)現(xiàn)了該平臺的改進(jìn),提高了系統(tǒng)中短消息的并發(fā)處理能力。同時(shí),它為企業(yè)內(nèi)部的產(chǎn)品提供了良好的接口,統(tǒng)一了發(fā)送和接收短消息的日志記錄,使系統(tǒng)易于維護(hù)和擴(kuò)展??梢赃M(jìn)一步提高系統(tǒng)處理并發(fā)短消息的能力和滿足企業(yè)不斷變化的需求的系統(tǒng)也可以用于移動和聯(lián)通。本文針對小靈通等幾家移動通信運(yùn)營商的短消息網(wǎng)關(guān)的處理,采用Java語言實(shí)現(xiàn)了注冊集成調(diào)用手機(jī)短信驗(yàn)證碼平臺接口的并發(fā)處理。
選擇聯(lián)通的短消息仿真網(wǎng)關(guān)作為測試網(wǎng)關(guān),通過仿真網(wǎng)關(guān)相互通信。仿真網(wǎng)關(guān)模擬大量的請求,通過測試結(jié)果相關(guān)數(shù)據(jù)對系統(tǒng)進(jìn)行壓力測試,分析系統(tǒng)性能,提高系統(tǒng)的性能,該系統(tǒng)的原理是通過縮短對操作者的響應(yīng)時(shí)間,增加并發(fā)響應(yīng)的次數(shù),達(dá)到提高并發(fā)響應(yīng)效率的目的。當(dāng)生成M0并發(fā)送短消息時(shí),通過多線程將短消息存儲在文件緩沖區(qū)中。
系統(tǒng)中的異步處理方法使用方便,不僅提高了外部響應(yīng)的速度,而且保證了數(shù)據(jù)的可靠性,減輕了并發(fā)處理的壓力。本文介紹了排隊(duì)論模型。為了提高系統(tǒng)的效率,采用排隊(duì)論模型計(jì)算了最優(yōu)并發(fā)處理窗口。
在企業(yè)內(nèi)部,在多個(gè)產(chǎn)品中調(diào)用SMS收發(fā)器功能的普遍做法是在每個(gè)產(chǎn)品中直接實(shí)現(xiàn)呼叫移動運(yùn)營商的收發(fā)器接口。每個(gè)產(chǎn)品都必須維護(hù)這些接口,當(dāng)接口版本穩(wěn)定時(shí),維護(hù)人員可以正常地處理它,但是如果為多個(gè)操作員選擇多個(gè)產(chǎn)品,并針對不同版本的接口進(jìn)行升級和維護(hù),這種方法將給企業(yè)帶來很大的維護(hù)問題。各種產(chǎn)品的設(shè)計(jì)者必須把他們的主要精力放在產(chǎn)品的設(shè)計(jì)上,并使用第三方的界面,使他們更容易使用該界面。不需要知道實(shí)現(xiàn)的細(xì)節(jié)。對于提供接口的維護(hù)人員來說,他們不想深入了解不同的產(chǎn)品。
對特定產(chǎn)品的新理解將增加接口維護(hù)人員的負(fù)擔(dān)。接口維護(hù)人員希望接口統(tǒng)一。在升級和維護(hù)操作界面時(shí),可以獨(dú)立維護(hù)。同時(shí),統(tǒng)一接口調(diào)用可以對收發(fā)機(jī)的總數(shù)據(jù)進(jìn)行監(jiān)控和統(tǒng)計(jì),通過數(shù)據(jù)分析和數(shù)據(jù)挖掘,有利于短信收發(fā)器接口的統(tǒng)一管理。
通過集中每個(gè)產(chǎn)品的呼叫壓力,這種處理方法導(dǎo)致了短消息的并發(fā)處理需求。本文設(shè)計(jì)了短信收發(fā)的統(tǒng)一接口,作為短信收發(fā)網(wǎng)關(guān)的支撐平臺。其主要功能是分發(fā)和處理大量并發(fā)發(fā)送和接收短信。通過對原有短信網(wǎng)關(guān)接口的設(shè)計(jì),對統(tǒng)一接口管理具有重要意義。
對于內(nèi)部產(chǎn)品,所有產(chǎn)品只需要一個(gè)接口來指示產(chǎn)品類型。發(fā)送內(nèi)容、發(fā)送對象、接收對象、發(fā)送時(shí)間等接口不需要管理具體的代碼細(xì)節(jié),從而大大提高了各部門產(chǎn)品的自由度,降低了實(shí)現(xiàn)的難度。對于短信網(wǎng)關(guān)的技術(shù)人員來說,在維護(hù)代碼時(shí),不需要深入了解每種產(chǎn)品的細(xì)節(jié),直接維護(hù)一套系統(tǒng),但可以對系統(tǒng)進(jìn)行細(xì)化和開發(fā),以提高整個(gè)網(wǎng)關(guān)系統(tǒng)的專業(yè)性。對于產(chǎn)品和運(yùn)營商,具體實(shí)現(xiàn)是透明的,只有相互通信的公共接口,易于安全控制和管理,也符合軟件工程和短信網(wǎng)關(guān)支持平臺建設(shè)的設(shè)計(jì)原則,實(shí)現(xiàn)了大量的短消息并發(fā)發(fā)送和接收功能,提供了內(nèi)部統(tǒng)一的接口,具有較強(qiáng)的可擴(kuò)展性,可以提高企業(yè)的工作效率。
隨著短消息業(yè)務(wù)市場的快速發(fā)展,短消息網(wǎng)關(guān)系統(tǒng)的技術(shù)現(xiàn)狀,以其高性能、高可靠性的特點(diǎn),對具有統(tǒng)一接口的短信網(wǎng)關(guān)系統(tǒng)的研究與設(shè)計(jì)越來越受到計(jì)算機(jī)業(yè)界和學(xué)術(shù)界的關(guān)注。短信網(wǎng)關(guān)的基本實(shí)現(xiàn)技術(shù)一直是人們討論的熱點(diǎn),例如,一些學(xué)者在相關(guān)文獻(xiàn)23中闡述了如何利用短信收發(fā)、存儲轉(zhuǎn)發(fā)等基本技術(shù)來構(gòu)建短信網(wǎng)關(guān)系統(tǒng),如何統(tǒng)一多個(gè)運(yùn)營商的接口。為了實(shí)現(xiàn)短消息網(wǎng)關(guān)的通用接口問題,學(xué)者們提出了幾種不同的技術(shù)思路:以大連理工大學(xué)為對象,設(shè)計(jì)了短消息網(wǎng)關(guān)的多協(xié)議轉(zhuǎn)換模塊。該模塊為所有第三方軟件開發(fā)人員提供統(tǒng)一的協(xié)議接口,使各平臺的復(fù)雜底層運(yùn)行機(jī)制對第三方軟件開發(fā)人員透明,降低了第三方軟件開發(fā)人員的開發(fā)難度。
LAN Lan引入了基于XML的封裝技術(shù),實(shí)現(xiàn)了內(nèi)部接口的統(tǒng)一封裝。它提供了一種描述短消息結(jié)構(gòu)的標(biāo)準(zhǔn)化方法。用戶可以根據(jù)實(shí)際需求定義相應(yīng)的規(guī)范。為了實(shí)現(xiàn)接口的集成,北京郵電大學(xué)的王昕提出了集成協(xié)議棧的概念,并實(shí)現(xiàn)了即使不同運(yùn)營商使用不同的專有短消息通信協(xié)議,也可以使用SMPP協(xié)議在短消息網(wǎng)關(guān)與短消息服務(wù)中心之間進(jìn)行通信,從而使網(wǎng)關(guān)實(shí)現(xiàn)企業(yè)內(nèi)部產(chǎn)品的通信協(xié)議。
產(chǎn)品通過內(nèi)部網(wǎng)關(guān)進(jìn)行加工。為了適應(yīng)如何提高不同外部運(yùn)營商之間并行消息處理的性能問題,不同的企業(yè)在行業(yè)中往往采用不同的技術(shù)。而技術(shù)實(shí)現(xiàn)的細(xì)節(jié)往往是保密的。然而,由于學(xué)術(shù)界對基本技術(shù)理論或仿真實(shí)驗(yàn)的研究相對困難,2004謝長生和蘭蘭在短消息網(wǎng)關(guān)通信模塊的設(shè)計(jì)與實(shí)現(xiàn)中采用了復(fù)用I/O通信技術(shù)7,這也涉及到消息隊(duì)列的處理性能。
蔡臨峰在一篇文章中以消息隊(duì)列為主體,將其應(yīng)用于短信網(wǎng)關(guān)。然而,消息隊(duì)列的處理是基于第三方公司制作的程序模塊。王昕提出了一種基于優(yōu)先級的消息調(diào)度設(shè)計(jì)方法,使得低優(yōu)先級的消息能夠在后臺發(fā)送,從而提高了短消息網(wǎng)關(guān)的吞吐量。
本論文的目的是探索基于中小企業(yè)短信網(wǎng)關(guān)實(shí)際需求的統(tǒng)一接口設(shè)計(jì),以建立多運(yùn)營商、多產(chǎn)品、高性能、高可靠性短信網(wǎng)關(guān)的支撐平臺。本文提出的并行短信網(wǎng)關(guān)支撐平臺通過區(qū)分產(chǎn)品發(fā)送的目標(biāo)電話號碼,將其分布到不同運(yùn)營商的目標(biāo)網(wǎng)關(guān)上。對于內(nèi)部產(chǎn)品,它更簡潔,不需要重新定義協(xié)議棧。只要短信正常發(fā)送和發(fā)送,就不必再制定內(nèi)部協(xié)議,短信網(wǎng)關(guān)支持平臺根據(jù)發(fā)送的手機(jī)號動態(tài)區(qū)分不同運(yùn)營商的短信網(wǎng)關(guān),方便分發(fā)和處理。易于維護(hù),并發(fā)送短消息網(wǎng)關(guān)支持平臺內(nèi)部實(shí)現(xiàn)結(jié)構(gòu),企業(yè)內(nèi)部的產(chǎn)品不需要明白,僅僅調(diào)用一個(gè)接口的可靠性、使用方便的短信網(wǎng)關(guān)主要是指在企業(yè)應(yīng)用服務(wù)器和服務(wù)器之間的交流的過程中,要保證短消息延遲通信。
服務(wù)器擁塞或連接故障不能丟失或餓死等。本文主要采用文件緩沖技術(shù)來處理短信網(wǎng)關(guān)支持的平臺的性能。是本分析設(shè)計(jì)的核心。由于目前短信網(wǎng)關(guān)市場的客戶數(shù)量眾多,小企業(yè)的表現(xiàn)追求時(shí)間,因此,本文的目的是應(yīng)用低成本技術(shù)實(shí)現(xiàn)更高的性能。
本文的主要技術(shù)特點(diǎn)如下:首先,通過時(shí)間空間概念引入排隊(duì)論模型。對并發(fā)短消息進(jìn)行多線程處理。運(yùn)用排隊(duì)論模型對排隊(duì)現(xiàn)象進(jìn)行科學(xué)優(yōu)化,以最低成本獲得最優(yōu)效益。從排隊(duì)論模型計(jì)算的數(shù)據(jù),建立合理、有效的網(wǎng)關(guān)處理,獲得最低的系統(tǒng)成本最大的處理效率;其次,采用在內(nèi)存地址索引技術(shù),在內(nèi)存中的哈希表結(jié)構(gòu)來提供快速尋址服務(wù)為每個(gè)傳入的消息。
最后,提出了一種完善的差錯(cuò)處理機(jī)制,以減少單個(gè)運(yùn)營商服務(wù)器癱瘓對SMS網(wǎng)關(guān)吞吐量的影響。第一章介紹了短消息的應(yīng)用、短消息網(wǎng)關(guān)的研究現(xiàn)狀和本文的研究主題。第2章主要介紹短消息網(wǎng)關(guān)的系統(tǒng)組成。企業(yè)網(wǎng)關(guān)和運(yùn)營商網(wǎng)關(guān)的通信協(xié)議和接口規(guī)范是開發(fā)和發(fā)送短消息網(wǎng)關(guān)支撐平臺的基礎(chǔ)知識。
重點(diǎn)介紹了并行短消息網(wǎng)關(guān)支撐平臺的設(shè)計(jì)與實(shí)現(xiàn),并介紹了各個(gè)模塊的設(shè)計(jì)。第第四章討論了排隊(duì)論在系統(tǒng)中的作用、模塊的實(shí)現(xiàn)等,設(shè)計(jì)了測試用例,測試了并行短信網(wǎng)關(guān)支撐平臺的處理效果。第第五章簡要介紹了多服務(wù)器的發(fā)展。本文中描述的系統(tǒng)是單個(gè)服務(wù)器版本,如果系統(tǒng)處理并發(fā)性的壓力過大,請考慮添加服務(wù)器來處理它。