两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

即時(shí)信息傳送方法、系統(tǒng)、接入服務(wù)器和客戶端的制作方法

文檔序號(hào):8000013閱讀:149來(lái)源:國(guó)知局
即時(shí)信息傳送方法、系統(tǒng)、接入服務(wù)器和客戶端的制作方法
【專利摘要】本發(fā)明公開了一種即時(shí)信息傳送方法、系統(tǒng)、接入服務(wù)器和客戶端,涉及即時(shí)通信領(lǐng)域。本發(fā)明通過(guò)客戶端對(duì)XML格式的XMPP報(bào)文擴(kuò)展生成二進(jìn)制路由片段,組裝成包含二進(jìn)制路由片段和XMPP報(bào)文的雙模報(bào)文,使服務(wù)端的接入服務(wù)器不需要經(jīng)過(guò)復(fù)雜的XML解析,直接通過(guò)二進(jìn)制路由片段可就以獲取路由信息,然后從雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文,最后根據(jù)路由信息轉(zhuǎn)發(fā)XMPP報(bào)文完成即時(shí)信息傳送過(guò)程,提高了服務(wù)端報(bào)文路由性能,有效緩解了服務(wù)端在業(yè)務(wù)高峰時(shí)的負(fù)荷。
【專利說(shuō)明】即時(shí)信息傳送方法、系統(tǒng)、接入服務(wù)器和客戶端

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及即時(shí)通信領(lǐng)域,特別涉及一種即時(shí)信息傳送方法、系統(tǒng)、接入服務(wù)器和客戶端。

【背景技術(shù)】
[0002]在即時(shí)通信領(lǐng)域,客戶端與服務(wù)器之間的通信協(xié)議分為文本行、XML (ExtensibleMarkup Language ,可擴(kuò)展標(biāo)記語(yǔ)言)流和二進(jìn)制流三種形式?;赬ML流的XMPP(Extensible Messaging and Presence Protocol,可擴(kuò)展消息出席協(xié)議)協(xié)議在開源社區(qū)和標(biāo)準(zhǔn)化組織的推進(jìn)下影響力越來(lái)越廣泛,出現(xiàn)了大量的開源XMPP服務(wù)器、客戶端和協(xié)議庫(kù)。在這些優(yōu)秀的開源實(shí)現(xiàn)上進(jìn)行二次開發(fā),以滿足企業(yè)級(jí)應(yīng)用、甚至互聯(lián)網(wǎng)級(jí)的海量在線應(yīng)用成為很多廠商技術(shù)路線上的選擇。然而隨著在線用戶數(shù)的提升,現(xiàn)有的XMPP開源實(shí)現(xiàn)逐漸暴露出一些嚴(yán)重問(wèn)題。
[0003]在大型XMPP系統(tǒng)中,接入服務(wù)器的一側(cè)與大量客戶端相連,另一側(cè)與多個(gè)業(yè)務(wù)處理服務(wù)器相連;在上行方向上負(fù)責(zé)把客戶端發(fā)過(guò)來(lái)的XMPP報(bào)文,根據(jù)特定的路由規(guī)則,選擇合適的業(yè)務(wù)處理服務(wù)器轉(zhuǎn)發(fā)過(guò)去;在下行方向上邏輯相對(duì)簡(jiǎn)單,把業(yè)務(wù)處理服務(wù)器響應(yīng)的報(bào)文根據(jù)目的地址找到相應(yīng)客戶端發(fā)送下去。
[0004]在海量在線場(chǎng)景中,暴露在最前端的接入服務(wù)器在業(yè)務(wù)高峰時(shí)段壓力非常大,其中相當(dāng)一部分壓力出現(xiàn)在對(duì)XML格式的XMPP報(bào)文進(jìn)行D0M(Document Object Model,文件對(duì)象模型)解析上,尤其當(dāng)XMPP報(bào)文體積比較大時(shí)解析負(fù)荷更大。然而只有把XMPP報(bào)文解析后,接入服務(wù)器才能根據(jù)報(bào)文類型、報(bào)文目的地等影響路由的信息,把報(bào)文分發(fā)到后面數(shù)量龐大的業(yè)務(wù)處理服務(wù)器集群上。
[0005]由此可見,接入服務(wù)器的處理資源主要消耗在XMPP報(bào)文的解析上,業(yè)務(wù)高峰時(shí)對(duì)接入服務(wù)器形成巨大負(fù)荷,因此,有必要提出一種即時(shí)信息傳送方案來(lái)解決目前服務(wù)端報(bào)文路由性能較差的問(wèn)題。


【發(fā)明內(nèi)容】

