
阿里云
- 優(yōu)點(diǎn):方便、彈性伸縮、減少運(yùn)維成本(有沒有被不靠譜運(yùn)維坑過的經(jīng)歷...)
- 缺點(diǎn):畢竟數(shù)據(jù)放在人家服務(wù)器上(阿里也不會(huì)偷窺你的數(shù)據(jù),哈哈...),對(duì)于數(shù)據(jù)安全較高的公司不太適合.比如我的前公司,做征信,各種跳板機(jī),堡壘機(jī),數(shù)據(jù)當(dāng)然要放在自建服務(wù)器上.
阿里云服務(wù)器搭建
- 百度一下,立馬搞定
- 如果只是搭建個(gè)人服務(wù)器,試驗(yàn)自己的ideas建議使用阿里的學(xué)生優(yōu)惠版(不是學(xué)生,已經(jīng)畢業(yè)了? 弟弟妹妹上大學(xué)的借個(gè)學(xué)生證咯...) 傳送門
爬蟲監(jiān)控系統(tǒng)demo簡(jiǎn)介
源碼請(qǐng)參考github
demo體驗(yàn) 測(cè)試賬號(hào): marilyn@jayo.biz 密碼:123456
- 技術(shù)棧:
- Flask 輕量級(jí)的python后端服務(wù)框架
- MySQL 數(shù)據(jù)庫(kù)
- Scrapy 爬蟲框架
- Reids 爬蟲消息隊(duì)列
- gentelella 前端框架
- 部署
采用gunicorn作為wsgi服務(wù)
-
supervisor監(jiān)控gunicorn進(jìn)程(掛掉自動(dòng)拉起)
例如,supervisor配置文件:[program:ScrapyMonitorPlatform] command=/.../ENV/flask/bin/python /.../ENV/flask/bin/gunicorn -w 4 -b 127.0.0.1:5001 --worker-class=gevent --chdir /home/zhuangshui/flask/ wsgi:app_scrapy autostart=true autorestart=true startsecs=5 priority=1 stopasgroup=true killasgroup=true command命令解釋:
* /.../ENV/flask/bin/python -- python虛擬環(huán)境下的python解釋器位置
* /.../ENV/flask/bin/gunicorn -- python虛擬環(huán)境下的gunicorn位置
* -w 4 -- 啟了4個(gè)worker
* -b 127.0.0.1:5001 -- 綁定IP 127.0.0.1 端口5001,因此外網(wǎng)無法直接訪問,需要 nginx反向代理轉(zhuǎn)發(fā)一下
* --worker-class=gevent -- 按gevent 方式運(yùn)行協(xié)程模式,提高并發(fā)處理能力
* --chdir /home/zhuangshui/flask/ -- 切換到工程目錄
* wsgi:app_scrapy -- 運(yùn)行wsgi.py文件中的app_scrapy