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

Instagram 僅 3 名工程師,如何做到 1400 萬用戶?

原創 精選
移動開發 iOS
Instagram發布的19個月,后活躍用戶數量超過5000萬,活躍用戶數量達到1億,2012年6月份達到1.3億。同年10月25日,當時的Facebook以總值7.15億美元收購Instagram,創始人Kevin從中獲得了4億美元的回報。

整理 | 云昭

策劃 | 言征 

出品 | 51CTO技術棧(微信號:blog51cto)

2010 年 10 月 6 日,舊金山。當人們還沉浸在擁有更強大攝像頭的 iPhone 4 的激動心情時,一款名為“ Instagram ” 的 iOS 照片分享應用出現在應用商店中。

當天就收獲了 2.5 萬首批用戶,一周之后,下載量攀升到 10 萬,從 2010 年 10 月到 2011 年 12 月,Instagram在短短一年多的時間里,用戶數量從 0 增長到 1400 萬。

而他的創始人, Kevin Systrom 這期間用了 3 名工程師就做到了這一點。這就讓我們回到那個奇幻的時刻,從工程師的角度思考,一探他們是如何做到的。

簡單來說,他們通過如下遵循 3 個關鍵指導原則并擁有可靠的技術堆棧來做到這一點:讓事情變得非常簡單、不要重新發明輪子、盡可能使用經過驗證的可靠技術。

一、早期基礎配置

早期 Instagram 的基礎設施,是在 AWS 上運行的,使用 EC2 和 Ubuntu Linux。作為參考,EC2 是亞馬遜的服務,允許開發人員租用虛擬計算機。

為了讓事情變得簡單,并且由于我喜歡從工程師的角度思考用戶,所以讓我們回顧一下用戶場景會話的生命周期。

二、前端

場景回顧:用戶打開界面。

Instagram 最初于 2010 年作為 iOS 應用程序推出。由于 Swift 于 2014 年發布,我們可以假設 Instagram 是使用Objective-C 和 UIKit 等其他東西的組合編寫的。

圖片圖片

三、負載均衡

場景回顧:打開應用程序后,獲取主訂閱源照片的請求會發送到后端,并在那里到達Instagram的負載均衡器。

Instagram 使用亞馬遜的彈性負載均衡器。他們有 3 個 NGINX 實例,根據它們是否健康來換入和換出。

每個請求首先到達負載均衡器,然后再路由到實際的應用程序服務器。

圖片圖片

四、后端

場景回顧:負載均衡器將請求發送到應用程序服務器,應用程序服務器保存正確處理請求的邏輯。

Instagram 的應用服務器使用Django ,用 Python 編寫,Gunicorn作為他們的 WSGI 服務器。

回顧一下,WSGI(Web 服務器網關接口)將請求從 Web 服務器轉發到 Web 應用程序。

Instagram 使用Fabric同時在多個實例上并行運行命令。這允許在幾秒鐘內部署代碼。

它們運行在超過 25 臺 Amazon High-CPU 超大型機器上。由于服務器本身是無狀態的,當他們需要處理更多請求時,他們可以添加更多機器。

圖片圖片

五、通用數據存儲

場景回顧:應用服務器發現請求需要主提要的數據。為此,我們假設它需要:

  • 最新的相關照片ID 
  • 與這些照片ID匹配的實際照片
  • 這些照片的用戶數據。

1.數據庫:Postgres

場景回顧: 應用服務器從Postgres獲取最新的相關照片ID。

應用程序服務器將從PostgreSQL中提取數據,PostgreSQL 存儲了 Instagram 的大部分數據,例如用戶和照片元數據。

Postgres 和 Django 之間的連接使用Pgbouncer進行池化。

Instagram由于收到的數據量很大(每秒超過 25 張照片和 90 個贊)而對他們的數據進行了分片。他們使用代碼將數千個“邏輯”分片映射到幾個物理分片。

Instagram 面臨并解決的一個有趣的挑戰是生成可以按時間排序的 ID。他們生成的可按時間排序的 ID 如下所示:

  • 41 位時間(以毫秒為單位)(提供了 41 年的 ID 和自定義紀元)
  • 13位代表邏輯分片ID
  • 10 位表示自動遞增序列,模數 1024。這意味著我們可以為每個分片、每毫秒生成 1024 個 ID

場景回顧:由于Postgres中的可按時間排序的ID,應用服務器已成功接收到最新的相關照片ID。