[0006]本發(fā)明實(shí)施例所要解決的一個(gè)技術(shù)問(wèn)題是:解決由于XML解析效率低所造成的服務(wù)端報(bào)文路由性能較差的問(wèn)題。
[0007]根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提出一種即時(shí)信息傳送方法,包括:接收客戶端發(fā)送的雙模報(bào)文,該雙模報(bào)文由二進(jìn)制路由片段和可擴(kuò)展消息出席協(xié)議XMPP報(bào)文組成;從該雙模報(bào)文的二進(jìn)制路由片段中提取路由信息;從該雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文;根據(jù)該路由信息將XMPP報(bào)文轉(zhuǎn)發(fā)給相應(yīng)的業(yè)務(wù)處理服務(wù)器。
[0008]根據(jù)本發(fā)明實(shí)施例的另一方面,提出一種即時(shí)信息傳送方法,包括:根據(jù)獲取的雙模報(bào)文模板生成二進(jìn)制路由片段;將二進(jìn)制路由片段添加到可擴(kuò)展消息出席協(xié)議XMPP報(bào)文之前組裝得到雙模報(bào)文;向接入服務(wù)器發(fā)送該雙模報(bào)文,以便接入服務(wù)器根據(jù)該雙模報(bào)文中的二進(jìn)制路由片段轉(zhuǎn)發(fā)XMPP報(bào)文。
[0009]根據(jù)本發(fā)明實(shí)施例的再一方面,提出一種接入服務(wù)器,包括:報(bào)文通信模塊,用于接收客戶端發(fā)送的雙模報(bào)文,該雙模報(bào)文由二進(jìn)制路由片段和可擴(kuò)展消息出席協(xié)議XMPP報(bào)文組成;報(bào)文解析模塊,用于從該雙模報(bào)文的二進(jìn)制路由片段中提取路由信息;從該雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文;路由模塊,用于根據(jù)該路由信息將XMPP報(bào)文轉(zhuǎn)發(fā)給相應(yīng)的業(yè)務(wù)處理服務(wù)器。
[0010]根據(jù)本發(fā)明實(shí)施例的又一方面,提出一種客戶端,包括:報(bào)文組裝模塊,用于根據(jù)獲取的雙模報(bào)文模板生成二進(jìn)制路由片段;將二進(jìn)制路由片段添加到可擴(kuò)展消息出席協(xié)議XMPP報(bào)文之前組裝得到雙模報(bào)文;報(bào)文通信模塊,用于向接入服務(wù)器發(fā)送該雙模報(bào)文,以便接入服務(wù)器根據(jù)該雙模報(bào)文中的二進(jìn)制路由片段轉(zhuǎn)發(fā)XMPP報(bào)文。
[0011]根據(jù)本發(fā)明實(shí)施例的又一方面,提出一種即時(shí)信息傳送系統(tǒng),包括前述的接入服務(wù)器和客戶端。
[0012]本發(fā)明通過(guò)客戶端對(duì)XML格式的XMPP報(bào)文擴(kuò)展生成二進(jìn)制路由片段,組裝成包含二進(jìn)制路由片段和XMPP報(bào)文的雙模報(bào)文,使服務(wù)端的接入服務(wù)器不需要經(jīng)過(guò)復(fù)雜的XML解析,直接通過(guò)二進(jìn)制路由片段可就以獲取路由信息,然后從雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文,最后根據(jù)路由信息轉(zhuǎn)發(fā)XMPP報(bào)文完成即時(shí)信息傳送過(guò)程,提高了服務(wù)端報(bào)文路由性能,有效緩解了服務(wù)端在業(yè)務(wù)高峰時(shí)的負(fù)荷。
[0013]通過(guò)以下參照附圖對(duì)本發(fā)明的示例性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征及其優(yōu)點(diǎn)將會(huì)變得清楚。

【專利附圖】

【附圖說(shuō)明】
[0014]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0015]圖1為本發(fā)明即時(shí)信息傳送系統(tǒng)一個(gè)實(shí)施例的示意圖。
[0016]圖2為本發(fā)明雙模報(bào)文一個(gè)不例的不意圖。
[0017]圖3為本發(fā)明即時(shí)信息傳送方法一個(gè)實(shí)施例的流程示意圖。
[0018]圖4為本發(fā)明即時(shí)信息傳送系統(tǒng)另一個(gè)實(shí)施例的示意圖。

