国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

成都建設(shè)網(wǎng)站分享搜索引擎 磁力吧

成都建設(shè)網(wǎng)站分享,搜索引擎 磁力吧,網(wǎng)頁美工設(shè)計(jì)需要學(xué)什么,萬潤 企業(yè)網(wǎng)站建設(shè)LUA腳本語言是C開發(fā)的,類似存儲(chǔ)過程,是為了實(shí)現(xiàn)完整的原子性操作,可以用來補(bǔ)充redis弱事務(wù)的缺點(diǎn). 1、LUA腳本的好處 2、Lua腳本限流實(shí)戰(zhàn) 支持分布式 import org.springframework.core.io.ClassPathResource; import org.springframework.data.redis…

LUA腳本語言是C開發(fā)的,類似存儲(chǔ)過程,是為了實(shí)現(xiàn)完整的原子性操作,可以用來補(bǔ)充redis弱事務(wù)的缺點(diǎn).

1、LUA腳本的好處

在這里插入圖片描述

2、Lua腳本限流實(shí)戰(zhàn)

支持分布式
在這里插入圖片描述

import org.springframework.core.io.ClassPathResource;
import org.springframework.data.redis.core.script.DefaultRedisScript;
import org.springframework.scripting.support.ResourceScriptSource;
import org.springframework.stereotype.Service;
import redis.clients.jedis.Jedis;/*** 分布式限流的服務(wù)類*/
@Service
public class IsAcquire {//引入一個(gè)Redis的Lua腳本的支持private DefaultRedisScript<Long> getRedisScript;//判斷限流方法---類似于RateLimiterpublic boolean acquire(String limitKey,int limit,int expire) throws  Exception{//連接RedisJedis jedis =  new Jedis("127.0.0.1",6379);getRedisScript =new  DefaultRedisScript<>();getRedisScript.setResultType(Long.class);//腳本執(zhí)行返回值 longgetRedisScript.setScriptSource(new ResourceScriptSource(new ClassPathResource("rateLimiter.lua")));Long result = (Long)jedis.eval(getRedisScript.getScriptAsString(),1,limitKey,String.valueOf(limit),String.valueOf(expire));if(result ==0){return false;}return true;}
}
import com.google.common.util.concurrent.RateLimiter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;/*** 類說明:接口類,搶購接口* http請(qǐng)求控制類  Contoller*/
@RestController
public class Controller {@AutowiredIsAcquire isAcquire;//手下的分布式限流//final  RateLimiter rateLimiter = RateLimiter.create(5);  //guava引入的令牌桶限流(非分布式,單機(jī))//秒殺接口@RequestMapping("/order")public String killProduct(@RequestParam(required = true) String name) throws Exception{//rateLimiter.tryAcquire(1); //調(diào)用if(isAcquire.acquire("iphone",10,60)){//60秒只能進(jìn)行10次System.out.println("業(yè)務(wù)成功!");return "恭喜("+name+"),搶到iphone!";}else{System.out.println("-----------業(yè)務(wù)被限流");return "對(duì)不起,你被限流了!";}}
}

rateLimiter.lua腳本如下:

--java端送入三個(gè)參數(shù)(1個(gè)key,2個(gè)param  )string
--limitKey(redi中key的值)
local key =KEYS[1];
--limit(次數(shù))
local times = ARGV[1];
--expire(S)
local expire = ARGV[2];
--對(duì)key-value中的 value +1的操作  返回一個(gè)結(jié)果local afterval=  redis.call('incr',key);
if afterval ==1 then --第一次redis.call('expire',key,tonumber(expire) )  --失效時(shí)間(1S)  TLL 1Sreturn 1; --第一次不會(huì)進(jìn)行限制
end
--不是第一次,進(jìn)行判斷
if afterval > tonumber(times) then--限制了return 0;
endreturn 1;

以上簡單的計(jì)數(shù)器的方式,就是一種固定窗口的算法,可以實(shí)現(xiàn)對(duì)單個(gè)接口的限流.

3、限流算法

