欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種高交易并發(fā)量的處理方法與流程

文檔序號:11775568閱讀:1431來源:國知局
一種高交易并發(fā)量的處理方法與流程

本發(fā)明涉及金融系統(tǒng)中存在高交易并發(fā)量的處理,尤其是針對銀行業(yè)務(wù)系統(tǒng)中的熱點賬戶的數(shù)據(jù)處理。



背景技術(shù):

當(dāng)前銀行業(yè)務(wù)系統(tǒng)中,經(jīng)常會出現(xiàn)一些針對同一個賬戶進(jìn)行大量的業(yè)務(wù)交易,例如同一個賬戶的頻繁轉(zhuǎn)賬需要更新數(shù)據(jù)庫中的賬戶記錄,通常我們將一秒內(nèi)交易并發(fā)量高達(dá)500筆的賬戶稱為熱點賬戶。相應(yīng)的,對這些交易量大并涉及熱點賬戶更新的業(yè)務(wù),稱之為熱點賬戶業(yè)務(wù);交易量小或不涉及熱點賬戶更新的業(yè)務(wù),視為非熱點賬戶業(yè)務(wù)。

通常,對于銀行業(yè)務(wù)系統(tǒng)中的一條賬戶記錄的更新,一般需要如下過程,首先對這條賬戶記錄的數(shù)據(jù)進(jìn)行鎖定(lock),鎖定完成后,對其余額進(jìn)行更新,然后釋放鎖定(unlock),這是為了防止其他業(yè)務(wù)對這個賬戶數(shù)據(jù)也同時進(jìn)行操作,避免不必要的數(shù)據(jù)錯誤,保證同一時間只有一個業(yè)務(wù)主體在對其賬戶數(shù)據(jù)進(jìn)行操作。假設(shè)數(shù)據(jù)庫對數(shù)據(jù)進(jìn)行一次更新需要使用10毫秒的時間,而如果遇到交易并發(fā)量巨大的熱點賬戶,則需要一分鐘內(nèi)處理幾千甚至上萬次的操作,那么數(shù)據(jù)庫就會來不及響應(yīng),最后崩潰。即便是到it技術(shù)如此發(fā)達(dá)的今天,熱點賬戶依然是困擾很多銀行業(yè)務(wù)系統(tǒng)的頑疾。

現(xiàn)有的銀行業(yè)務(wù)系統(tǒng)中沒有對熱點賬戶進(jìn)行特別的處理,因而當(dāng)出現(xiàn)熱點賬戶時,具有如下問題:1、數(shù)據(jù)庫行級鎖導(dǎo)致響應(yīng)時間長,交易處理緩慢;2、長時間的堆積堵塞,會導(dǎo)致很多交易請求最終超時失敗,原因為系統(tǒng)的處理能力不夠;3、而如果變更現(xiàn)有的鎖定-更新-釋放鎖定的數(shù)據(jù)處理方式,則會存在資金風(fēng)險、交易成功失敗不確定風(fēng)險。



技術(shù)實現(xiàn)要素:

因此,針對上述的問題,本發(fā)明提出一種高交易并發(fā)量的處理方法,針對銀行業(yè)務(wù)系統(tǒng)中的熱點賬戶(高交易并發(fā)量)執(zhí)行特別處理:采用臨時止付及延時記賬措施,實現(xiàn)一種臨時止付延時記賬方案,提高系統(tǒng)并發(fā)能力,解決熱點賬戶導(dǎo)致的數(shù)據(jù)庫來不及響應(yīng)的頑疾。

具體的,為了解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是,一種高交易并發(fā)量的處理方法,包括:

預(yù)設(shè)一熱點賬戶表,該熱點賬戶表內(nèi)預(yù)先存儲了熱點賬戶的賬號;

接收賬戶的交易處理請求,查詢該賬戶的賬號是否在熱點賬戶表里;其中,賬戶的交易處理請求包括余額更新、賬戶明細(xì)、動賬通知、核算明細(xì)等等請求;

如果該賬戶存在于熱點賬戶表里,則調(diào)用熱點賬戶流程對該賬戶的交易處理請求進(jìn)行處理;

