在IPv6網(wǎng)絡(luò)推行的初期,用于監(jiān)控學(xué)校的網(wǎng)絡(luò)狀況與網(wǎng)站運(yùn)行狀態(tài)。
日前,本刊采訪了在第四屆下一代互聯(lián)網(wǎng)技術(shù)創(chuàng)新大賽中榮獲乙組三等獎(jiǎng)的項(xiàng)目團(tuán)隊(duì)隊(duì)長(zhǎng)封寒松,針對(duì)他們開發(fā)的《全國(guó)教育行業(yè)IPv6資源共享與監(jiān)測(cè)平臺(tái)》這一項(xiàng)目進(jìn)行了詳細(xì)介紹。
《中國(guó)教育網(wǎng)絡(luò)》:請(qǐng)介紹《全國(guó)教育行業(yè)IPv6資源共享與監(jiān)測(cè)平臺(tái)》這一項(xiàng)目的基本情況與最新進(jìn)展?
封寒松:本項(xiàng)目基于分布式架構(gòu)和自行開發(fā)的IPv6爬蟲和搜索引擎,實(shí)現(xiàn)了對(duì)全國(guó)各省市/學(xué)校的IPv6網(wǎng)站情況持續(xù)開展監(jiān)測(cè)。
我們計(jì)劃逐步開展以下工作,包括對(duì)網(wǎng)站的歷史爬蟲結(jié)果的留存與優(yōu)化,對(duì)非HTML數(shù)據(jù)(如Office文件、PDF文件)的解析,網(wǎng)站前端的可視化效果優(yōu)化與GEDB數(shù)據(jù)實(shí)現(xiàn)定期同步等。
《中國(guó)教育網(wǎng)絡(luò)》:開展該項(xiàng)目的初衷是什么?目前的應(yīng)用效果怎樣?
封寒松:開展該項(xiàng)目的最初目的是用于統(tǒng)計(jì)上海市內(nèi)高校的IPv6網(wǎng)站的運(yùn)行情況。作為上海交大網(wǎng)絡(luò)中心統(tǒng)計(jì)工作的數(shù)據(jù)來(lái)源,項(xiàng)目可在IPv6網(wǎng)絡(luò)推行的初期,用于監(jiān)控學(xué)校的網(wǎng)絡(luò)狀況與網(wǎng)站運(yùn)行狀態(tài),作為即時(shí)的監(jiān)控和分析參考。目前項(xiàng)目運(yùn)行狀況良好,并在持續(xù)更新中。
《中國(guó)教育網(wǎng)絡(luò)》:在應(yīng)用IPv6技術(shù)進(jìn)行該項(xiàng)目時(shí),有何難點(diǎn)?如何解決?
封寒松:難點(diǎn)在于大量的高并發(fā)請(qǐng)求,對(duì)于服務(wù)器性能要求較高。我們?cè)趯?duì)代碼進(jìn)行優(yōu)化的同時(shí),也更換了可以滿足項(xiàng)目需要的服務(wù)器。
具體而言,本平臺(tái)的技術(shù)構(gòu)建難點(diǎn)包括大量域名的DNS探測(cè)、對(duì)海量網(wǎng)站的高頻存活檢測(cè)、對(duì)海量網(wǎng)站做定期截圖、對(duì)系統(tǒng)內(nèi)網(wǎng)站URL抓取/收錄/檢索、對(duì)大量網(wǎng)站的歷史快照和DNS解析記錄進(jìn)行統(tǒng)計(jì)等。經(jīng)過多次反復(fù)調(diào)試,我們進(jìn)行了以下可行性分析:
1.對(duì)于DNS檢測(cè):使用自研的DNS反向代理服務(wù)器(PunkDNS)。將DNS檢測(cè)時(shí)產(chǎn)生的DNS流量負(fù)載均衡到多臺(tái)后端DNS服務(wù)器上,可以解決單臺(tái)DNS服務(wù)器性能不夠的問題。

第四屆下一代互聯(lián)網(wǎng)技術(shù)創(chuàng)新大賽現(xiàn)場(chǎng)
2.對(duì)于大量網(wǎng)站的高頻檢測(cè):使用自研的抓取引擎。該抓取引擎現(xiàn)負(fù)責(zé)全國(guó)教育系統(tǒng)20萬(wàn)網(wǎng)站的存活檢測(cè),已經(jīng)在線上系統(tǒng)部署,穩(wěn)定性和擴(kuò)展性已得到檢驗(yàn)。
3.對(duì)于大量網(wǎng)站的定期截圖:使用對(duì)于截圖需求優(yōu)化過的Chromium headless瀏覽器實(shí)現(xiàn)對(duì)網(wǎng)站的定期截圖。
4.對(duì)大量URL的抓取/收錄/檢索:使用自研爬蟲引擎與開源的ElasticSearch實(shí)現(xiàn)。經(jīng)過在實(shí)際系統(tǒng)應(yīng)用,該架構(gòu)能夠解決千萬(wàn)量級(jí)的URL的抓取/收錄/檢索。
《中國(guó)教育網(wǎng)絡(luò)》:團(tuán)隊(duì)成員如何分工協(xié)作?
封寒松:團(tuán)隊(duì)由上海交通大學(xué)網(wǎng)絡(luò)信息中心副主任姜開達(dá)與東南大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院講師楊望帶隊(duì),分別主持推動(dòng)了GEDB與IPDB這兩大平臺(tái)的開發(fā)和落地使用。團(tuán)隊(duì)成員主要有三人,分別負(fù)責(zé)網(wǎng)站的前后端開發(fā)與項(xiàng)目運(yùn)維,主要包括網(wǎng)站平臺(tái)開發(fā)、新舊功能維護(hù)、存入數(shù)據(jù)管理、服務(wù)器嗅探,全國(guó)教育類站點(diǎn)的存活監(jiān)控、對(duì)網(wǎng)站進(jìn)行安全監(jiān)測(cè)等一系列工作。
在GEDB的開發(fā)過程中,成員工作內(nèi)容劃分清楚,在姜老師的帶領(lǐng)下積極溝通,保證了項(xiàng)目開發(fā)的穩(wěn)定與迅速迭代。同時(shí),團(tuán)隊(duì)累計(jì)了一系列的知識(shí),目前有自研的高并發(fā)爬蟲框架、一套較為完備的爬蟲、入庫(kù)、索引體系,一套對(duì)定時(shí)任務(wù)統(tǒng)計(jì)、大規(guī)模數(shù)據(jù)存儲(chǔ)的解決方案。目前已經(jīng)完成IPDB與網(wǎng)站后臺(tái)數(shù)據(jù)的對(duì)接、網(wǎng)站前端的大致設(shè)計(jì)、GEDB爬蟲框架的移植。