真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置-創(chuàng)新互聯(lián)

如果我們用 Splash 來(lái)做 JavaScript 動(dòng)態(tài)渲染的頁(yè)面的抓取的話,如果爬取的量非常大,任務(wù)非常多,如果我們用一個(gè) Splash 服務(wù)來(lái)處理的話未免壓力太大了,所以我們可以考慮搭建一個(gè)負(fù)載均衡器來(lái)把壓力分散到各個(gè)服務(wù)器上,這樣相當(dāng)于多臺(tái)機(jī)器多個(gè)服務(wù)共同參與任務(wù)的處理,可以減小單個(gè) Splash 服務(wù)的壓力。

成都創(chuàng)新互聯(lián)公司專(zhuān)注于企業(yè)營(yíng)銷(xiāo)型網(wǎng)站、網(wǎng)站重做改版、天心網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站制作、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為天心等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

1. 配置Splash服務(wù)

要搭建 Splash 負(fù)載均衡首先我們需要有多個(gè) Splash 服務(wù),假如在這里我在四臺(tái)遠(yuǎn)程主機(jī)的 8050 端口上都開(kāi)啟了 Splash 服務(wù),它們的服務(wù)地址分別為:41.159.27.223:8050、41.159.27.221:8050、41.159.27.9:8050、41.159.117.119:8050,四個(gè)服務(wù)完全一致,都是通過(guò) Docker 的 Splash 鏡像開(kāi)啟的,訪問(wèn)任何一個(gè)服務(wù)都可以使用 Splash 服務(wù)。

2. 配置負(fù)載均衡

接下來(lái)我們可以選用任意一臺(tái)帶有公網(wǎng) IP 的主機(jī)來(lái)配置負(fù)載均衡,首先需要在這臺(tái)主機(jī)上裝好 Nginx,然后修改 Nginx 的配置文件 nginx.conf,添加如下內(nèi)容:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

這樣我們通過(guò) upstream 字段定義了一個(gè)名字叫做 splash 的服務(wù)集群配置,least_conn 代表最少鏈接負(fù)載均衡,它適合處理請(qǐng)求處理時(shí)間長(zhǎng)短不一造成服務(wù)器過(guò)載的情況。

或者我們也可以不指定配置,配置如下:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

這樣默認(rèn)以輪詢(xún)策略實(shí)現(xiàn)負(fù)載均衡,每個(gè)服務(wù)器的壓力相同,此策略適合服務(wù)器配置相當(dāng),無(wú)狀態(tài)且短平快的服務(wù)使用。

另外我們還可以指定權(quán)重,配置如下:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

我們通過(guò) weight 指定了各個(gè)服務(wù)的權(quán)重,權(quán)重越高分配到處理的請(qǐng)求越多,假如不同的服務(wù)器配置差別比較大的話,就可以使用此種配置。

最后還有一種 IP 哈希負(fù)載均衡,配置如下:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

服務(wù)器根據(jù)請(qǐng)求客戶端的 IP 地址進(jìn)行哈希計(jì)算,確保使用同一個(gè)服務(wù)器響應(yīng)請(qǐng)求,這種策略適合有狀態(tài)的服務(wù),如用戶登錄后訪問(wèn)某個(gè)頁(yè)面的情形。不過(guò)對(duì)于 Splash 來(lái)說(shuō)不需要。

我們可以根據(jù)不同的情形選用不同的配置,配置完成后重啟一下 Nginx 服務(wù):

sudo nginx-sreload

這樣直接訪問(wèn) Nginx 所在服務(wù)器的 8050 端口即可實(shí)現(xiàn)負(fù)載均衡了。

3. 配置認(rèn)證

現(xiàn)在 Splash 是公開(kāi)訪問(wèn)的,如果我們不想讓其被公開(kāi)訪問(wèn)還可以配置認(rèn)證,仍然借助于 Nginx 即可,可以在 server 的 location 字段中添加一個(gè) auth_basic 和 auth_basic_user_file 字段,配置如下:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

在這里使用的用戶名密碼配置放置在 /etc/nginx/conf.d 目錄,我們需要使用 htpasswd 命令創(chuàng)建,例如創(chuàng)建一個(gè)用戶名為 admin 的文件,命令如下:

htpasswd-c.htpasswdadmin

接下就會(huì)提示我們輸入密碼,輸入兩次之后,就會(huì)生成密碼文件,查看一下內(nèi)容:

cat.htpasswd

admin:5ZBxQr0rCqwbc

配置完成之后我們重啟一下 Nginx 服務(wù),運(yùn)行如下命令:

sudo nginx-sreload

這樣訪問(wèn)認(rèn)證就成功配置好了。

4. 測(cè)試

最后我們可以用代碼來(lái)測(cè)試一下負(fù)載均衡的配置,看看到底是不是每次請(qǐng)求會(huì)切換IP,利用 http://httpbin.org/get 測(cè)試即可,代碼實(shí)現(xiàn)如下:

網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置

這里的 URL 中的 splash 請(qǐng)自行替換成自己的 Nginx 服務(wù)器 IP,在這里我修改了 Hosts 添加了 splash 別名。

多次運(yùn)行代碼之后可以發(fā)現(xiàn)每次請(qǐng)求的 IP 都會(huì)變化:

如第一次的結(jié)果:

41.159.27.223

第二次的結(jié)果:

41.159.27.9

這就說(shuō)明負(fù)載均衡已經(jīng)成功實(shí)現(xiàn)了。

5. 結(jié)語(yǔ)

本節(jié)我們成功實(shí)現(xiàn)了負(fù)載均衡的配置,配置了負(fù)載均衡之后可以多個(gè) Splash 服務(wù)共同合作,減輕單個(gè)服務(wù)的負(fù)載,還是比較有用的。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


分享標(biāo)題:網(wǎng)絡(luò)爬蟲(chóng)之Splash負(fù)載均衡配置-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://weahome.cn/article/doccdj.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部