熱點賬戶流程處理賬戶的交易處理請求的過程中,在待處理賬務(wù)隊列中添加異步任務(wù),該異步任務(wù)用于處理賬戶的交易,并將賬戶的交易分為兩個流程處理,一個流程處理余額更新請求以及解止付;另一個流程處理除余額更新以外的賬務(wù)處理請求,例如賬戶明細(xì)、動賬通知、核算明細(xì)等等處理請求。

進(jìn)一步的,熱點賬戶流程對賬戶的交易處理請求進(jìn)行處理,包括:

判斷該賬戶是借方賬戶還是貸方賬戶,如果該賬戶是借方賬戶,則轉(zhuǎn)到借方熱點賬戶的處理步驟,如果該賬戶是貸方賬戶,則轉(zhuǎn)到貸方熱點賬戶的處理步驟。

其中,所述借方熱點賬戶的處理步驟包括::

步驟1:在獨立事務(wù)中處理借方止付,同時往熱點賬戶臨時止付表中添加止付記錄;熱點賬戶臨時止付表用于記錄處理過程中對賬戶實施臨時止付的記錄;

步驟2:對該借方賬戶的可用額度檢查,如可用額度小于0則交易立即失敗,并退出;可用額度由可用額度算法計算得到;

步驟3:如果可用額度大于0,對貸方賬戶更新;

步驟4:對借方賬戶更新,在待處理賬務(wù)表(待處理賬務(wù)隊列)中添加異步任務(wù),該異步任務(wù)分為兩個流程(記為第一流程和第二流程)處理,第一流程處理余額更新以及解止付;第二流程處理除余額更新以外的賬務(wù)處理;同時,添加賬戶余額變更的沖正日志;其中,處理時,第一流程只處理余額更新以及解止付,對借方賬戶明細(xì)、動賬通知、核算明細(xì)等處理全部略過,由第二流程進(jìn)行延時批量處理;

步驟5:若更新不成功,則交易失敗、出現(xiàn)異常,釋放借方止付:在熱點賬戶臨時止付表中刪除本次交易添加的所有止付記錄。本操作在主事務(wù)回滾后處理。

所述貸方熱點賬戶的處理包括如下步驟:

步驟1:貸方賬戶更新:在待處理賬務(wù)表中添加異步任務(wù),該異步任務(wù)分為兩個流程(記為第一流程和第二流程)處理,第一流程處理余額更新以及解止付;第二流程處理除余額更新以外的賬務(wù)處理;其中,貸方賬戶明細(xì)、動賬通知、核算明細(xì)等處理全部略過,由異步的延時批量處理;同時,添加賬戶余額變更的沖正日志;在熱點賬戶臨時止付表中添加止付記錄(可采用負(fù)數(shù)),添加賬戶余額變更的沖正日志;

步驟2:借方賬戶更新。

進(jìn)一步的,上述第一流程(借方熱點賬戶的處理步驟中的異步任務(wù)的第一流程和貸方熱點賬戶的處理步驟中的異步任務(wù)中的第一流程都適用)對余額更新的處理是定時批量進(jìn)行處理,其包括如下步驟:

步驟1:從“待處理賬務(wù)表”中篩選滿足預(yù)設(shè)條件的記錄放入內(nèi)存數(shù)組,例如預(yù)設(shè)條件為:交易日期=“熱點賬戶批量日期”and狀態(tài)=’0’,選取前10000條記錄;

步驟2:根據(jù)內(nèi)存數(shù)組登記的記錄范圍,按主賬號和幣種匯總軋差發(fā)生額;

步驟3:按主賬號和幣種的軋差發(fā)生額更新主賬戶余額;

步驟4:根據(jù)核心流水號、賬務(wù)序號刪除“熱點賬戶臨時止付表”中對應(yīng)的記錄;

步驟5:更新“待處理賬務(wù)表”中這10000條記錄的狀態(tài)=’2’。

更進(jìn)一步的,上述第二流程(借方熱點賬戶的處理步驟中的異步任務(wù)的第二流程和貸方熱點賬戶的處理步驟中的異步任務(wù)中的第二流程都適用)對除余額更新以外的賬務(wù)處理請求進(jìn)行處理,具體是定時批量進(jìn)行處理,其包括如下步驟:

