P2P網路借貸系統 核心功能 使用者投標 業務講解

2021-06-26 08:33:49 字數 1017 閱讀 9957

使用者投標是p2p網路借貸系統的核心功能,相對比較複雜,為了更好地梳理業務和技術實現思路,特地詳細總結分析下。

輸入:使用者id-uid,標的id-lid,投標金額-amount

1.根據lid,獲得貸款標的資訊(優先從cache中取),不能為null,狀態status應該「合法」。

如果貸款標不存在,或者狀態不對,立即返回到前端,不再繼續後面的處理。

2.根據uid,查詢使用者的資訊。

貸款標的和使用者資訊是投標邏輯需要的。

3.投標檢查。

使用者的賬戶是否存在、賬戶餘額是否超過了投標金額amount。

4.根據uid、lid、amount等引數,構造投標tender物件,包含了投標需要的所有資訊。

5.獲得投標狀態資訊(事務鎖住搶標狀態,防止多個使用者同時投標;使用資料庫行級鎖,分布式情況下也可以使用)。

使用select ... for update 語句

6.累計投標金額,即把當前的投標總額加上當前投標使用者的「金額」。

這裡面存在乙個「爭議」,假設標的總額2000,已經投了1800,使用者投了300,這個時候300>200,理論上不能成功。

如果不成功,使用者搶到標卻無法投,可能很傷心;如果讓使用者投,有的使用者想「整投」,不想把錢「打散」,也可能很傷心。

為了簡化處理,一種方式是,把使用者投標的錢算成200,即最大可投資金額。

7.更新投標狀態。

8.儲存投標資訊tender物件。

9.扣除使用者的賬戶錢,減去剛剛投資的金額,實際操作為把使用者賬戶的錢轉到平台賬戶下。

存在乙個問題,一次標,把所有使用者的錢,轉到平台賬戶,會需要很多次轉賬。

因此,設立乙個比較特殊的「中間賬戶」,所有使用者的錢都轉到「中間賬戶」,等標滿了,一次性把中間賬戶的錢轉到平台賬戶下。

10.返回投標資訊,是否成功,投標金額等。

投標過程中的注意事項:

1.開啟事務。

2.資料庫行級鎖,鎖住投標狀態。

3.檢查使用者的可投資金額等前提條件檢查。

4.平台設立中間賬戶,減少轉賬產生的流水記錄。

P2P網路借貸系統 核心功能 使用者投標 業務解說

使用者投標是p2p網路借貸系統的核心功能。相對照較複雜,為了更好地梳理業務和技術實現思路,特地具體總結分析下。輸入 使用者id uid。標的id lid。投標金額 amount 1.依據lid,獲得貸款標的資訊 優先從cache中取 不能為null,狀態status應該 合法 假設貸款標不存在,或者...

P2P 網路核心技術 Gossip 協議

gossip protocol 也叫 epidemic protocol 流行病協議 實際上它還有很多別名,比如 流言演算法 疫情傳播演算法 等。這個協議的作用就像其名字表示的意思一樣,非常容易理解,它的方式其實在我們日常生活中也很常見,比如電腦病毒的傳播,森林大火,細胞擴散等等。gossip pr...

P2P網貸的核心系統

網貸的核心其實就是關注借款人以下兩點 1 到期還款 2 能付得起高利率 一般在30 以上,普遍在40 50 也就是說100塊錢1年下來要付息30塊以上。為什麼我這麼說呢?只要借款人達到這兩點,網貸平台就有大錢賺,投資人也有錢賺,大家皆大歡喜。怎麼樣讓借款人達到以上兩點的要求呢?也就是能預防風險的發生...