肖健 侯建民
1)江西省地震局九江地震臺(tái),江西省九江市前進(jìn)西路1216號(hào) 332006
2)中國(guó)地震臺(tái)網(wǎng)中心,北京 100045
地震速報(bào)是地震臺(tái)網(wǎng)的核心功能。在震后第一時(shí)間發(fā)布震中、震級(jí)等地震參數(shù),對(duì)于政府和社會(huì)公眾判斷災(zāi)情、啟動(dòng)應(yīng)急處置、最大限度地減輕損失具有重要意義。中國(guó)地震臺(tái)網(wǎng)在經(jīng)歷了“九五”、“十五”大規(guī)模數(shù)字化改造以來(lái),地震速報(bào)工作有了長(zhǎng)足進(jìn)步,特別是自動(dòng)速報(bào)系統(tǒng)的研發(fā)成功,更是將速報(bào)時(shí)間縮短至2~3min。但長(zhǎng)久以來(lái),地震速報(bào)主要采用行業(yè)內(nèi)網(wǎng)站、手機(jī)短信等方式發(fā)布地震消息,結(jié)果是一方面行業(yè)網(wǎng)站的并發(fā)能力不夠,另一方面短信發(fā)送對(duì)象有限,使得震中及受地震波及地區(qū)的群眾獲取信息略顯滯后。隨著微博的出現(xiàn),信息傳輸速度加快,擴(kuò)張范圍變廣,信息傳播方式有了新的變化(陸豪放等,2014),因此利用微博發(fā)布并播報(bào)地震速報(bào)信息成為可能。
地震速報(bào)微博發(fā)布系統(tǒng)具備將EQIM中的自動(dòng)或人工定位結(jié)果自動(dòng)發(fā)布到中國(guó)地震臺(tái)網(wǎng)中心在新浪和騰訊開(kāi)設(shè)的官方微博上,同時(shí)可以根據(jù)設(shè)定參數(shù)自動(dòng)縮放比例繪制震中圖,群發(fā)微博私信,具手動(dòng)發(fā)送地震速報(bào)信息等功能,該系統(tǒng)穩(wěn)定、可靠、響應(yīng)時(shí)間短,經(jīng)過(guò)2年多在中國(guó)地震臺(tái)網(wǎng)中心的在線運(yùn)行,在朝鮮核爆、蘆山地震、魯?shù)榈卣鸬鹊卣鹗录乃賵?bào)工作中取得了較好的社會(huì)效益,提高了地震臺(tái)網(wǎng)的公共服務(wù)能力。
系統(tǒng)研發(fā)的目標(biāo)是實(shí)現(xiàn)地震速報(bào)信息的微博發(fā)布,為了覆蓋更多的人群,系統(tǒng)將信息發(fā)送到新浪和騰訊2家主流微博平臺(tái),所以在設(shè)計(jì)時(shí)就本著讀1次EQIM信息,發(fā)送給多個(gè)微博平臺(tái)的多線程、多隊(duì)列發(fā)送數(shù)據(jù)的思路,這樣設(shè)計(jì)的優(yōu)點(diǎn)是多個(gè)發(fā)送線程之間不受影響,某一微博平臺(tái)發(fā)送出現(xiàn)問(wèn)題時(shí)地震數(shù)據(jù)能夠保存在發(fā)送隊(duì)列里不丟失,保證了發(fā)送數(shù)據(jù)的完整性,考慮到EQIM中有不同臺(tái)網(wǎng)的速報(bào)信息,在讀取時(shí)還設(shè)計(jì)了按發(fā)送臺(tái)網(wǎng)代碼和震級(jí)進(jìn)行讀取過(guò)濾的問(wèn)題,同時(shí)還兼顧信息發(fā)送的時(shí)效性以及微博平臺(tái)對(duì)某固定IP地址的請(qǐng)求限制做出相應(yīng)處理。
系統(tǒng)結(jié)構(gòu)是基于Windows操作系統(tǒng)下的Microsoft NET Framework框架開(kāi)發(fā),開(kāi)發(fā)語(yǔ)言采用C#語(yǔ)言,使用新浪和騰訊微博的API發(fā)送接口,主要分為EQIM數(shù)據(jù)讀取模塊、發(fā)送隊(duì)列管理模塊、微博發(fā)布模塊、地圖下載模塊、配置模塊等。
在中國(guó)地震臺(tái)網(wǎng)中心官方微博中應(yīng)用時(shí)只發(fā)送CC(中國(guó)地震臺(tái)網(wǎng)中心速報(bào)結(jié)果)、CD(中國(guó)地震臺(tái)網(wǎng)中心復(fù)核結(jié)果)以及自動(dòng)速報(bào)EQIM中的AU(自動(dòng)速報(bào)綜合結(jié)果)中的地震信息(圖1)。
EQIM(地震臺(tái)網(wǎng)速報(bào)信息共享服務(wù)系統(tǒng)(楊陳等,2009))的地震速報(bào)數(shù)據(jù)讀取功能,采用NetSeis/IP協(xié)議(陳智勇等,2009)讀取流服務(wù)中的速報(bào)信息,數(shù)據(jù)讀取完成后寫入到新浪和騰訊的地震速報(bào)信息發(fā)送隊(duì)列,該模塊能自動(dòng)連接EQIM流服務(wù)器,定時(shí)檢測(cè)連接的可靠性,同時(shí)可按臺(tái)網(wǎng)代碼和震級(jí)進(jìn)行選擇性讀取。
新浪微博發(fā)送模塊和騰訊微博發(fā)送模塊為獨(dú)立線程運(yùn)行,分別讀取各自的待發(fā)送消息隊(duì)列,按照中國(guó)地震臺(tái)網(wǎng)中心對(duì)外地震速報(bào)的格式進(jìn)行數(shù)據(jù)拼裝,同時(shí)附上相應(yīng)的震中圖,并根據(jù)震中位置和震級(jí)大小利用AT相關(guān)賬號(hào)以便更好地進(jìn)行傳播,發(fā)送時(shí)能自適應(yīng)微博平臺(tái)對(duì)發(fā)送端IP訪問(wèn)次數(shù)的要求,同時(shí)也考慮時(shí)效性,可搶在第一時(shí)間發(fā)布,一般情況下當(dāng)EQIM中有新的地震速報(bào)信息時(shí),只需2~3s即可發(fā)布到指定的微博上。
地圖下載模塊根據(jù)震中經(jīng)緯度,選擇騰訊、谷歌以及百度在線地圖服務(wù)器進(jìn)行下載,震中圖上標(biāo)注中國(guó)地震臺(tái)網(wǎng)中心LOGO以保護(hù)相應(yīng)版權(quán),按照配置文件的參數(shù)選擇在線地圖服務(wù)器和縮放比例,一般國(guó)內(nèi)地震選擇騰訊或百度地圖,國(guó)外地震選擇谷歌或百度地圖,涉及到領(lǐng)土主權(quán)問(wèn)題的地震選擇騰訊和百度地圖,以相應(yīng)字符說(shuō)明地圖中的震中位置是人工或是自動(dòng)定位的結(jié)果,M代表是人工定位,A代表是自動(dòng)定位。
圖1 地震速報(bào)微博發(fā)布系統(tǒng)示意圖
隊(duì)列管理模塊首先建立新浪和騰訊微博的待發(fā)送隊(duì)列,當(dāng)有新的地震速報(bào)信息時(shí)由EQIM數(shù)據(jù)讀取模塊將其寫入相應(yīng)隊(duì)列,微博發(fā)送成功后會(huì)刪除在隊(duì)列中的某條數(shù)據(jù),當(dāng)微博接收端服務(wù)器無(wú)法及時(shí)接收時(shí)數(shù)據(jù)仍保留在隊(duì)列中,寫入隊(duì)列和刪除隊(duì)列中的數(shù)據(jù)時(shí)采用互斥操作,保證了數(shù)據(jù)的安全性和完整性。
地震速報(bào)微博發(fā)布系統(tǒng)在國(guó)家地震臺(tái)網(wǎng)的官方微博上運(yùn)行了近3年時(shí)間,發(fā)送的微博界面如圖2所示。
圖2 微博界面
通過(guò)對(duì)2012年6月9日~2014年10月23日所發(fā)布的地震速報(bào)微博的統(tǒng)計(jì),該系統(tǒng)在國(guó)家地震臺(tái)網(wǎng)官方微博上共發(fā)布1786次全國(guó)范圍內(nèi)的地震信息,經(jīng)歷了蘆山地震和魯?shù)榈卣鸬母哳l度微博發(fā)送的考驗(yàn),系統(tǒng)運(yùn)行穩(wěn)定、發(fā)送及時(shí),提高了中國(guó)地震臺(tái)網(wǎng)中心向社會(huì)提供服務(wù)的能力,取得了較好的社會(huì)效益(王炎龍,2013;孫榮欣等,2014)。