步驟1:從“待處理賬務(wù)表”篩選滿足預(yù)設(shè)條件的記錄,例如預(yù)設(shè)條件為:交易日期=“熱點賬戶批量日期”and狀態(tài)=’2’,選取前10000條記錄。

步驟2:按核心流水號、賬戶序號刪除“待處理賬務(wù)表”中的對應(yīng)記錄,清理異常的臨時止付記錄;

步驟3:對主賬戶表屬性的上日賬戶余額、余額最近更新日期、上次業(yè)務(wù)日期等進(jìn)行更新;

步驟4:生成賬戶明細(xì),明細(xì)中的余額按發(fā)生額順序整理,據(jù)上日余額或最新余額順序逐筆推算;核算明細(xì)生成處理等;

步驟5:添加賬戶明細(xì)、核算明細(xì)的沖正日志信息(核心流水號使用原核心流水號);

步驟6:按賬戶明細(xì)批量發(fā)送動戶通知消息,用多記錄消息打包發(fā)送以提高效率;

步驟7:清理異常的臨時止付記錄處理:無待處理賬務(wù)記錄的臨時止付記錄要清除;該步驟中的清理異常的臨時止付記錄是為后續(xù)保障措施;

步驟8:沖正的其它處理,如賬務(wù)記錄為沖正,則處理沖正的其它內(nèi)容(如調(diào)息等)。

進(jìn)一步的,熱點賬戶流程對賬戶的交易處理請求進(jìn)行處理,還包括對異常進(jìn)行處理,對異常進(jìn)行處理又分為定時批量處理異常,以及日終批量處理異常方案;其中,采用定時批量處理異常方案,其包括如下過程:

步驟1:回滾當(dāng)前批量窗口事務(wù);當(dāng)前批量窗口事務(wù)是除聯(lián)機賬戶限額檢查外的異步批量處理流程,例如目前系統(tǒng)設(shè)置的窗口期為每500筆一提交,做回滾時僅回滾當(dāng)前窗口期內(nèi)的事務(wù),之前已提交的為完成狀態(tài),后面未提交的為未完成狀態(tài);

步驟2:暫?!把訒r記賬定時批量”;“延時記賬定時批量”即是上述對除余額更新以外的賬務(wù)處理請求的第二過程,暫?!把訒r記賬定時批量”也即暫停第二過程的處理;

步驟3:記錄異常日志;

步驟4:發(fā)送告警消息。

采用日終批量處理異常的過程如下:

步驟1:回滾當(dāng)前批量窗口事務(wù);

步驟2:終止日終批量;

步驟3:記錄異常日志;

步驟4:發(fā)送告警消息。

其中,日終批量與上述定時批量在處理邏輯上是一致的,僅僅是發(fā)起時點與方式的區(qū)別,日終批量是保障t日熱點賬戶賬務(wù)正常處理完畢的最后防線,如不滿足全部完成的條件,那么后續(xù)的處理流程就必須等待,直到完成所有熱點賬戶的賬務(wù)處理。

進(jìn)一步的,熱點賬戶流程對賬戶的交易處理請求進(jìn)行處理,還包括沖正處理,熱點賬戶交易的沖正仍使用統(tǒng)一的沖正機制處理,但對臨時止付、待處理賬務(wù)的沖正要進(jìn)行特殊處理,其具體包括如下過程:

在對“插入臨時止付”類的業(yè)務(wù)日志沖正時,執(zhí)行如下操作:在“熱點賬戶臨時止付表”添加記錄,金額與原交易相反(如插入的止付金額為正數(shù)),可使用獨立事務(wù)插入;并進(jìn)行透支余額檢查,以保證沖正不使賬務(wù)透支;

在對“插入待處理賬務(wù)”類的業(yè)務(wù)日志沖正時,執(zhí)行如下操作:在“待處理賬務(wù)表”添加記錄,啟用兩個異步處理:一是采用第一過程(異步余額更新機制,定時批處理)處理余額變更的沖正;二是采用第二過程(異步其它處理,定時批處理)處理除余額更新以外(賬戶明細(xì)、核算明細(xì)、動戶通知等)的沖正。

