成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

小程序網(wǎng)絡(luò)最大并發(fā)限制解決思路

JerryWangSAP / 1828人閱讀

摘要:小程序關(guān)于請求的限制默認超時時間和最大超時時間都是的最大并發(fā)限制是個網(wǎng)絡(luò)請求的不可設(shè)置。其格式固定為,其中為小程序的,為小程序的版本號,版本號為表示為開發(fā)版體驗版以及審核版本,版本號為表示為開發(fā)者工具,其余為正式版本。

小程序關(guān)于request請求的限制

默認超時時間和最大超時時間都是 60s

request、uploadFile、downloadFile 的最大并發(fā)限制是 10 個

網(wǎng)絡(luò)請求的 referer header 不可設(shè)置。其格式固定為 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid} 為小程序的 appid,{version} 為小程序的版本號,版本號為 0 表示為開發(fā)版、體驗版以及審核版本,版本號為 devtools 表示為開發(fā)者工具,其余為正式版本。

小程序進入后臺運行后(非置頂聊天),如果 5s 內(nèi)網(wǎng)絡(luò)請求沒有結(jié)束,會回調(diào)錯誤信息 fail interrupted;在回到前臺之前,網(wǎng)絡(luò)請求接口調(diào)用都會無法調(diào)用。

有時候業(yè)務(wù)上需要同時請求10個以上的鏈接,針對這種情況需要延遲后續(xù)的請求,等當前請求完結(jié)后再去執(zhí)行后續(xù)的請求

解決思路
達到并發(fā)限制數(shù)量之后,延遲之后的請求,待之前的請求結(jié)束,再去發(fā)送之前延遲的請求

緩存當前請求的數(shù)量

// 使用閉包緩存當前的請求量
var req = (function(){
    var count = 0;
    var counter = function() {
        count--;
    };
    return function(fn) {
        if (count < 10) {
            count++;
            fn(counter);
        } else {
            setTimeout(req.bind(null, fn), 300);
        }
    };
})()

模擬20個異步事件

var a = function(fn){
    // 假設(shè)所有的異步事件都是2s后完成 
    setTimeout(()=>{
        console.log(new Date().getTime().toString().slice(-4))
        // 此處fn是req中的counter,在異步事件執(zhí)行之后,釋放其所占用的count
        fn()
    },2000)
   }
var b = Array.from({length:20});

b.map(()=>req(a))

結(jié)果驗證

可以看到前10個請求與后十個請求是間隔2s之后才發(fā)出的,即將請求十個一組分開,這樣就避免了10個并發(fā)請求限制下,請求丟失的問題

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/95859.html

相關(guān)文章

  • 物聯(lián)網(wǎng)高并發(fā)編程之單臺服務(wù)器最大并發(fā)TCP連接數(shù)

    摘要:對端,通過增加內(nèi)存修改最大文件描述符個數(shù)等參數(shù),單機最大并發(fā)連接數(shù)超過萬甚至上百萬是沒問題的,國外公司在產(chǎn)品環(huán)境中已做到萬并發(fā) [TOC] 前言 曾幾何時我們還在尋求網(wǎng)絡(luò)編程中C10K問題的解決方案,但是現(xiàn)在從硬件和操作系統(tǒng)支持來看單臺服務(wù)器支持上萬并發(fā)連接已經(jīng)沒有多少挑戰(zhàn)性了。 我們先假設(shè)單臺服務(wù)器最多只能支持萬級并發(fā)連接,其實對絕大多數(shù)應(yīng)用來說已經(jīng)遠遠足夠了,但是對于一些擁有很大用...

    leap_frog 評論0 收藏0
  • 程序圖片合成:異步并發(fā)渲染→同步阻塞渲染

    摘要:故事開始了,小程序圖片合成真機測試時,會報錯。所以只能將異步并發(fā)改為同步阻塞式渲染。 showImg(https://segmentfault.com/img/remote/1460000013228074); 故事開始了,小程序canvas圖片合成 真機測試時,會報錯:getImageInfo failed 。也就是說,我這邊異步請求50張圖片,每張圖片都是通過getImageInf...

    zhoutao 評論0 收藏0
  • 分布式系統(tǒng)關(guān)注點——想通關(guān)「限流」?只要這一篇

    摘要:之前有了解到哥的一部分讀者們沒有充分搞清楚限流和熔斷的關(guān)系。后者表示系統(tǒng)在同一時刻能處理的最大請求數(shù)量,比如次的并發(fā)。后續(xù)限流策略需要設(shè)定的具體標準數(shù)值就是從這些指標中來的。限流閾值不繼續(xù)處理請求。 如果這是第二次看到我的文章,歡迎掃描文末二維碼訂閱我喲~本文長度為2869字,建議閱讀8分鐘。 可能你在網(wǎng)上看過不少「限流」相關(guān)的文章,但是z哥的這篇可能是最全面,最深入淺出的一篇了(容我...

    CollinPeng 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<