精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一個蘿卜一個坑:短網址開發運維經驗總結分享

運維 系統運維
前段時間955短網址日重定向次數最高達400萬,主要開銷是重定向請求的用戶數據儲存與分析。分別經歷了內存瓶頸、IO 瓶頸后,高峰期達到 CPU 上限,幾乎榨干了機器,下文是經驗總結分享。

每個蘿卜下都隱藏一個坑。

前段時間955短網址日重定向次數最高達400萬,主要開銷是重定向請求的用戶數據儲存與分析。分別經歷了內存瓶頸、IO 瓶頸后,高峰期達到 CPU 上限,幾乎榨干了機器,下文是經驗總結分享。

前置條件

由于短網址很難盈利,硬件特別寒磣,帶著鐐銬跳舞反而別有風味,當然,人力投入,技術方面也不能和其他大網站比,所以如果要拍磚請輕下手——哎喲。

我們采用的硬件: 盛大云微型,1G內存,單核共享型 CPU。 后期追加了一個同等配置的內網機器做 MongoDB replSet。

Startup 硬件成本:

既然項目本身基本沒法帶來收益,要生存就只能充分壓榨硬件,大膽使用新技術。根據國內云的計費方式,一般收費的維度是

  • 內存:使用異步模式代替同步多進程。
  • 帶寬:2M雙線,301并不需要太多的帶寬開銷
  • 硬盤:云硬盤,按容量收費
  • CPU:單核

由此我們做了對應的技術選型:

  • Nginx:無需多說了吧?
  • Tornado:Facebook 開源的 python 異步微框架
  • MongoDB:性能好,熱數據少內存開銷也少
  • Redis:事實上 MongoDB 寫入的 IO 開銷太大
  • nodejs(with coffeescript):后期新增,node.js 是天生的異步
  • supervisord:監控進程

status

開發與運維

既然目前項目投入的開發和運維都只有我一個人,那就可以美其名曰:DevOps 啦。聽上去是不是很高端大氣國際化。

用戶特點

二八法則基本適用:20% 的 URL 占用了 80% 的資源(尤其是我們默認為所有短網址開啟了統計之后)。

監控先行

很多小團隊犯的第一個毛病就是不做監控,等到用戶來告訴你網站無法打開的時候就太晚了。為了省事我們用了監控寶和阿里云監控(主要阿里云監控有免費短信)。

每次出現無法打開網站的狀態時,都應該定位此次問題的原因。如果頻次增加,就要考慮應對策略了。loadavg 很好地反應了系統的負載,可以判斷是否硬件出現瓶頸。

如果是在事發時間,我們可以借助這些工具查看系統狀態:htop(定位哪個進程的問題)、iftop(是否有異常的流量和ip)、iotop(定位 io 瓶頸)。此外就是看日志。

如果事發時在睡覺,那么就看監控歷史記錄。

慘痛教訓一:硬盤容量——為將來留下后路

MongoDB在硬盤容量不夠的時候會拒絕啟動。而如果之前沒有使用 lvm 這類工具,將無法快速擴展容量,而國內的云不像 Linode 那么智能地在后臺提供容量的一鍵 resize(雖然這個功能曾把文件系統搞出錯了)。后果很可能是停機幾個小時。

慘痛教訓二:最大打開文件描述符

異步模式下不可避免遇到新問題——最大打開文件描述符。我們先后遇上了 tornado 和 nginx 的最大打開文件描述符問題。 tornado 的表現為:CPU 100%,日志里出現500;Nginx 則在日志里報錯,打開緩慢。

要避免此類問題,要做相應 ulimit 的設置。

用ulimit -n顯示的只是當前會話的(!important)。正確做法是查看進程的 limits: cat /proc/{$pid}/limits

Nginx 的配置文件里還需要設置兩個參數:

worker_connections  9999; #根據自己的情況設置
worker_rlimit_nofile 60000; #根據自己的情況設置

下圖是 nginx 達到上限的監控圖,很明顯被卡在1000左右了 —— Linux 默認限制為 1024。 

nginx

慘痛教訓三:Python 不是天生異步的語言

說實話,用 Python 來設計的過程可不是一個愉快的過程。為了避免潛在編碼問題,我們使用了 python3。下面的問題是:

缺乏異步的支持:

  • Redis 異步驅動只支持 Python2(當然,等了大約半年后 tornado-redis 的作者終于更新了對 python3 的支持)。
  • 不少組件仍然無法支持 python3, pip install 后直接報錯的感覺就是:傻眼了。
  • Bitly 的 asyncmongo 簡直是沒有文檔,最后只能選了 Motor。
  • Tornado 本身的文檔也不夠詳盡

后來一部分組件使用 nodejs 開發后,簡直是相見恨晚,CoffeeScript 語法糖的表現也很出色。

慘痛教訓四:謹慎選用數據庫

數據庫幾乎是web應用里最關鍵的一部分,越是有大局觀的技術人員越會謹慎選型。 事實上我們把所有壓力都放 MongoDB 的做法還是過于激進了。

MongoDB 的范式化與反范式化。

幾乎所有對 MongoDB一知半解的人都會告訴你不要用 SQL 的思維來思考 MongoDB,要使用內嵌文檔來實現需求。但是他們忘記告訴你,不斷增長的內嵌文檔將導致 IO 瓶頸(參考《深入學習 MongoDB》73頁)。

事實上范式化和反范式化(內嵌文檔)還有很多要考慮的因素。

復雜查詢時 MongoDB 的無力

在面對需要計算的查詢時,MongoDB 的 map-reduce 很慢;復雜情況下對內嵌文檔處理有難度;Documents 比 MySQL 更少。年輕人,不要在 mysql 遇到問題時第一時間想到替換數據庫。

就這個項目而言,統計部分要快速出多樣報表時明顯有難度。

不要等到著火了才想起 MongoDB replSet

  1. 如果 MongoDB 寫入壓力大,并且沒有做分片,那么單純加機器不會緩解寫入壓力。如果是讀取壓力倒有所幫助。
  2. 從單機到 replSet 起碼需要鎖住數據庫。程序代碼也需要修改。打算切換到 replSet 的話,需要提前做準備。
  3. 最后我們的做法是將頻繁更新的數據放 redis,定時刷入數據庫,效果很明顯。

正確使用 Redis

控制內存,控制起步成本

如果你打算省錢的,就不要把所有東西都放 Redis 里,哪怕看上去數據量不大——時間久了也占了不少內存。而在 MongoDB 里只有熱數據占內存。 二八法則也適用這種情況:熱數據只占20%。

當然如果你是土豪請你走開!

不要用 pub/sub 做隊列

如果不想丟失數據就不要用 pub/sub 做隊列。進程重啟時將丟失訂閱管道的信息。你可以用 lpush 和 brpop 來實現隊列。

受夠盛大云了

  • 內網主機完全不能訪問外網。你想 apt-get update 下?臨時買帶寬吧。
  • 被 DDOS 攻擊?直接斷網,沒有任何通知,你還百思不得其解。
  • io性能太差,讀寫大約 5-6M/s 的時候就要掛了。當然阿里云的好像更差。

最后的忠告

「年輕人啊,要多讀書多看報,多思考多學習」——萬峰

[[85050]]

看到這里肯定有不少人想噴我了,來吧,我的微博是: @dai-jie ,有錯我改,我改……

原文鏈接:http://segmentfault.com/a/1190000000304859

責任編輯:黃丹 來源: segmentfault.com
相關推薦

2018-12-29 08:15:28

Tomcat應用部署

2010-08-05 14:08:26

Flex框架

2012-11-12 09:54:07

項目經理項目管理

2009-10-20 14:10:00

CCIE經驗

2022-05-26 08:12:52

debugSpringFeign

2014-07-08 09:27:24

SQLSERVER腳本

2023-03-17 18:33:12

ChatGPTLLM應用

2011-07-08 13:15:52

JSP

2021-11-05 07:59:25

HashMapJava知識總結

2020-08-12 11:35:00

Node.js前端緩存

2019-02-28 10:52:44

Shell運維經驗

2013-03-08 02:52:03

個人開發項目糾錯

2010-01-26 13:28:11

Android開發要點

2020-10-10 06:32:43

IDEA插件環境

2022-04-08 08:48:16

線上事故日志訂閱者

2011-01-10 14:24:35

CIO快樂運維

2017-03-27 17:49:40

戴爾服務器

2016-03-01 13:48:36

MVVMios快速開發

2011-09-08 13:41:53

Widget
點贊
收藏