上述過程中,沖正處理非必須過程,只有當(dāng)后續(xù)異步處理出現(xiàn)異常是才會發(fā)起。一旦發(fā)起沖正請求,那么需要完成三個動作:1、使用通用沖正處理機制對聯(lián)機交易請求進(jìn)行沖正;2、對臨時止付做特殊形式的沖正;3、對待處理賬務(wù)做特殊形式的沖正。

現(xiàn)有的銀行業(yè)務(wù)系統(tǒng)處理熱點賬戶時,是通過查看該賬戶交易并發(fā)量在預(yù)設(shè)時間內(nèi)的次數(shù)來判定熱點賬戶,也就是說其是在交易時進(jìn)行識別的,而本發(fā)明在交易時不對交易進(jìn)行熱點識別,而是在服務(wù)組件中根據(jù)賬號進(jìn)行識別其是否熱點賬戶,如果是熱點賬戶則自動調(diào)用熱點賬戶流程進(jìn)行處理,因此所有的交易的賬戶都先經(jīng)過服務(wù)組件過濾,從而控制實際對熱點賬戶操作的并發(fā)數(shù),因此本發(fā)明的方案可解決交易處理緩慢問題,以及交易請求不再堆積堵塞等問題。

同時,本發(fā)明采用延時入賬的策略,采用兩個流程分別執(zhí)行臨時止付和延時記賬,提高系統(tǒng)并發(fā)能力,處理時,第一個流程僅處理余額和解止付,從而實現(xiàn)高速處理,第二個流程處理除余額以外的其他復(fù)雜的賬務(wù)處理,第二個流程采用定時批量處理的方式,每隔預(yù)設(shè)時間篩選預(yù)設(shè)條件的熱點賬戶數(shù)據(jù)放入內(nèi)存,然后把內(nèi)存的熱點賬戶數(shù)據(jù)同步到數(shù)據(jù)庫去。也就是說本發(fā)明將余額更新和其他賬務(wù)處理分開,余額更新可即時實現(xiàn),其他賬務(wù)處理執(zhí)行定時批量操作,因此本發(fā)明的設(shè)計不僅滿足余額更新的及時,而且解決了熱點賬戶交易處理緩慢、交易請求堆積堵塞等問題。

附圖說明

圖1為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶處理的整體方案;

圖2為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶處理的業(yè)務(wù)流程處理總覽;

圖3為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶處理的借方流程圖;

圖4為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶處理的貸方流程圖;

圖5為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶余額定時處理的流程圖;

圖6為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶其他賬務(wù)定時處理的流程圖;

圖7為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶日終處理的流程圖;

圖8為使用本發(fā)明對銀行核心系統(tǒng)熱點賬戶沖正處理的流程圖。

具體實施方式

下面詳細(xì)描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。

參見圖1,本發(fā)明提供一種高交易并發(fā)量的處理方法,其包括:

預(yù)設(shè)一熱點賬戶表,該熱點賬戶表內(nèi)預(yù)先存儲了熱點賬戶的賬號;

接收賬戶的交易處理請求,查詢該賬戶的賬號是否在熱點賬戶表里;其中,賬戶的交易處理請求包括余額更新、賬戶明細(xì)、動賬通知、核算明細(xì)等等請求;

如果該賬戶存在于熱點賬戶表里,則調(diào)用熱點賬戶流程對該賬戶的交易處理請求進(jìn)行處理;

熱點賬戶流程處理賬戶的交易處理請求的過程中,在待處理賬務(wù)隊列中添加異步任務(wù),該異步任務(wù)用于處理賬戶的交易,并將賬戶的交易分為兩個流程處理,一個流程處理余額更新請求以及解止付;另一個流程處理除余額更新以外的賬務(wù)處理請求,例如賬戶明細(xì)、動賬通知、核算明細(xì)等等處理請求。

作為一個具體的實施案例,以下介紹本發(fā)明的具體實現(xiàn),首先建立下表的各種服務(wù)組件,以支撐熱點賬戶延時匯總方案的實現(xiàn):

參見圖2,本發(fā)明的整體方案設(shè)計如下:

a)在聯(lián)機交易時不對交易進(jìn)行熱點識別,而是在服務(wù)組件中根據(jù)賬號進(jìn)行識別,并自動調(diào)用熱點賬戶流程處理;

b)識別到熱點賬戶時,需要在待處理賬務(wù)隊列添加異步任務(wù),以便通知其它流程配合處理;

c)其中的異步任務(wù)分為兩個流程處理,一個高速處理:僅處理余額更新解止付;一個復(fù)雜處理:除余額外的賬務(wù)處理。

d)日終處理中的處理,一是保證日切的正常進(jìn)行,一是對相關(guān)數(shù)據(jù)進(jìn)行維護(hù)處理(分維護(hù))。

當(dāng)熱點賬戶流程對賬戶的交易處理請求進(jìn)行處理時,首先判斷該賬戶是借方賬戶還是貸方賬戶,如果該賬戶是借方賬戶,則轉(zhuǎn)到借方熱點賬戶的處理步驟,如果該賬戶是貸方賬戶,則轉(zhuǎn)到貸方熱點賬戶的處理步驟。

其中,參見圖3,借方熱點賬戶的處理包括如下步驟:

步驟1:在獨立事務(wù)中處理借方止付,同時往熱點賬戶臨時止付表中添加止付記錄;

步驟2:對該借方賬戶的可用額度檢查,如可用額度小于0則交易立即失敗,并退出;可用額度由可用額度算法計算得到;

步驟3:如果可用額度大于0,對貸方賬戶更新;

步驟4:對借方賬戶更新,在待處理賬務(wù)表(用以描述待處理的賬務(wù)隊列)中添加異步任務(wù),該異步任務(wù)分為兩個流程(記為第一流程和第二流程)處理,第一流程處理余額更新以及解止付;第二流程處理除余額更新以外的賬務(wù)處理;同時,添加賬戶余額變更的沖正日志;其中,處理時,第一流程只處理余額更新以及解止付,對借方賬戶明細(xì)、動賬通知、核算明細(xì)等處理全部略過,由第二流程進(jìn)行延時批量處理;

步驟5:若更新不成功,則交易失敗、出現(xiàn)異常,釋放借方止付:在熱點賬戶臨時止付表中刪除本次交易添加的所有止付記錄。本操作在主事務(wù)回滾后處理。

參見圖4,貸方熱點賬戶的處理包括如下步驟:

步驟1:對借方額度進(jìn)行檢查,符合條件則轉(zhuǎn)到步驟2;

步驟2:貸方賬戶更新:在待處理賬務(wù)表中添加異步任務(wù),該異步任務(wù)分為兩個流程(記為第一流程和第二流程)處理,第一流程處理余額更新以及解止付;第二流程處理除余額更新以外的賬務(wù)處理;其中,貸方賬戶明細(xì)、動賬通知、核算明細(xì)等處理全部略過,由異步的延時批量處理;同時,添加賬戶余額變更的沖正日志;在熱點賬戶臨時止付表中添加止付記錄(可采用負(fù)數(shù)),添加賬戶余額變更的沖正日志;

步驟3:借方賬戶更新。

借方熱點賬戶的處理步驟中的異步任務(wù)的第一流程和貸方熱點賬戶的處理步驟中的異步任務(wù)中的第一流程中對余額更新的處理均是采用定時批量的方式進(jìn)行處理,參見圖5,其包括如下步驟:

步驟1:從“待處理賬務(wù)表”篩選記錄放入內(nèi)存數(shù)組,篩選條件為:交易日期=“熱點賬戶批量日期”and狀態(tài)=’0’,選取前10000條記錄;

步驟2:根據(jù)內(nèi)存數(shù)組登記的記錄范圍,按主賬號和幣種匯總軋差發(fā)生額;

步驟3:按主賬號和幣種的軋差發(fā)生額更新主賬戶余額;

步驟4:按照核心流水號、賬務(wù)序號(主鍵),刪除“熱點賬戶臨時止付表”中的對應(yīng)記錄;

步驟5:同時,更新“待處理賬務(wù)表”中這10000條記錄的狀態(tài)=’2’。

