欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

優(yōu)惠券優(yōu)惠的思路以及實(shí)踐

前言:最近做關(guān)于優(yōu)惠券的開發(fā),但是發(fā)現(xiàn)優(yōu)惠券量大了之后,性能完全跟不上,庫中存200萬條優(yōu)惠券,發(fā)一張券竟然需要5分鐘之久,然后我就著手優(yōu)化,最終到發(fā)一張券只需要15毫秒左右,現(xiàn)在把整個(gè)思路以及代碼貼出來,供大家一起討論和學(xué)習(xí)。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比鞍山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式鞍山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鞍山地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。

簡介

主要實(shí)現(xiàn)優(yōu)惠券促銷活動(dòng),首先創(chuàng)建活動(dòng),然后創(chuàng)建券組,采用預(yù)處理的方式提前進(jìn)行制券,在第一版本主要實(shí)現(xiàn),功能的基本業(yè)務(wù)。然后在分支實(shí)現(xiàn),大數(shù)量和高并發(fā)問題。

分支1.1

1:解決優(yōu)惠券編碼重復(fù)問題,原先采用的是獲取數(shù)據(jù)庫所有的券,然后去比對是否重復(fù),如果庫數(shù)據(jù)量達(dá)百萬的時(shí)候就會出現(xiàn)非常緩慢,而且會 出現(xiàn)經(jīng)常制券失敗等,所以此版本舍棄原先采用隨機(jī)數(shù)的模式,通過推特的雪花算法來避免唯一,但是依然保留優(yōu)惠券前綴和后綴。

2:由原來的異步采用線程修改為線程池,以為高并發(fā)時(shí)候存在大量的線程占內(nèi)存空間。

3:由原來制券采用for循環(huán)模式修改為批量制券,而且采用分配插入優(yōu)惠券,一批次目前定為5000.

4:加入消息隊(duì)列(采用rabbitMQ)對于某一批次添加失敗,把失敗的放入對列中,通過隊(duì)列進(jìn)行補(bǔ)救,已到達(dá)高可用。避免大批量優(yōu)惠券來回重新導(dǎo)入 消息隊(duì)列對于異常信息拒絕解決并重返消息隊(duì)列中,配置2個(gè)消費(fèi)者以避免其中一個(gè)服務(wù)異常,消息處理出現(xiàn)死循環(huán)

分支1.2

1:加入操作日志

目的:跟蹤熱點(diǎn)數(shù)據(jù),查詢?nèi)罩究焖俑檻?yīng)用程序中的慢查詢或慢操作,為后面的優(yōu)化奠定基礎(chǔ)

2:加入異常日志

目的:快速的獲取線程的異常問題,通過日志中的數(shù)據(jù)能快速修改

3:采用技術(shù) 通過aop和rabbitmq中間件來做,這樣減少由于日志問題給程序帶來的效率問題

未做優(yōu)化效率統(tǒng)計(jì)

采用數(shù)據(jù)庫MySQL

數(shù)據(jù):添加25個(gè)有效活動(dòng),每個(gè)活動(dòng)下分別有2個(gè)券組,每個(gè)券組下制券是5萬張。優(yōu)惠券表中250萬條記錄

業(yè)務(wù):一個(gè)會員消費(fèi)同時(shí)滿足這25個(gè)活動(dòng)要送50張優(yōu)惠券。

統(tǒng)計(jì):整個(gè)發(fā)券過程經(jīng)過10次統(tǒng)計(jì)得出大約消耗是306s,其中每次獲取優(yōu)惠券耗時(shí)6s。如果多次循環(huán)必然帶來性能的瓶頸

更新優(yōu)惠券狀態(tài)大約耗時(shí)是0.5s,從上我們可以看出我們的性能問題主要出在獲取優(yōu)惠券上。所以才1.3版本主要通過程序來解決這個(gè)問題

分支1.3

目的:通過程序代碼和優(yōu)化數(shù)據(jù)庫來提高性能

具體方案:

1:以前獲取券組下所有的優(yōu)惠券現(xiàn)在修改為每次只獲取100條(經(jīng)測試統(tǒng)計(jì)得出發(fā)送50張券消耗時(shí)間是106s,每次獲取優(yōu)惠券大約耗時(shí)是2s多,整體性能提升近3倍)

2:優(yōu)化sql,加入組合索引(統(tǒng)計(jì)得出發(fā)送50張優(yōu)惠券消耗總時(shí)間是2.5s,每次獲取優(yōu)惠券大約耗時(shí)是0.015s,整體的性能提升了近42倍)