2.照片存儲:S3 和 Cloudfront

場景回顧: 然后,應用服務器通過快速CDN鏈接獲取與這些照片ID匹配的實際照片,以便為用戶快速加載。

Amazon S3中存儲了數 TB 的照片。這些照片已使用 Amazon CloudFront快速提供給用戶。

3.緩存:Redis 和 Memcached

場景思考:為了從Postgres獲取用戶數據,應用服務器(Django)使用Redis將照片ID與用戶ID進行匹配。

Instagram 使用 Redis 將大約 3 億張照片存儲到創建它們的用戶 ID 的映射,以便知道在獲取主提要、活動提要等照片時要查詢哪個分片。所有 Redis 都存儲在內存中減少延遲,并且它被分片到多臺機器上。

通過一些巧妙的哈希處理,Instagram 能夠在不到 5 GB 的空間中存儲 3 億個鍵映射。為了知道要查詢哪個 Postgres 分片,需要此 photoID 到用戶 ID 鍵值映射。

場景回顧:由于使用Memcached的高效緩存,從Postgres獲取用戶數據很快,因為最近的響應被緩存了。

對于一般緩存,Instagram 使用Memcached 。他們當時有 6 個 Memcached 實例。Memcached 在 Django 上分層相對簡單。

有趣的是:兩年后,即 2013 年,Facebook 發布了一篇具有里程碑意義的論文,介紹了他們如何擴展 Memcached 以幫助他們每秒處理數十億個請求。

用戶現在可以看到主頁,里面有他關注的人的最新照片。

圖片圖片

4.主副本設置

Postgres 和 Redis 都在主副本設置中運行,并使用 Amazon EBS(彈性塊存儲)快照來頻繁備份系統。

六、推送通知和異步任務

場景回顧:現在,假設用戶關閉了應用程序,但隨后收到朋友發布照片的推送通知。

此推送通知是使用pyapns發送的,與 Instagram 已經發送的其他十億多條推送通知一起。Pyapns 是一個開源、通用的 Apple 推送通知服務 (APNS) 提供商。

場景回顧:用戶非常喜歡這張照片!所以他決定在Twitter上分享。

在后端,任務被推送到Gearman中,這是一個任務隊列,它將工作外包給更適合的機器。Instagram 有大約 200 個 Python 工作線程使用 Gearman 任務隊列。

Gearman 用于執行多個異步任務,例如向所有用戶的關注者推送活動(例如發布的新照片)(這稱為扇出)。

圖片圖片

七、監控

場景回顧:Instagram應用程序因服務器出現錯誤而崩潰,并發送了錯誤響應。Instagram的三名工程師立即得到了提醒。

Instagram 使用Sentry (一款開源 Django 應用程序)來實時監控 Python 錯誤。

Munin用于繪制系統范圍的指標并發出異常警報。Instagram 有一堆自定義 Munin 插件來跟蹤應用程序級別的指標,例如每秒發布的照片。

Pingdom用于外部服務監控,PagerDuty用于處理事件和通知。

八、最終架構一覽

圖片圖片

——后記——

Instagram發布的19個月,后活躍用戶數量超過5000萬,活躍用戶數量達到1億,2012年6月份達到1.3億。同年10月25日,當時的Facebook以總值7.15億美元收購Instagram,創始人Kevin從中獲得了4億美元的回報。

值得一提的是,于編程而言,Kevin是自學成才。管理學科出身的他,剛畢業時可謂是一張白紙,在社交旅游網站Nextstop營銷部門工作時,凱文開始每晚抽時間自學編程。

Instagram 的成功帶來的不僅僅創造了當代硅谷最偉大的成功故事之一,Kevin的自學成才的歷程成為了激烈開發者們對于編程的熱情。

參考鏈接:

https://instagram-engineering.com/what-powers-instagram-hundreds-of-instances-dozens-of-technologies-adf2e22da2ad

https://instagram-engineering.com/storing-hundreds-of-millions-of-simple-key-value-pairs-in-redis-1091ae80f74c

https://instagram-engineering.tumblr.com/post/10853187575/sharding-ids-at-instagram


責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2009-04-01 09:23:29

IT工程師職場

2017-11-30 09:32:36

2011-11-09 15:49:52

API

2012-05-02 13:57:36

Instagram

2021-01-18 09:00:00

人工智能機器學習工程師

2021-05-10 17:22:49

工程師代碼技術

