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

一種控制紅包的方法以及系統(tǒng)與流程

文檔序號:12470471閱讀:832來源:國知局
一種控制紅包的方法以及系統(tǒng)與流程

本發(fā)明涉及一種控制紅包的方法以及系統(tǒng)。



背景技術(shù):

在當今互聯(lián)網(wǎng)行業(yè)高速發(fā)展的時代,搶紅包這種線上的溝通交友方式,已經(jīng)越來越受到廣大人民群眾的追捧;當大量用戶爭搶同一個紅包的操作時,訪問量的上升,多進程的開辟,此時相對應(yīng)于服務(wù)器則需要較高的性能要求和網(wǎng)絡(luò)質(zhì)量。

在搶紅包的高峰期,存在著紅包個數(shù)少,搶紅包用戶多的情況。在此情況下,存在著同一時刻多用戶搶同一個紅包,或者已經(jīng)被搶的紅包還沒來得及修改紅包狀態(tài)極有可能被其他用戶再次爭搶。因此,如何讓紅包有序的被用戶獲取、避免每次爭搶紅包時獲取數(shù)據(jù)的不一致是紅包系統(tǒng)中主要處理的核心問題。



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

本發(fā)明要解決的技術(shù)問題,在于提供一種控制紅包的方法以及系統(tǒng),使得處理速度加快,并降低了數(shù)據(jù)庫壓力。

本發(fā)明之一是這樣實現(xiàn)的:一種控制紅包的方法,包括如下步驟:

步驟1、服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值;

步驟2、服務(wù)器根據(jù)用戶的先后順序,依次將子紅包的序列值分配給用戶;

步驟3、根據(jù)序列值將子紅包的金額分配給對應(yīng)的用戶。

進一步地,所述步驟1進一步具體為:服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值,并存入服務(wù)器數(shù)據(jù)緩存中。

進一步地,所述步驟2進一步具體為:服務(wù)器根據(jù)用戶的先后順序,將一子紅包的序列值分配給一用戶,之后進入步驟3;或者服務(wù)器根據(jù)用戶的先后順序,依次將限定個數(shù)的子紅包的序列值分配給限定個數(shù)的用戶。

進一步地,所述步驟3進一步具體為:服務(wù)器開啟一進程,并開啟共享內(nèi)存鎖,之后根據(jù)序列值為用戶分配子紅包的金額,之后服務(wù)器關(guān)閉共享內(nèi)存鎖;若存在子紅包未分配,則進入步驟2。

本發(fā)明之二是這樣實現(xiàn)的:一種控制紅包的系統(tǒng),包括如下模塊:

設(shè)置模塊,服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值;

分配序列值模塊,服務(wù)器根據(jù)用戶的先后順序,依次將子紅包的序列值分配給用戶;

控制紅包模塊,根據(jù)序列值將子紅包的金額分配給對應(yīng)的用戶。

進一步地,所述設(shè)置模塊進一步具體為:服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值,并存入服務(wù)器數(shù)據(jù)緩存中。

進一步地,所述分配序列值模塊進一步具體為:服務(wù)器根據(jù)用戶的先后順序,將一子紅包的序列值分配給一用戶,之后進入步驟3;或者服務(wù)器根據(jù)用戶的先后順序,依次將限定個數(shù)的子紅包的序列值分配給限定個數(shù)的用戶。

進一步地,所述控制紅包模塊進一步具體為:服務(wù)器開啟一進程,并開啟共享內(nèi)存鎖,之后根據(jù)序列值為用戶分配子紅包的金額,之后服務(wù)器關(guān)閉共享內(nèi)存鎖;若存在子紅包未分配,則進入分配序列值模塊。

本發(fā)明具有如下優(yōu)點:本發(fā)明一種控制紅包的方法以及系統(tǒng),規(guī)避了mysql數(shù)據(jù)庫在高并發(fā)時,使用加鎖操作,大幅降低數(shù)據(jù)庫的性能,吞吐量下降;在資源端,將紅包信息cache在數(shù)據(jù)緩存里,避免第一級邏輯判斷時對數(shù)據(jù)庫大量的訪問鎖操作,分配的資源,減少數(shù)據(jù)庫的負擔;之后通過調(diào)用子進程,批量串行處理并發(fā)的紅包數(shù)據(jù),之后在與mysql鏈接,實行數(shù)據(jù)的更新,達到無鎖等待,大幅提升性能。