【具體實(shí)施方式】
[0019]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說(shuō)明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0020]圖1為本發(fā)明即時(shí)信息傳送系統(tǒng)一個(gè)實(shí)施例的示意圖。
[0021]如圖1所示,即時(shí)信息傳送系統(tǒng)包括客戶端101和接入服務(wù)器102,還可以包括各種業(yè)務(wù)處理服務(wù)器,如管理服務(wù)器,群組服務(wù)器、狀態(tài)服務(wù)器、消息服務(wù)器等。在大型XMPP系統(tǒng)中,接入服務(wù)器102的一側(cè)與大量客戶端101相連,另一側(cè)與多個(gè)業(yè)務(wù)處理服務(wù)器相連。接入服務(wù)器102可以將來(lái)自客戶端的XMPP報(bào)文進(jìn)行域內(nèi)路由或跨域路由,如果接入服務(wù)器102與目的地的業(yè)務(wù)處理服務(wù)器屬于同一域,則對(duì)XMPP報(bào)文進(jìn)行域內(nèi)路由,如果接入服務(wù)器102與目的地的業(yè)務(wù)處理服務(wù)器不屬于同一域,則對(duì)XMPP報(bào)文進(jìn)行跨域路由。
[0022]為了解決由于XML解析效率低所造成的服務(wù)端報(bào)文路由性能較差的問(wèn)題,本發(fā)明提出一種雙模報(bào)文傳送方案,即通過(guò)客戶端對(duì)XML格式的XMPP報(bào)文擴(kuò)展生成二進(jìn)制路由片段,組裝成包含二進(jìn)制路由片段和XMPP報(bào)文的雙模報(bào)文,使服務(wù)端的接入服務(wù)器不需要經(jīng)過(guò)復(fù)雜的XML解析,直接通過(guò)二進(jìn)制路由片段可就以獲取路由信息,然后從雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文,最后根據(jù)路由信息轉(zhuǎn)發(fā)XMPP報(bào)文完成即時(shí)信息傳送過(guò)程,提高了服務(wù)端報(bào)文路由性能,有效緩解了服務(wù)端在業(yè)務(wù)高峰時(shí)的負(fù)荷。下面詳細(xì)描述本發(fā)明提出的即時(shí)信息傳送方法。
[0023]本發(fā)明提出的即時(shí)信息傳送方法包括:雙模報(bào)文模板協(xié)商過(guò)程、雙模報(bào)文組裝發(fā)送過(guò)程、雙模報(bào)文解析路由過(guò)程。下面分別說(shuō)明每一個(gè)過(guò)程。
[0024]雙模報(bào)文模板協(xié)商過(guò)程
[0025]在雙模報(bào)文模板協(xié)商過(guò)程中,當(dāng)客戶端與接入服務(wù)器建立TCP連接時(shí),客戶端可以通過(guò)XMPP協(xié)議的IQ報(bào)文發(fā)送雙模報(bào)文模板的查詢請(qǐng)求,該查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,預(yù)設(shè)關(guān)鍵字表示查詢雙模報(bào)文模板,預(yù)設(shè)關(guān)鍵字可以靈活設(shè)置,例如jabber:1q:dualmodemsg。接入服務(wù)器接收客戶端發(fā)送的查詢請(qǐng)求,對(duì)該查詢請(qǐng)求進(jìn)行文本掃描,如果掃描發(fā)現(xiàn)查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,則向客戶端返回雙模報(bào)文模板,以便客戶端根據(jù)雙模報(bào)文模板組裝雙模報(bào)文。
[0026]上述雙模報(bào)文模板協(xié)商機(jī)制可以滿足服務(wù)端由于業(yè)務(wù)邏輯或部署環(huán)境變化等對(duì)所需提取的路由字段的動(dòng)態(tài)要求,可以更好地適應(yīng)即時(shí)通信服務(wù)端架構(gòu)的SOA(service-oriented architecture,面向服務(wù)的體系結(jié)構(gòu))演化以及路由規(guī)則原來(lái)越復(fù)雜,所需的路由信息項(xiàng)越來(lái)越多等情況。
[0027]下面是一個(gè)模板查詢請(qǐng)求的示例。
[0028]
<iq toy’connect1nscrv'cr^chinatelccom.com/dualmodcmsg,,t》pe=”get”> /7通過(guò)丨Q報(bào)文發(fā)送的查詢請(qǐng)求
〈query xmlns=,,jabber:1q:dualmodemsg,,/> //預(yù)設(shè)關(guān)鍵字
<7iq>
[0029]MT莫報(bào)文模板中的路由元素包括雙模元素(dualmode)和包元素(packet),雙模元素是固定節(jié)點(diǎn),在所有的雙模報(bào)文都出現(xiàn),包元素是可變節(jié)點(diǎn),僅在指定報(bào)文中才出現(xiàn),例如,presence報(bào)文有優(yōu)先級(jí)元素,而只有IQ報(bào)文中才出現(xiàn)命名空間元素。雙模元素包括魔數(shù)標(biāo)記(magicnumber)和版本屬性(vers1n),雙模元素下的子元素包括報(bào)文源地址(from)、報(bào)文目的地址(to)、報(bào)文類型(type)、報(bào)文標(biāo)識(shí)(id)。包元素的類型屬性指定了報(bào)文類型、其子元素(item)指出所需的可變?cè)?,每一個(gè)子元素的次序?qū)傩?seq)指定該子元素在序列化后的二進(jìn)制路由片段中出現(xiàn)的次序。
[0030]下面是一個(gè)雙模報(bào)文模板的不例。
[0031]