2009-11-20 11:37:11

Oracle完全卸載

2011-05-25 16:59:20

前端工程師

2022-09-05 11:25:22

惡意瀏覽器Chrome惡意擴展

2011-12-26 15:31:33

2013-01-06 10:57:03

2020-03-23 08:34:50

百度工程師判刑

2011-11-02 10:57:24

Instagram移動應用照片分享

2018-09-13 09:39:03

騰訊運維IT

2025-10-30 07:30:00

JavaScript身份驗證Token

2013-04-22 10:34:46

用戶體驗設計UED認知負荷

2013-06-17 09:44:03

2018-03-29 11:23:25

IT人員云計算工程師

2016-01-28 11:18:09

卓越前端工程師

2013-03-07 10:22:12

PaaSGoogleSongPop
點贊
收藏

51CTO技術棧公眾號

av资源中文在线天堂| www.精品久久| 999精品在线| 欧美一级二级在线观看| 日韩欧美不卡在线| 第九色区av在线| 国产激情偷乱视频一区二区三区| 91国语精品自产拍在线观看性色 | 激情五月开心婷婷| 麻豆传媒在线免费看| 北条麻妃一区二区三区| 国产精品 欧美在线| 欧美成人777| 免费不卡中文字幕在线| 欧美一区二区福利视频| 日本三区在线观看| 福利在线导航136| 国产精品精品国产色婷婷| 国产一区二区免费电影| 在线观看国产成人| 99精品视频免费观看视频| 色偷偷9999www| 丝袜美腿中文字幕| 午夜剧场在线免费观看| 欧美女同网站| 国产成人激情av| 国产精品成人免费电影| 久久精品欧美一区二区| 久久久久久久久久久妇女| 亚洲欧美另类自拍| www.欧美com| 婷婷激情成人| 欧美在线不卡视频| 欧美日韩在线视频一区二区三区| 3d玉蒲团在线观看| 亚洲图片你懂的| 日韩精品久久久毛片一区二区| 人妻少妇精品无码专区| 国产麻豆精品在线观看| 国产日韩精品视频| 成人黄色激情视频| 日精品一区二区| 欧美在线xxx| 五月婷婷开心网| 91久久午夜| 国模精品系列视频| 国产精久久久久久| 亚洲天堂激情| 欧美激情在线观看视频| 天天看片中文字幕| 欧美好骚综合网| 最新国产精品亚洲| 四虎地址8848| 亚洲成人一区| 不卡毛片在线看| 国产探花在线免费观看| 一区二区影视| 欧美精品久久久久久久免费观看| 欧美三级小视频| 国产精品激情| 久久久久久亚洲精品中文字幕| 久久黄色免费网站| 一区在线免费| 91精品国产高清| 亚洲欧美一区二区三区在线观看 | www国产黄色| 欧美xxxhd| 色婷婷一区二区三区四区| 中国丰满人妻videoshd| 久久青青视频| 欧美日韩国产首页| 中文字幕第三区| 99ri日韩精品视频| 日韩电影免费观看中文字幕| 精品人妻一区二区三区视频| 精品一区电影| 久久国产色av| 日韩精品视频播放| 葵司免费一区二区三区四区五区| 国产精品久久久久久久久久久久久久| 中文字幕制服诱惑| 国产一区 二区 三区一级| av一本久道久久波多野结衣| 婷婷在线观看视频| 国产欧美日韩综合| 乱子伦一区二区| 美女91在线看| 欧美精品18+| 国产精品久久久久久久无码| 欧洲美女日日| 欧美大尺度激情区在线播放| 国偷自拍第113页| 美女视频网站黄色亚洲| 97人摸人人澡人人人超一碰| 手机亚洲第一页| 亚洲欧洲精品天堂一级| 免费不卡av在线| 六九午夜精品视频| 亚洲国产精久久久久久| 午夜激情福利电影| 99热精品在线观看| 4444kk亚洲人成电影在线| 色鬼7777久久| 亚洲一区二区三区中文字幕| 99视频在线免费| 亚洲一区二区电影| 中文字幕国产亚洲| 日韩精品成人一区| 激情六月婷婷久久| 欧美亚洲免费高清在线观看| 欧美人与性动交α欧美精品济南到| 欧美日韩亚洲视频| 国产一级二级av| 日韩亚洲一区在线| 青青青国产精品一区二区| 精品毛片在线观看| 欧美国产激情一区二区三区蜜月 | 91禁在线看| 欧美顶级少妇做爰| 亚洲综合色一区| 亚洲国产精品第一区二区| 成人xvideos免费视频| 狠狠色伊人亚洲综合网站l| 亚洲一区影音先锋| 一级黄色片在线免费观看| 欧美一区二区三区高清视频| 国内精品国产三级国产在线专| 国产视频一区二区三| 国产调教视频一区| 日韩激情免费视频| ccyy激情综合| 欧美高清自拍一区| 7777久久亚洲中文字幕| 国产人久久人人人人爽| 免费无码av片在线观看| 久久香蕉网站| 97免费视频在线| 亚洲精品18在线观看| 亚洲日本韩国一区| 日韩av自拍偷拍| 欧美国产一区二区三区激情无套| 国产精品久久久亚洲| 男女网站在线观看| 亚洲国产一二三| 91小视频在线播放| 五月天久久777| 91久久国产综合久久91精品网站| 欧美jizz18性欧美| 欧美少妇xxx| 成人欧美一区二区三区黑人一| 免费人成精品欧美精品| 亚洲欧洲三级| 羞羞视频在线观看一区二区| 日韩在线观看免费av| 国产又大又粗又长| 亚洲三级电影全部在线观看高清| 岛国毛片在线播放| 久久久久久久久久久妇女| 91国产在线免费观看| 伊人福利在线| 亚洲成人av中文字幕| 成人免费a视频| 久久精品一区四区| 一本岛在线视频| 综合激情网站| 国产一区视频观看| 九九热线视频只有这里最精品| 中文字幕亚洲一区在线观看| 国产精品老熟女视频一区二区| 亚洲精品第一国产综合野| 国产a级片视频| 午夜一区不卡| 亚洲一区二三| 综合激情久久| 国产精品成熟老女人| av网址在线| 亚洲精品国产suv| 中文字幕日韩第一页| 综合欧美一区二区三区| 年下总裁被打光屁股sp| 久久美女性网| 91社在线播放| 日韩av系列| 国产在线久久久| av在线资源| 在线看国产精品| 韩国av免费在线| 欧美性受xxxx黑人xyx| www.av视频| 久久久午夜电影| 一卡二卡三卡四卡五卡| 亚洲欧美bt| 9191国产视频| 精品国产乱码久久久| 成人91免费视频| 久久久久伊人| 2019中文在线观看| 18videosex性欧美麻豆| 亚洲人成在线观看网站高清| 国产美女明星三级做爰| 欧美午夜精品久久久久久久| jizz亚洲少妇| 国产亚洲精品aa午夜观看| 免费黄视频在线观看| 蜜臀av一区二区在线观看| 久久手机在线视频| 手机在线电影一区| 老牛影视免费一区二区| 婷婷视频一区二区三区| 国产精品激情av在线播放| 成人在线高清免费| 久久精品国产2020观看福利| 嫩草精品影院| 亚洲精品一区二区三区在线观看| 91国内精品视频| 日本韩国一区二区| 国产无套粉嫩白浆内谢| 亚洲乱码国产乱码精品精的特点| 亚洲国产av一区| 白白色 亚洲乱淫| 师生出轨h灌满了1v1| 美国十次了思思久久精品导航| 久久精品免费一区二区| 伊人蜜桃色噜噜激情综合| 中文字幕日韩精品久久| 欧美一区三区| 日本高清不卡三区| 日本午夜精品| 国产一区二区黄色| 精品丝袜久久| 国产精品区一区二区三在线播放| a级黄色片免费看| 色一区二区三区四区| 国产精品成人观看视频免费| 国产亚洲高清在线观看| 91精品免费看| 图片一区二区| 91欧美精品成人综合在线观看| 成人黄页网站视频| 国产精品久久久久国产a级| xxx欧美xxx| 国产成人精品日本亚洲| 国模冰冰炮一区二区| 欧美亚洲在线播放| 涩涩视频在线| 欧美在线免费视频| 毛片免费看不卡网站| 日本亚洲精品在线观看| 厕沟全景美女厕沟精品| 国产成人精品国内自产拍免费看| 欧美无毛视频| 国产精品无码专区在线观看| 久久精品超碰| 成人午夜在线观看| 视频在线亚洲| 国产欧美精品一区二区三区| 国产美女撒尿一区二区| 久久99久久99精品蜜柚传媒| 香蕉久久精品| 亚洲国产一区二区三区在线 | 国产 国语对白 露脸| 欧美午夜久久| 亚洲人精品午夜射精日韩| 国产一区二区三区成人欧美日韩在线观看 | 成人欧美一区二区三区黑人一| 91年精品国产| 亚洲色图第四色| 国产精品电影一区二区| 免费在线观看a级片| 亚洲一区中文在线| 亚洲综合图片网| 欧美妇女性影城| 丰满人妻一区二区三区无码av| 日韩成人在线观看| 岛国大片在线观看| 久久成人一区二区| 捆绑调教日本一区二区三区| 国产精品成人久久久久| 国产精品成人3p一区二区三区| 国产一区再线| 99精品全国免费观看视频软件| 精品一区二区三区无码视频| 久久国产精品久久久久久电车| 成人日韩在线视频| 成人国产电影网| 欧美色图17p| 午夜精品久久久久久久| 日韩欧美一级大片| 精品美女被调教视频大全网站| 欧美巨乳在线| 欧美乱大交xxxxx| 日本欧美韩国| 国产精品免费在线播放| 欧美日韩一区二区综合| 日韩成人手机在线| 蜜臀99久久精品久久久久久软件| 波多野结衣办公室双飞 | 亚洲第一精品福利| av影片在线看| 91干在线观看| 亚洲经典视频| 亚洲精品一区二| 亚洲少妇在线| 色欲欲www成人网站| 国产日产欧产精品推荐色 | 亚洲色图14p| 亚洲视频综合在线| 中文字幕精品无| 亚洲精品一区二区三区精华液| aaa日本高清在线播放免费观看| 韩日精品中文字幕| 国产亚洲高清在线观看| 神马影院我不卡| 久久av最新网址| 日韩无码精品一区二区| 亚洲美女精品一区| 一区二区久久精品66国产精品| 亚洲欧美精品中文字幕在线| √天堂8资源中文在线| 99re资源| 亚洲理论电影网| 亚洲精品午夜在线观看| 国产婷婷色一区二区三区在线| 欧美福利视频一区二区| 欧美一二三区在线| 男人的天堂在线视频免费观看| 国产成人综合精品在线| 天堂俺去俺来也www久久婷婷| 男人天堂av片| 国产91色综合久久免费分享| 我要看黄色一级片| 欧美精品自拍偷拍动漫精品| 四虎久久免费| 国产精品一区二区久久国产| av亚洲在线观看| 成年人在线观看视频免费| 久久久亚洲午夜电影| 五月婷婷视频在线| 精品一区二区电影| 校园春色亚洲| 欧美精品一区二区三区在线看午夜 | 日韩成人在线网站| 999福利在线视频| 国产一区二区高清视频| 亚洲免费黄色| 中文字幕一区二区人妻在线不卡| 亚洲一区二区三区美女| 丰满肉嫩西川结衣av| 国自在线精品视频| 久久成人福利| 国产成人久久婷婷精品流白浆| 久久一区二区视频| 无码人妻久久一区二区三区不卡| 亚洲欧美日本精品| 久久久国产精品网站| 最新精品视频| 国产成人av一区二区三区在线| 中文字幕第28页| 日韩电影免费观看在线观看| 日韩不卡免费高清视频| 亚洲7777| 国产成人在线影院| 日本中文字幕网| 亚洲热线99精品视频| 99久久精品一区二区成人| 日本黄色播放器| 国产·精品毛片| 亚洲 欧美 成人| 深夜福利一区二区| 欧美影院精品| 看av免费毛片手机播放| 国产精品三级视频| 国产黄色免费大片| 97精品一区二区三区| 日本不卡免费一区| 性一交一黄一片| 狠狠干狠狠久久| 黄在线免费观看| 狠狠色综合色区| 老司机免费视频一区二区| 久久久精品国产sm调教| 亚洲欧美日韩高清| 激情久久免费视频| 日韩av资源在线| 亚洲老妇xxxxxx| 免费国产在线观看| 91在线观看免费网站| 亚洲制服少妇| 黄色一级大片在线免费观看| 亚洲国产成人久久| 日韩欧美三区| 浮妇高潮喷白浆视频| 国产精品乱码人人做人人爱| 手机看片1024国产| 国产欧美精品一区二区| 亚洲影音一区| 国产日韩欧美在线观看视频| 亚洲欧美激情四射在线日| 亚洲综合影院| 天堂视频免费看|