欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot利用redis、Redisson處理并發(fā)問題的操作

 更新時間:2021年06月18日 11:02:54   作者:蘇葛  
這篇文章主要介紹了springboot利用redis、Redisson處理并發(fā)問題的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

一、引入問題

在工作中,遇到的接口基本都是長這樣的:

如下為一個庫存扣減的接口。從redis中獲取庫存數(shù)量,然后扣減一個數(shù)量

問題這個接口在并發(fā)的情況下是有問題,可以用jmeter測試一下(用postman壓力測試了一下,沒有測出并發(fā)問題。網(wǎng)上有的博客說postman沒法測試并發(fā))

jmeter設置:100個并發(fā)

打印結(jié)果:

問題很嚴重呀

解決方案,優(yōu)化如下:

jmeter設置:101個并發(fā),stock=100,則正確結(jié)果是應該會出現(xiàn)一次“扣減失敗,庫存不足”

打印如下,沒毛病

二、如上只是單應用的情況,那如果是集群呢,結(jié)果會是怎么樣?

1、nginx配置

2、修改本地hosts文件

c:\windows\system32\drivers\etc

3、利用idea啟動兩個應用,端口號分別為8080,8090,idea記得修改啟動配置

jmeter測試:

兩個應用的后臺打印:從日志來看,synchronized沒有起到作用。畢竟synchronized是JVM級別的,沒法對集群的情況進行加鎖

解決方案:引入今天的大佬,分布式鎖:Redisson

代碼優(yōu)化如下:

jmeter測試:101個線程,庫存數(shù)量100

后臺打?。?/p>

出現(xiàn)了一次扣減失敗的情況,運行正常

注意點:注意引入redisson比較新的版本,避免出現(xiàn)一些遠程連接斷絕的一些問題

源碼地址:https://github.com/windyNaruto9833/redis

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java中字符串String常用方法詳解

    Java中字符串String常用方法詳解

    這篇文章主要給大家介紹了關于Java中字符串String常用方法的相關資料,String表示字符串類型,是引用數(shù)據(jù)類型不是基本數(shù)據(jù)類型,String是類且是最終類,不能有子類,文中將用法介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • 關于intellij idea打開就閃退或關閉詳細解決辦法

    關于intellij idea打開就閃退或關閉詳細解決辦法

    這篇文章主要介紹了關于intellij idea打開就閃退或關閉詳細解決辦法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Mybatis mapper接口動態(tài)代理開發(fā)步驟解析

    Mybatis mapper接口動態(tài)代理開發(fā)步驟解析

    這篇文章主要介紹了Mybatis mapper接口動態(tài)代理開發(fā)步驟解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • Java根據(jù)Request獲取客戶端IP

    Java根據(jù)Request獲取客戶端IP

    這篇文章主要介紹了Java根據(jù)Request獲取客戶端IP的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-05-05
  • javaweb實現(xiàn)在線支付功能

    javaweb實現(xiàn)在線支付功能

    這篇文章主要為大家詳細介紹了javaweb實現(xiàn)在線支付功能的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Spring Boot Swagger2使用方法過程解析

    Spring Boot Swagger2使用方法過程解析

    這篇文章主要介紹了Spring Boot Swagger2使用方法過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例

    Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例

    這篇文章主要介紹了Mybatis 動態(tài)sql if 判讀條件等于一個數(shù)字的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Java ArrayAdapter用法案例詳解

    Java ArrayAdapter用法案例詳解

    這篇文章主要介紹了Java ArrayAdapter用法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • java睡眠排序算法示例實現(xiàn)

    java睡眠排序算法示例實現(xiàn)

    這篇文章主要為大家介紹了java睡眠排序算法的示例實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-02-02
  • 在springboot中注入FilterRegistrationBean不生效的原因

    在springboot中注入FilterRegistrationBean不生效的原因

    這篇文章主要介紹了在springboot中注入FilterRegistrationBean不生效的原因及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08

最新評論