附圖說明

下面參照附圖結(jié)合實施例對本發(fā)明作進一步的說明。

圖1為本發(fā)明方法執(zhí)行流程圖。

圖2為本發(fā)明系統(tǒng)的原理框圖。

圖3為本發(fā)明紅包與子紅包的關(guān)系示意圖。

具體實施方式

如圖1和圖3所示,本發(fā)明控制紅包的方法,包括如下步驟:

步驟1、服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值,并存入服務(wù)器數(shù)據(jù)緩存中;

步驟2、服務(wù)器根據(jù)用戶的先后順序,將一子紅包的序列值分配給一用戶,之后進入步驟3;或者服務(wù)器根據(jù)用戶的先后順序,依次將限定個數(shù)的子紅包的序列值分配給限定個數(shù)的用戶;

步驟3、服務(wù)器開啟一進程,并開啟共享內(nèi)存鎖,之后根據(jù)序列值為用戶分配子紅包的金額,之后服務(wù)器關(guān)閉共享內(nèi)存鎖;若存在子紅包未分配(即服務(wù)器數(shù)據(jù)緩存中設(shè)有子紅包的庫存量,該庫存量不為零時表示存在子紅包未分配),則進入步驟2。

如圖2和圖3所示,本發(fā)明控制紅包的系統(tǒng),包括如下模塊:

設(shè)置模塊,服務(wù)器將紅包分為限定個子紅包,設(shè)置每個子紅包的金額以及序列值,并存入服務(wù)器數(shù)據(jù)緩存中;

分配序列值模塊,服務(wù)器根據(jù)用戶的先后順序,將一子紅包的序列值分配給一用戶,之后進入步驟3;或者服務(wù)器根據(jù)用戶的先后順序,依次將限定個數(shù)的子紅包的序列值分配給限定個數(shù)的用戶;

控制紅包模塊,服務(wù)器開啟一進程,并開啟共享內(nèi)存鎖,之后根據(jù)序列值為用戶分配子紅包的金額,之后服務(wù)器關(guān)閉共享內(nèi)存鎖;若存在子紅包未分配,則進入分配序列值模塊。

數(shù)據(jù)庫中建立紅包維度表,包含發(fā)包者、庫存、總金額、訂單等,相關(guān)紅包信息的表;數(shù)據(jù)庫中建立搶紅包記錄表,子紅包序列值、紅包ID、子紅包金額、分配情況等;在服務(wù)器數(shù)據(jù)緩存中處理好之后,再將兩個數(shù)據(jù)庫中的表進行修改,達到無鎖等待,大幅提升性能,并降低數(shù)據(jù)庫的壓力。

雖然以上描述了本發(fā)明的具體實施方式,但是熟悉本技術(shù)領(lǐng)域的技術(shù)人員應(yīng)當理解,我們所描述的具體的實施例只是說明性的,而不是用于對本發(fā)明的范圍的限定,熟悉本領(lǐng)域的技術(shù)人員在依照本發(fā)明的精神所作的等效的修飾以及變化,都應(yīng)當涵蓋在本發(fā)明的權(quán)利要求所保護的范圍內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
侯马市| 汶上县| 易门县| 陵水| 时尚| 留坝县| 皋兰县| 秀山| 桑植县| 介休市| 浦东新区| 晋宁县| 化隆| 南溪县| 崇左市| 琼中| 阜阳市| 拉萨市| 襄城县| 通江县| 晋城| 阜南县| 高密市| 德钦县| 左贡县| 屏南县| 根河市| 志丹县| 万载县| 安达市| 平利县| 桂平市| 五常市| 仪征市| 黄陵县| 伊吾县| 祁连县| 昭通市| 江津市| 元谋县| 临安市|