欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java多線程在項(xiàng)目中的應(yīng)用

多線程對(duì)于編程人員都不陌生,比如我們常用的數(shù)據(jù)庫(kù)連接池、tomcat等。本博客主要說(shuō)一下我在工作中對(duì)多線程的使用的思考。具體多線程的使用方法就不在這里向大家介紹了。

創(chuàng)新互聯(lián)公司是專業(yè)的市中網(wǎng)站建設(shè)公司,市中接單;提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行市中網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

1.背景

我最近做的項(xiàng)目是供應(yīng)鏈相關(guān)的項(xiàng)目,而對(duì)于項(xiàng)目中涉及的各種單據(jù)都需要傳給另外一套系統(tǒng)做賬(財(cái)務(wù)系統(tǒng)),比如:合同單據(jù)、采購(gòu)單據(jù)、收貨單據(jù)等,每類單據(jù)都會(huì)有工作流。

1) 最初

流程是這樣的 首先在系統(tǒng)創(chuàng)建單據(jù),提交之后開始走審批流及各種通知,當(dāng)審批流審批結(jié)束之后,觸發(fā)同步財(cái)務(wù)系統(tǒng)。當(dāng)我們系統(tǒng)有單據(jù)發(fā)生變化時(shí),如果單據(jù)已經(jīng)審批通過(guò),會(huì)將變化的內(nèi)容推送給財(cái)務(wù)系統(tǒng)。

那這會(huì)有什么問題呢?假如我們現(xiàn)在在做一個(gè)發(fā)票沖銷的功能,當(dāng)用戶在頁(yè)面點(diǎn)擊它之后,首先在我們系統(tǒng)完成沖銷邏輯,然后調(diào)用財(cái)務(wù)系統(tǒng)將單據(jù)同步給它。

起初我們是采用同步的方式調(diào)用財(cái)務(wù)系統(tǒng)的接口,調(diào)用財(cái)務(wù)系統(tǒng)的接口我們方法又需要等待它返回給我們操作狀態(tài)(成功還是失?。?,而對(duì)于有修改的業(yè)務(wù)方法我們都會(huì)在方法上使用事務(wù),這會(huì)導(dǎo)致我們方法占用事務(wù)時(shí)間過(guò)長(zhǎng)產(chǎn)生數(shù)據(jù)庫(kù)行級(jí)鎖沖突問題。

2) 思考

當(dāng)項(xiàng)目上線之后,經(jīng)常收到用戶反饋說(shuō)項(xiàng)目出錯(cuò),查看日志發(fā)現(xiàn)經(jīng)常出現(xiàn)行級(jí)鎖問題。為什么會(huì)產(chǎn)生行級(jí)鎖問題呢?
比如采購(gòu)單來(lái)說(shuō),采購(gòu)單采用的是頭行結(jié)構(gòu)(主單和明細(xì)),采購(gòu)單包含采購(gòu)的數(shù)量,收貨數(shù)量,在途數(shù)量等字段,而在收貨時(shí),也會(huì)操作收貨單對(duì)應(yīng)的采購(gòu)單,如果在采購(gòu)單和收貨單同時(shí)操作同一采購(gòu)單號(hào)的單據(jù),并且操作字段都需要同步到財(cái)務(wù)系統(tǒng),就會(huì)導(dǎo)致方法占用事務(wù)過(guò)長(zhǎng),更容易產(chǎn)生行級(jí)鎖問題。

2.解決方案

除了會(huì)產(chǎn)生上面所說(shuō)的行級(jí)鎖問題之外,其實(shí)還有另外一個(gè)問題,就是分布式事務(wù)來(lái)保證數(shù)據(jù)一致性問題。

1) 異步方式

采用多線程的方式,將我們系統(tǒng)中所有需要同步的到財(cái)務(wù)系統(tǒng)的地方都改成異步的方式,因?yàn)橄到y(tǒng)有很多種類型的單據(jù),比如說(shuō)我們系統(tǒng)有6種單據(jù),那我們就創(chuàng)建一個(gè)大小為6的線程池,每個(gè)線程池配一個(gè)阻塞隊(duì)列。每個(gè)線程池和6種單據(jù)一一對(duì)應(yīng),這樣就可以保證我們不會(huì)開啟太多線程而占用系統(tǒng)資源。
java多線程在項(xiàng)目中的應(yīng)用
例如采購(gòu)單修改之后,除了做在本系統(tǒng)中的保存之外,同步到財(cái)務(wù)系統(tǒng)的地方只需要將采購(gòu)單的同步請(qǐng)求放入線程池中。
除了異步的方式之外,我們還可以同步的方式發(fā)送給對(duì)方系統(tǒng)之后,對(duì)方系統(tǒng)立即返回,當(dāng)對(duì)方系統(tǒng)執(zhí)行完畢之后,回調(diào)我們系統(tǒng)的接口,我們系統(tǒng)再做成功之后的邏輯處理。

2) MQ的方式

除了上面這種方式之外,就是還可以采用MQ的方式,將需要同步的單據(jù)發(fā)送到MQ里面,對(duì)方系統(tǒng)從MQ里面取單據(jù),取出的不同單據(jù)做不同的業(yè)務(wù)區(qū)分。

當(dāng)前題目:java多線程在項(xiàng)目中的應(yīng)用
瀏覽地址:http://chinadenli.net/article12/jggigc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、自適應(yīng)網(wǎng)站靜態(tài)網(wǎng)站、做網(wǎng)站關(guān)鍵詞優(yōu)化、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
亚洲免费观看一区二区三区| 精品人妻一区二区四区| 亚洲三级视频在线观看免费| 亚洲欧洲日韩综合二区| 久热人妻中文字幕一区二区| 九九热这里只有精品哦| 亚洲国产四季欧美一区| 国产成人高清精品尤物| 色偷偷亚洲女人天堂观看| 亚洲国产天堂av成人在线播放| 日韩女优精品一区二区三区| 一区二区三区18禁看| 丰满人妻熟妇乱又乱精品古代| 后入美臀少妇一区二区| 亚洲人妻av中文字幕| 亚洲一区二区精品免费视频| 日本大学生精油按摩在线观看| 国产一区在线免费国产一区| 少妇成人精品一区二区| 黑色丝袜脚足国产一区二区| 美女激情免费在线观看| 亚洲精品伦理熟女国产一区二区 | 日本午夜精品视频在线观看| 久久人人爽人人爽大片av| 日本黄色录像韩国黄色录像| 熟女乱一区二区三区四区| 欧美黄色成人真人视频| 精品人妻精品一区二区三区| a久久天堂国产毛片精品| 免费一区二区三区少妇| 日韩特级黄片免费观看| 国产精品欧美一区两区| 日韩欧美在线看一卡一卡| 久久精品国产亚洲av久按摩| 亚洲欧美黑人一区二区| 欧美日韩亚洲综合国产人| 男女一进一出午夜视频| 亚洲中文字幕三区四区| 尤物天堂av一区二区| 日本淫片一区二区三区| 少妇高潮呻吟浪语91|