亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

node.js - 對(duì)將近2000個(gè)網(wǎng)頁(yè)發(fā)起同時(shí)20個(gè)的并發(fā)請(qǐng)求,出去request請(qǐng)求失敗

瀏覽:203日期:2024-08-04 11:51:57

問(wèn)題描述

代碼不長(zhǎng),如下,爬取的是 雪中悍刀行的所有章節(jié)內(nèi)容

var http = require(’http’);var $ = require(’cheerio’);var async = require(’async’);var iconv = require(’iconv-lite’);var fs = require(’fs’);var chapterNo = 1;var url = ’http://www.biquku.com/0/761/’, hrefList = {};var curCount = 0;var getChapter = function(url, cb) { ++ curCount; console.log(’讀取:’ + url + ’中, 同時(shí)有’ + curCount + ’并發(fā)中’); var req = http.request(url, function(res) { var buffer_arr = []; var buffer_len = 0; if (res.statusCode == 200) { res.on(’data’, function(chunk) {buffer_arr.push(chunk);buffer_len += chunk.length; }); res.on(’end’, function() {var $content = $(iconv.decode(Buffer.concat(buffer_arr, buffer_len), ’gbk’)).find(’#content’).text();-- curCount;cb(null , $content); }) } else { console.log('status: ' + res.statusCode); getChapter(url, cb); } }); req.on(’error’, function(err) { console.log(’request-err’); console.error(err); }) req.end();}var req = http.request(url, function(res) { var buffer_arr = []; var buffer_len = 0; res.on(’data’, function(chunk) { buffer_arr.push(chunk); buffer_len += chunk.length; }); res.on(’end’, function() { var $html = $(iconv.decode(Buffer.concat(buffer_arr, buffer_len), ’gbk’)); var $urls = $html.find(’#list>dl>dd>a’); var $a = ’’; for (var i = 0; i < $urls.length; i++) { $a = $($urls[i]); hrefList[$a.text()] = (function(url) {return function(cb) { setTimeout(function() { getChapter(url, cb); }, 0)} })(url.concat($a.attr(’href’))); } console.time(’novel’); async.parallelLimit(hrefList, 20, function(err, res) { if (err) {console.log('parallel-err:');console.error(err); } else {for (var key of Object.keys(res)) { var fileName = ’./’ + key + ’.txt’; (function(key){ fs.writeFile(fileName, res[key], function(err) { if (err) {console.log(’writefile-err:’);console.error(err); } else {console.log(key + ’: success’); } }) })(key)}console.timeEnd(’novel’); } }) })})req.on(’error’, function(e) { console.error(e);})req.end();

然后下面是請(qǐng)求報(bào)錯(cuò)的地方node.js - 對(duì)將近2000個(gè)網(wǎng)頁(yè)發(fā)起同時(shí)20個(gè)的并發(fā)請(qǐng)求,出去request請(qǐng)求失敗

希望大家能告訴我下,怎么解決呢?還有我這個(gè)算并發(fā)請(qǐng)求嗎,因?yàn)槲沂峭ㄟ^(guò)setTimeout(func,0)這樣來(lái)發(fā)起發(fā)起http請(qǐng)求的?經(jīng)過(guò)后來(lái)測(cè)試發(fā)現(xiàn),200多張能成功讀取,到了300就會(huì)發(fā)生錯(cuò)誤了。。

問(wèn)題解答

回答1:

你這個(gè)確實(shí)是并發(fā)請(qǐng)求,20個(gè)會(huì)不會(huì)有點(diǎn)多,可能這個(gè)服務(wù)器扛不住了吧。 調(diào)小一點(diǎn)比如10個(gè)或5個(gè)并發(fā)試試呢

更新:剛才在我電腦上跑了下你的這段代碼,沒(méi)有出現(xiàn)問(wèn)題描述中的錯(cuò)誤。大概也許還有個(gè)原因是你的網(wǎng)不行吧。

主站蜘蛛池模板: 国产精品第一页在线观看 | 公妇乱淫日本免费观看 | 色综合久久久久久中文网 | 性色xxx视频| 天天狠狠色噜噜 | 欧美r级毛片在线播放 | 黄网站在线观看永久免费 | 国产精品99久久99久久久看片 | 欧美图片一区二区三区 | 成人在线观看视频免费 | 欧美黄色片免费 | 国产精品午夜在线播放a | 成年超爽大片免费视频播放 | 国产在线日本 | 欧美一区二区精品系列在线观看 | 一级一级 a爱片免费视频 | 日韩中文字幕久久久经典网 | 一级毛片私人影院老司机 | 啪啪网视频 | 欧美护士激情第一欧美精品 | 手机看片日韩日韩国产在线看 | 成人午夜小视频手机在线看 | 久久国产影视免费精品 | 黄色片香蕉视频 | 有没有毛片网站 | 国产成人亚洲精品一区二区在线看 | 草草草在线观看 | 欧美色欧美亚洲高清在线视频 | 久久久久国产午夜 | 狠狠色婷婷综合天天久久丁香 | 国产精品电影久久 | 亚洲国产成人手机在线电影bd | 在线观看日韩精品 | 亚洲第一黄色网址 | 欧美在线观看一区二区三区 | 欧美日韩a | 最新69成人精品毛片 | 日韩中文字幕在线播放 | 中国人黑人xxⅹ性猛 | 美国免费一级片 | 一区二区三区四区欧美 |