51CTO技術棧公眾號

可以在线观看av的网站| 原创真实夫妻啪啪av| 91xxx在线观看| 国产老妇另类xxxxx| 久久男人资源视频| 精品熟妇无码av免费久久| 免费精品一区| 高清精品xnxxcom| 精品日韩欧美一区| 91精品国产综合久久婷婷香蕉| 成人污网站在线观看| 亚洲av成人无码久久精品老人 | 完全免费av在线播放| 强制高潮抽搐sm调教高h| 黑色丝袜福利片av久久| 欧美在线免费播放| 国产精品久久久久9999爆乳| 户外极限露出调教在线视频| 国产精品18久久久久久vr| 日韩美女写真福利在线观看| 欧美日韩在线国产| 欧美肉体xxxx裸体137大胆| 亚洲精品一线二线三线| 亚洲欧美日韩三级| 欧美极品影院| 午夜天堂影视香蕉久久| 国产手机视频在线观看| 96精品久久久久中文字幕| 久久一级免费视频| 国产欧美日韩在线观看视频| 日韩欧美国产综合在线一区二区三区| av丝袜天堂网| 亚洲精品永久免费视频| 午夜一区二区三区视频| 特级西西人体www高清大胆| 北岛玲日韩精品一区二区三区| 波多野结衣在线一区| 亚洲一区二区三区乱码aⅴ| 一级特黄aaa| 久久综合影音| 日本亚洲欧美三级| 女人十八岁毛片| 激情欧美日韩| 久久久久久久久电影| 欧美日韩精品在线观看视频| 久久高清免费| 中文字幕亚洲无线码a| 天天躁日日躁aaaxxⅹ| 精品久久97| 精品国产91洋老外米糕| 日本少妇一级片| 日韩三级网址| 日韩精品一区二区三区四区视频| 色网站在线视频| 国产亚洲高清在线观看| 日韩一区二区高清| 超级砰砰砰97免费观看最新一期| 国产日韩在线观看视频| 91精品国产综合久久香蕉的特点 | 99视频在线精品| 99久久一区三区四区免费| 亚洲av少妇一区二区在线观看| 国产一区二区三区在线看麻豆 | 精品欧美午夜寂寞影院| 精品对白一区国产伦| 人妻激情偷乱频一区二区三区| xvideos.蜜桃一区二区| 亚洲精品97久久| 实拍女处破www免费看| 国产一区二区三区四区二区| 一个人www欧美| 青青青视频在线免费观看| 亚洲国产精品91| 欧美精品激情视频| 800av免费在线观看| 日韩在线一二三区| 成人欧美在线观看| 欧美 日韩 国产 在线| 91视频一区二区| 亚洲福利av| 色呦呦在线免费观看| 午夜电影一区二区三区| 成人黄色一区二区| 国产午夜久久av| 亚洲乱码av中文一区二区| 一级特黄曰皮片视频| 一区二区三区四区电影| 91精品国产91久久久久福利| 午夜视频网站在线观看| 国内精品国产三级国产a久久| 国产高清自拍一区| 成人在线免费视频| 亚洲一二三区视频在线观看| av无码精品一区二区三区| 国产一区二区三区免费观看在线 | 久久精品国产网站| 欧美在线视频免费观看| 亚洲香蕉在线视频| 99久久国产综合精品麻豆| 日韩欧美三级电影| 精品精品导航| 欧美日韩免费一区二区三区视频| 绯色av蜜臀vs少妇| 色综合久久网| 日本亚洲欧美三级| 丰满少妇被猛烈进入| 国产色产综合色产在线视频| 三上悠亚免费在线观看| 国模套图日韩精品一区二区| 欧美一级二级三级蜜桃| 国产成人av一区二区三区不卡| 欧美国产另类| 国产精品亚洲精品| 天堂资源中文在线| 亚洲在线观看免费| 捷克做爰xxxⅹ性视频| 少妇一区二区视频| 97婷婷大伊香蕉精品视频| a天堂中文在线观看| 中文字幕第一区| av免费播放网址| 亚洲国产精品免费视频| 日韩在线观看免费全集电视剧网站 | 国产精品一区二区三区在线免费观看| 久久伊99综合婷婷久久伊| 久久久久久av无码免费网站下载| 精品人妻少妇嫩草av无码专区| 欧美××××黑人××性爽| 欧美精品一级二级三级| 久久久久久国产精品无码| 亚洲片区在线| 成人在线观看av| 91亚洲天堂| 6080国产精品一区二区| 天堂网av2018| 久久精品二区亚洲w码| 日产精品高清视频免费| 日韩电影免费看| 亚洲精品电影网在线观看| 久久艹精品视频| 国产成人精品一区二| 蜜臀av.com| 国产一区二区在线观| 精品国产一区二区三区久久| www.亚洲激情| 国产精品少妇自拍| 亚洲少妇久久久| 日韩av专区| 国产热re99久久6国产精品| 成人在线免费公开观看视频| 欧美视频一区二区三区| 亚洲综合第一区| 久久99久久99| 好吊色视频988gao在线观看| 国产精品亚洲欧美日韩一区在线| 久久亚洲精品成人| 性中国古装videossex| 午夜在线电影亚洲一区| 大黑人交xxx极品hd| 欧美中文日韩| 亚洲国产精品日韩| 国产成人视屏| 亚洲码国产岛国毛片在线| 日本精品久久久久久久| 色视频免费在线观看| 色婷婷av一区二区三区软件 | 国产日产欧美精品一区二区三区| 麻豆av免费在线| 色狮一区二区三区四区视频| 亚洲自拍偷拍在线| 51漫画成人app入口| 亚洲另类图片色| 在线视频 91| 亚洲一区二区欧美激情| 亚洲永久无码7777kkk| 奇米色一区二区三区四区| www.午夜色| 国产suv精品一区二区四区视频| 欧美亚洲在线播放| 91高清在线| 亚洲高清色综合| 国产精品无码粉嫩小泬| 亚洲乱码中文字幕| 久久一区二区电影| 免费的国产精品| 黄色一级片黄色| 国产91一区| 91国产在线播放| 欧美电影h版| 欧美日本高清视频| 国产在线视频资源| 日韩欧美一级片| 中文字幕精品视频在线观看| 亚洲欧美电影院| 精品人妻伦一二三区久| 奇米777欧美一区二区| 国产xxxx振车| 日韩成人精品一区| 国产一区二区视频在线免费观看| 精品国产欧美日韩一区二区三区| 精品中文字幕视频| 91网页在线观看| 日韩成人av网址| 国产尤物在线观看| 欧美视频13p| 青娱乐免费在线视频| 国产欧美精品区一区二区三区 | 亚洲欧美另类综合| 欧美精品自拍偷拍动漫精品| 五月丁香综合缴情六月小说| 污视频网站免费观看| 欧美三级电影网站| 日本三级一区二区| 亚洲欧美激情一区二区| japanese中文字幕| 成人在线综合网站| 国产在线视频三区| 麻豆成人av在线| 黄色一级大片在线观看| 一本一道久久综合狠狠老精东影业| 亚洲一区二区免费视频软件合集 | 日本少妇裸体做爰| 亚洲欧美日韩中文播放| 成人性视频免费看| 国产欧美日韩麻豆91| 六十路息与子猛烈交尾| 国产成人欧美日韩在线电影| 亚洲精品免费一区亚洲精品免费精品一区 | 日韩视频―中文字幕| 麻豆国产在线播放| 日韩精品免费在线观看| 乱精品一区字幕二区| 日韩一级完整毛片| 国产成人三级在线播放| 91精品国产美女浴室洗澡无遮挡| 中文字幕久久久久| 欧美影院精品一区| 中文字幕在线观看欧美| 在线观看视频一区二区 | 午夜影院免费在线| 久久视频在线播放| 福利在线视频网站| 久久五月天综合| 自拍偷拍一区二区三区四区| 素人啪啪色综合| 国产福利视频一区二区| 另类专区亚洲| 日本在线观看天堂男亚洲 | 欧美欧美欧美| 亚洲精品xxxx| 青青草视频免费在线观看| 亚洲码在线观看| 国产污视频在线| 国产亚洲欧美aaaa| 日韩专区在线| 成年人精品视频| 羞羞视频在线免费国产| 欧美贵妇videos办公室| gogo高清在线播放免费| 97免费中文视频在线观看| 欧美aaaaa性bbbbb小妇| 热99精品只有里视频精品| 成人免费看黄| 国产美女精品免费电影| 日本免费在线一区| 大波视频国产精品久久| 国产精品久av福利在线观看| 看欧美日韩国产| 日韩久久久久| 97久久国产亚洲精品超碰热| 国产亚洲精品bv在线观看| 国产二区视频在线播放| 日本亚洲免费观看| 波多野结衣在线免费观看| 成人18视频在线播放| 国产全是老熟女太爽了| 中文字幕一区二区三区四区不卡| 日本精品人妻无码77777| 五月婷婷色综合| 中文字幕观看视频| 日韩欧美区一区二| 日本福利片高清在线观看| 深夜福利91大全| 激情在线视频播放| 国产精品福利在线| 99热这里只有精品首页 | 91精品国产综合久久久久久丝袜 | 亚洲福利视频二区| 91视频在线观看| 久久久人成影片一区二区三区观看 | 国产高清精品在线观看| 三级亚洲高清视频| 久久久久亚洲av无码麻豆| 91亚洲精华国产精华精华液| 欧美福利在线视频| 香港成人在线视频| 国产喷水福利在线视频| 国产丝袜一区二区| 岛国成人毛片| 青青草成人在线| 蜜桃精品视频| 日韩欧美精品一区二区| 国产精品地址| 日本不卡一区在线| 91麻豆6部合集magnet| 青青草原在线免费观看| 一本在线高清不卡dvd| 精品人妻av一区二区三区| 国产亚洲成av人片在线观看桃| 丝袜美腿av在线| 国产精自产拍久久久久久| 女仆av观看一区| 日本一二三区视频在线| 秋霞电影一区二区| jizz欧美性20| 亚洲成人动漫av| 不卡的日韩av| 久久精品国产欧美亚洲人人爽| 桃花岛tv亚洲品质| 激情小说综合区| 雨宫琴音一区二区在线| 欧美一级小视频| 国产精品美女久久久久久久久| av图片在线观看| 亚洲国产成人精品一区二区 | 神马电影在线观看| 欧美激情视频一区二区| 激情五月综合婷婷| 伊人久久大香线蕉综合75| 视频一区二区三区在线| 人妻少妇精品视频一区二区三区| 一级日本不卡的影视| 国产女同91疯狂高潮互磨| 中文字幕在线成人| 国产极品一区| 一区二区三区国产福利| 奇米亚洲午夜久久精品| 黄色av片三级三级三级免费看| 91久久精品日日躁夜夜躁欧美| 日本一级在线观看| 欧美亚洲激情在线| 亚洲美女15p| 密臀av一区二区三区| 日本一区二区免费在线| 中文av免费观看| 中文字幕精品一区二区精品| 亚洲成人av观看| 五月天亚洲综合情| 久久爱另类一区二区小说| 日韩在线观看免| 欧美一级高清片在线观看| 羞羞电影在线观看www| 成人av播放| 亚洲国产日本| 人妻丰满熟妇aⅴ无码| 久久视频一区| 在线观看一区二区三区三州| 麻豆91在线播放| h色网站在线观看| 日韩精品一区国产麻豆| 久久国产精品黑丝| 免费日韩电影在线观看| 石原莉奈一区二区三区在线观看| 国产精品久久免费观看| 欧美乱熟臀69xxxxxx| 图片区小说区亚洲| 精品欧美一区二区在线观看视频| 亚洲综合日韩| 夜夜春很很躁夜夜躁| 在线不卡a资源高清| 久久不射影院| 视频一区三区| 久久成人精品无人区| 欧美xxxx黑人xyx性爽| 亚洲国产精品va在线| 欧洲一级精品| 无码毛片aaa在线| 99精品国产91久久久久久| 乱子伦一区二区三区| 精品国产网站地址| 林ゆな中文字幕一区二区| 污污视频网站免费观看| 亚洲丝袜美腿综合| 日本韩国免费观看| 国产精品一区二区3区| 国自产拍偷拍福利精品免费一| 182在线视频| 欧美精品成人一区二区三区四区| av今日在线| 亚洲欧美精品| jvid福利写真一区二区三区| 青青艹在线观看| 久久久久久国产免费| 国内精品久久久久久久久电影网| 中文字幕一区二区三区四| 大荫蒂欧美视频另类xxxx| 免费在线毛片网站| 久久亚洲免费| 国产成人自拍在线| 瑟瑟视频在线免费观看|