參見圖6,借方熱點賬戶的處理步驟中的異步任務(wù)的第二流程和貸方熱點賬戶的處理步驟中的異步任務(wù)中的第二流程對除余額更新以外的賬務(wù)處理請求進(jìn)行處理,具體是采用定時批量的方式進(jìn)行處理,其包括如下步驟:

步驟1:從“待處理賬務(wù)表”篩選記錄,條件:交易日期=“熱點賬戶批量日期”and狀態(tài)=’2’,選取前10000條記錄,也即第一流程定時批量操作結(jié)束后的記錄;

步驟2:按核心流水號、賬戶序號刪除“待處理賬務(wù)表”記錄,清理異常的臨時止付記錄;

步驟3:上日賬戶余額、余額最近更新日期、上次業(yè)務(wù)日期等主賬戶表屬性更新;

步驟4:生成賬戶明細(xì),明細(xì)中的余額按發(fā)生額順序整理,據(jù)上日余額或最新余額順序逐筆推算;核算明細(xì)生成處理等;

步驟5:添加賬戶明細(xì)、核算明細(xì)的沖正日志信息(核心流水號使用原核心流水號);

步驟6:按賬戶明細(xì)批量發(fā)送動戶通知消息,用多記錄消息打包發(fā)送以提高效率;

步驟7:清理異常的臨時止付記錄處理:無待處理賬務(wù)記錄的臨時止付記錄要清除;

步驟8:沖正的其它處理,如賬務(wù)記錄為沖正,則處理沖正的其它內(nèi)容(如調(diào)息等)。

對異常的處理又分為定時批量處理異常方案,以及日終批量處理異常方案;其中,采用定時批量處理異常方案,其包括如下過程:

步驟1:回滾當(dāng)前批量窗口事務(wù);

步驟2:暫停“延時記賬定時批量”;

步驟3:記錄異常日志;

步驟4:發(fā)送告警消息到核心信息交換子系統(tǒng);

采用日終批量處理異常的過程如下:

步驟1:回滾當(dāng)前批量窗口事務(wù);

步驟2:終止日終批量;

步驟3:記錄異常日志;

步驟4:發(fā)送告警消息到核心信息交換子系統(tǒng)。

日終批量流程處理參見圖7。

參見圖8,熱點賬戶交易的沖正仍使用統(tǒng)一的沖正機制處理,但對臨時止付、待處理賬務(wù)的沖正要進(jìn)行特殊處理:

在對“插入臨時止付”類的業(yè)務(wù)日志沖正時,使用特殊處理擴展:

步驟1:在“熱點賬戶臨時止付表”添加記錄,金額與原交易相反,如插入的止付金額為正數(shù),使用獨立事務(wù)插入,并進(jìn)行透支余額檢查,以保證沖正不使賬務(wù)透支。

步驟2:在對“插入待處理賬務(wù)”類的業(yè)務(wù)日志沖正時,使用特殊處理擴展::

步驟3:在“待處理賬務(wù)表”添加記錄,啟用兩個異步處理:一是用異步余額更新機制(定時批處理)處理沖正后的余額變更;二是啟用異步其它處理(定時批處理)處理賬戶明細(xì)、核算明細(xì)、動戶通知等沖正處理。

盡管結(jié)合優(yōu)選實施方案具體展示和介紹了本發(fā)明,但所屬領(lǐng)域的技術(shù)人員應(yīng)該明白,在不脫離所附權(quán)利要求書所限定的本發(fā)明的精神和范圍內(nèi),在形式上和細(xì)節(jié)上可以對本發(fā)明做出各種變化,均為本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
志丹县| 铜梁县| 胶州市| 康马县| 昌江| 永善县| 深圳市| 湖南省| 勐海县| 固安县| 綦江县| 东海县| 天水市| 江源县| 舞阳县| 绵阳市| 夏河县| 射洪县| 鹤壁市| 安阳县| 河东区| 大英县| 灵石县| 廉江市| 宣汉县| 山阴县| 蚌埠市| 富平县| 江安县| 长子县| 潍坊市| 九龙坡区| 万荣县| 土默特左旗| 海门市| 隆尧县| 茶陵县| 浪卡子县| 望城县| 崇左市| 泰顺县|