【權(quán)利要求】
1.一種即時(shí)信息傳送方法,包括: 接收客戶端發(fā)送的雙模報(bào)文,該雙模報(bào)文由二進(jìn)制路由片段和可擴(kuò)展消息出席協(xié)議XMPP報(bào)文組成; 從該雙模報(bào)文的二進(jìn)制路由片段中提取路由信息; 從該雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文; 根據(jù)該路由信息將XMPP報(bào)文轉(zhuǎn)發(fā)給相應(yīng)的業(yè)務(wù)處理服務(wù)器。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在接收客戶端發(fā)送的雙模報(bào)文之前,該方法還包括: 接收客戶端發(fā)送的查詢請(qǐng)求,該查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,該預(yù)設(shè)關(guān)鍵字表示查詢雙模報(bào)文模板; 對(duì)該查詢請(qǐng)求進(jìn)行文本掃描,如果掃描發(fā)現(xiàn)查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,則向客戶端返回雙模報(bào)文模板,以便客戶端根據(jù)雙模報(bào)文模板組裝雙模報(bào)文。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,雙模報(bào)文模板中的路由元素包括雙模元素和包元素,雙模元素包括魔數(shù)標(biāo)記和版本屬性,雙模元素下的子元素包括報(bào)文源地址、報(bào)文目的地址、報(bào)文類型、報(bào)文標(biāo)識(shí),每一個(gè)子元素的次序?qū)傩灾付ㄔ撟釉爻霈F(xiàn)的次序,包元素的類型屬性指定了報(bào)文類型、其子元素指出所需的可變?cè)兀恳粋€(gè)子元素的次序?qū)傩灾付ㄔ撟釉爻霈F(xiàn)的次序。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述接收客戶端發(fā)送的雙模報(bào)文包括: 接收客戶端發(fā)送的報(bào)文,如果在該報(bào)文的預(yù)設(shè)位置讀取到魔數(shù)標(biāo)記,則確定接收到的報(bào)文是雙模報(bào)文。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從該雙模報(bào)文的二進(jìn)制路由片段中提取路由信息包括: 從二進(jìn)制路由片段的首部提取路由元素的位置信息,根據(jù)路由元素的位置信息從二進(jìn)制路由片段的主體提取路由元素的取值。
6.—種即時(shí)信息傳送方法,包括: 根據(jù)獲取的雙模報(bào)文模板生成二進(jìn)制路由片段; 將二進(jìn)制路由片段添加到可擴(kuò)展消息出席協(xié)議XMPP報(bào)文之前組裝得到雙模報(bào)文; 向接入服務(wù)器發(fā)送該雙模報(bào)文,以便接入服務(wù)器根據(jù)該雙模報(bào)文中的二進(jìn)制路由片段轉(zhuǎn)發(fā)XMPP報(bào)文。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述根據(jù)獲取的雙模報(bào)文模板生成二進(jìn)制路由片段包括: 根據(jù)報(bào)文類型從雙模報(bào)文模板中提取路由元素和屬性值,根據(jù)路由元素及其屬性值生成二進(jìn)制路由片段的首部和主體,二進(jìn)制路由片段的首部用于存儲(chǔ)路由元素的位置信息,二進(jìn)制路由片段的主體用于存儲(chǔ)路由元素的取值。
8.一種接入服務(wù)器,包括: 報(bào)文通信模塊,用于接收客戶端發(fā)送的雙模報(bào)文,該雙模報(bào)文由二進(jìn)制路由片段和可擴(kuò)展消息出席協(xié)議XMPP報(bào)文組成; 報(bào)文解析模塊,用于從該雙模報(bào)文的二進(jìn)制路由片段中提取路由信息;從該雙模報(bào)文中剝離掉二進(jìn)制路由片段得到XMPP報(bào)文; 路由模塊,用于根據(jù)該路由信息將XMPP報(bào)文轉(zhuǎn)發(fā)給相應(yīng)的業(yè)務(wù)處理服務(wù)器。
9.根據(jù)權(quán)利要求8所述的接入服務(wù)器,其特征在于,該接入服務(wù)器還包括: 模板協(xié)商模塊,用于在接收客戶端發(fā)送的雙模報(bào)文之前,接收客戶端發(fā)送的查詢請(qǐng)求,該查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,該預(yù)設(shè)關(guān)鍵字表示查詢雙模報(bào)文模板;對(duì)該查詢請(qǐng)求進(jìn)行文本掃描,如果掃描發(fā)現(xiàn)查詢請(qǐng)求包括預(yù)設(shè)關(guān)鍵字,則向客戶端返回雙模報(bào)文模板,以便客戶端根據(jù)雙模報(bào)文模板組裝雙模報(bào)文。
10.根據(jù)權(quán)利要求9所述的接入服務(wù)器,其特征在于,雙模報(bào)文模板中的路由元素包括雙模元素和包元素,雙模元素包括魔數(shù)標(biāo)記和版本屬性,雙模元素下的子元素包括報(bào)文源地址、報(bào)文目的地址、報(bào)文類型、報(bào)文標(biāo)識(shí),每一個(gè)子元素的次序?qū)傩灾付ㄔ撟釉爻霈F(xiàn)的次序,包元素的類型屬性指定了報(bào)文類型、其子元素指出所需的可變?cè)?,每一個(gè)子元素的次序?qū)傩灾付ㄔ撟釉爻霈F(xiàn)的次序。
11.根據(jù)權(quán)利要求8所述的接入服務(wù)器,其特征在于,所述報(bào)文通信模塊具體用于接收客戶端發(fā)送的報(bào)文,如果在該報(bào)文的預(yù)設(shè)位置讀取到魔數(shù)標(biāo)記,則確定接收到的報(bào)文是雙模報(bào)文。
12.根據(jù)權(quán)利要求8所述的接入服務(wù)器,其特征在于,所述報(bào)文解析模塊在提取路由信息時(shí)具體用于:從二進(jìn)制路由片段的首部提取路由元素的位置信息,根據(jù)路由元素的位置信息從二進(jìn)制路由片段的主體提取路由元素的取值。
13.—種客戶端,包括: 報(bào)文組裝模塊,用于根據(jù)獲取的雙模報(bào)文模板生成二進(jìn)制路由片段;將二進(jìn)制路由片段添加到可擴(kuò)展消息出席協(xié)議XMPP報(bào)文之前組裝得到雙模報(bào)文; 報(bào)文通信模塊,用于向接入服務(wù)器發(fā)送該雙模報(bào)文,以便接入服務(wù)器根據(jù)該雙模報(bào)文中的二進(jìn)制路由片段轉(zhuǎn)發(fā)XMPP報(bào)文。
14.根據(jù)權(quán)利要求13所述的客戶端,其特征在于,所述報(bào)文組裝模塊在生成二進(jìn)制路由片段時(shí)具體用于: 根據(jù)報(bào)文類型從雙模報(bào)文模板中提取路由元素和屬性值,根據(jù)路由元素及其屬性值生成二進(jìn)制路由片段的首部和主體,二進(jìn)制路由片段的首部用于存儲(chǔ)路由元素的位置信息,二進(jìn)制路由片段的主體用于存儲(chǔ)路由元素的取值。
15.一種即時(shí)信息傳送系統(tǒng),包括權(quán)利要求8-12任一項(xiàng)所述的接入服務(wù)器和權(quán)利要求13或14所述的客戶端。
【文檔編號(hào)】H04L12/58GK104184651SQ201310201323
【公開日】2014年12月3日 申請(qǐng)日期:2013年5月28日 優(yōu)先權(quán)日:2013年5月28日
【發(fā)明者】趙繼壯 申請(qǐng)人:中國(guó)電信股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
叙永县| 南和县| 凭祥市| 富宁县| 郓城县| 张家界市| 铁岭市| 长沙市| 塔河县| 沭阳县| 武汉市| 阜城县| 武安市| 电白县| 洛川县| 承德县| 长武县| 班玛县| 上高县| 景洪市| 九寨沟县| 七台河市| 南宫市| 洱源县| 扬中市| 五莲县| 宝应县| 宜丰县| 洪泽县| 阿合奇县| 南川市| 开化县| 咸丰县| 岢岚县| 水城县| 阳曲县| 清丰县| 凤翔县| 博野县| 杭锦旗| 同江市|