在這里插入圖片描述

固定窗口算法的問題

在這里插入圖片描述
解決方案:改為滑動(dòng)窗口,避免固定窗口的臨界問題
滑動(dòng)窗口演示地址:

https://media.pearsoncmg.com/aw/ecs_kurose_compnetwork_7/cw/content/interactiveanimations/selective-repeat-protocol/index.html
漏桶算法

在這里插入圖片描述
在這里插入圖片描述
漏桶,令牌的算法的缺點(diǎn)就是時(shí)間復(fù)雜度:O(N),不適用于大并發(fā)的請(qǐng)求
滑動(dòng)窗口的缺點(diǎn)是需要雙方先定好協(xié)議

http://aloenet.com.cn/news/46761.html

相關(guān)文章:

  • html基礎(chǔ)網(wǎng)頁代碼快速排名優(yōu)化seo
  • 福清市百度seo天津seo培訓(xùn)
  • 建設(shè)網(wǎng)站的企業(yè)友情鏈接交換
  • 做的好的手機(jī)網(wǎng)站怎樣制作網(wǎng)頁設(shè)計(jì)
  • 重慶巫溪網(wǎng)站建設(shè)網(wǎng)站怎么開發(fā)
  • 淘寶美工與網(wǎng)站開發(fā)搜索引擎優(yōu)化seo論文
  • WordPress網(wǎng)頁加載時(shí)間網(wǎng)站優(yōu)化公司
  • 怎么做刷網(wǎng)站流量生意永久免費(fèi)自動(dòng)建站
  • 阿里巴巴網(wǎng)站怎么做全屏分類怎么找平臺(tái)推廣自己的產(chǎn)品
  • 網(wǎng)站建設(shè)項(xiàng)目設(shè)計(jì)報(bào)告海外營銷推廣
  • 開發(fā)建設(shè)網(wǎng)站網(wǎng)絡(luò)優(yōu)化大師
  • 如何推廣一個(gè)新的app優(yōu)化網(wǎng)站排名費(fèi)用
  • 網(wǎng)站免費(fèi)建站 圖標(biāo)seo全網(wǎng)營銷的方式
  • 網(wǎng)站制作營銷型seo常用工具
  • 東莞網(wǎng)站制作十強(qiáng)seo 培訓(xùn)教程
  • 商務(wù)網(wǎng)站開發(fā)騰訊企點(diǎn)客服
  • 建設(shè)一個(gè)公司網(wǎng)站寧波網(wǎng)站推廣優(yōu)化公司怎么樣
  • 中國電力建設(shè)股份有限公司官方網(wǎng)站廣州百度關(guān)鍵詞搜索
  • 酒店微信網(wǎng)站建設(shè)云優(yōu)化seo軟件
  • 深圳網(wǎng)站制作hi0755營銷qq下載
  • 濟(jì)南 營銷型網(wǎng)站建設(shè)企業(yè)培訓(xùn)課程
  • 有經(jīng)驗(yàn)的網(wǎng)站建設(shè)公司seo優(yōu)化服務(wù)是什么意思
  • h5網(wǎng)站設(shè)計(jì)欣賞免費(fèi)網(wǎng)站安全軟件大全
  • 學(xué)校網(wǎng)站建設(shè)招標(biāo)方案百度知道首頁官網(wǎng)
  • 租用服務(wù)器建設(shè)網(wǎng)站費(fèi)用win10優(yōu)化大師有用嗎
  • 德州做網(wǎng)站的競價(jià)托管服務(wù)多少錢
  • 無錫做公司網(wǎng)站的網(wǎng)絡(luò)搜索詞排名
  • 網(wǎng)站開發(fā)實(shí)用技術(shù)介紹南寧一站網(wǎng)網(wǎng)絡(luò)技術(shù)有限公司
  • 上海網(wǎng)站開發(fā)建優(yōu)秀的軟文廣告案例
  • 海淀區(qū)企業(yè)網(wǎng)站建設(shè)公司網(wǎng)站設(shè)計(jì)制作