3:加入本地緩存(如果一次性獲取的優(yōu)惠券先放入map中,那么下次如果還有就不需要從庫中獲取優(yōu)惠券。統(tǒng)計(jì)發(fā)現(xiàn):10件商品,每件商品發(fā)50張優(yōu)惠券

不加本地緩存效率耗時(shí)是7.5s,加入本地緩存后耗時(shí)約5.5s,整體性能提升了2s)

效果分析:

4:對于發(fā)券采用批量更新來替代for循環(huán)(由上面的約5.5s性能提升為大約4.8s)

分支1.4

目的:通過異步和消息隊(duì)列來進(jìn)行發(fā)券

具體方案:

1:通過異步進(jìn)行發(fā)券,這樣可以提高cpu的利用率,同時(shí)通過消息隊(duì)列來保證穩(wěn)定性,避免出現(xiàn)異常導(dǎo)致返回前端發(fā)券成功,但是異步制券時(shí)候出現(xiàn)異常在發(fā)500張優(yōu)惠券的時(shí)候效率大約提升了0.5s

2:對代碼進(jìn)行一次重構(gòu)

原則:把大方法修改小方法,每個(gè)小方法處理一個(gè)業(yè)務(wù),比如獲取活動(dòng),那么這個(gè)方法的職責(zé)就是獲取活動(dòng),同時(shí)每個(gè)小方法盡量有返回值,這樣可以增加代碼的可讀性

分支1.5

1:采用redis做緩存,取當(dāng)天有效的活動(dòng),活動(dòng)下券組,券組下500張券存入緩存中。

2:加入定時(shí)任務(wù),在每天12點(diǎn)時(shí)候更新緩存(這個(gè)時(shí)間可以通過熱點(diǎn)數(shù)據(jù)來監(jiān)控)

3:統(tǒng)計(jì)結(jié)果發(fā)現(xiàn):

加入緩存后發(fā)送500張優(yōu)惠券耗時(shí)只有2.7s,比之前的4.8s快了2.1s,大大的提升了性能

總結(jié):代碼我就不貼,大家可以自己去看。感興趣的朋友可以在這個(gè)基礎(chǔ)繼續(xù)研發(fā)學(xué)習(xí)。在版本1.6可能加入分庫分表,目前想采用的是當(dāng)當(dāng)?shù)膕harding-jdbc

源碼地址

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持創(chuàng)新互聯(lián)!

當(dāng)前標(biāo)題:優(yōu)惠券優(yōu)惠的思路以及實(shí)踐
文章起源:http://aaarwkj.com/article24/isgije.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站虛擬主機(jī)、建站公司、網(wǎng)站營銷、動(dòng)態(tài)網(wǎng)站、全網(wǎng)營銷推廣

廣告

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

外貿(mào)網(wǎng)站建設(shè)
av电影在线中文字幕| 国产精品网站在线观看| 深夜av一区二区三区| 国产男女爱猛视频在线| 蜜臀一区二区三区精品免费| 给我搜亚洲免费播放黄色大片| 国产三级久久精品三级91| 色哟哟在线观看精品一区| 欧美日韩黄片免费在线观看| 18岁以下禁止观看的视频| 久久精品国产一区二区三区不卡| 成人av在线天堂一区二区三区| 国产丰满熟女视频免费| 久久人妻一区二区三区免费| 无遮挡无掩盖的免费网站| 日本高清不卡免费在线观看视频一二三区 | 日本亚洲美丽少妇天堂| 一本色道久久亚洲综合精品蜜桃 | 深夜福利在线观看97| 久久久亚洲福利精品午夜| 91桃色网站在线免费观看| 免费亚洲网站在线观看视频| 福利一区福利二区视频| 国产精品亚洲欧美在线| 濑亚美莉在线观看一区二区三区| 国产精品超碰在线观看| 久久久久久国产精彩视频| 午夜精品久久久免费视频| 超碰国产熟女一区二区三区| 日韩免费毛片在线观看| 91九色中文视频在线观看| 国产精品偷伦一区二区| 一级黄片一区二区三区| 中文字幕一区精品日韩| 强暴美女视频大全久久久| 亚洲国产成人精品女人久久久′| 欧美亚洲另类不卡在线| 日韩激情av中文字幕 | 亚洲新大香蕉视频在线播放| 日韩黄色一级片在线观看| 久久亚洲精品中文字幕一|