Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
智能攝像頭是指不需要電腦連接,直接使用Wi-Fi聯(lián)網(wǎng),配有移動(dòng)應(yīng)用,可以遠(yuǎn)程隨時(shí)隨地查看家里的一切設(shè)備,但由于其存在質(zhì)量安全隱患,若消費(fèi)者使用不當(dāng)或超預(yù)期使用,容易導(dǎo)致個(gè)人隱私泄露、財(cái)產(chǎn)損失等危害。
□本社記者 李曉磊
只需下載一個(gè)應(yīng)用程序,然后連接無線網(wǎng)絡(luò),智能攝像頭就可以被買家進(jìn)行遠(yuǎn)距離監(jiān)控。這項(xiàng)技術(shù)和產(chǎn)品問世后,因能讓使用者不受地點(diǎn)限制,實(shí)時(shí)查看監(jiān)控區(qū)域,深受廣大消費(fèi)者追崇,不少人在家中安裝了它。
但記者調(diào)查發(fā)現(xiàn),這些用來監(jiān)控隱私的智能攝像頭,卻存在重大安全隱患,一些不法分子可輕松破解程序,并隨時(shí)隨地偷窺他人隱私,有的還將監(jiān)控畫面在網(wǎng)上直播。
而這些程序破解技術(shù),被不法商家拿到網(wǎng)上出售,一套完整的破解教程只需200元左右,賣家還贈(zèng)送近千個(gè)IP地址,供買家攻破與使用。
日前,國(guó)家質(zhì)檢總局發(fā)布關(guān)于智能攝像頭的質(zhì)量安全風(fēng)險(xiǎn)警示,稱在已檢測(cè)的40批次樣品中,32批次樣品存在質(zhì)量安全隱患,并可能導(dǎo)致用戶監(jiān)控視頻被泄露,或智能攝像頭被惡意控制等危害。
賣家稱產(chǎn)品絕對(duì)安全
記者在幾個(gè)電商平臺(tái)搜索“智能攝像頭”后,出現(xiàn)了不少品牌的產(chǎn)品,其中小米、360、螢石、小蟻、樂視TV、中興、米家、聯(lián)想等品牌比較熱銷,價(jià)格均未超過千元,安裝和操作程序簡(jiǎn)單。
以360智能攝像頭為例,使用前,先在手機(jī)上下載360智能攝像頭APP,將產(chǎn)品連接電源,綠燈閃爍后等待配置。然后打開APP用360賬號(hào)戶登錄,如果沒有其賬號(hào),必須先期完成注冊(cè)。
輸入用戶名和密碼,用戶便登錄到自己的攝像機(jī),最開始,列表中會(huì)出現(xiàn)演示機(jī)器,主要讓不熟悉智能攝像頭的客戶迅速完成操作。觀看完演示機(jī),用戶就可添加自己的攝像機(jī),然后根據(jù)提示進(jìn)行操作,拿頂針對(duì)攝像機(jī)背后三個(gè)孔常按完成配置,等待接受信號(hào)。
這一步驟操作完畢,用戶輸入密碼,連接無線,將手機(jī)靠近攝像機(jī),點(diǎn)擊發(fā)送聲波按鈕,等待接收成功信號(hào),不到20秒,攝像機(jī)就連接成功。用戶可為自己的攝像機(jī)設(shè)置名稱、密碼,當(dāng)藍(lán)燈亮起,攝像機(jī)進(jìn)入工作狀態(tài)。用戶能對(duì)實(shí)時(shí)畫面截屏、錄像等。
需要指出,正常使用過程中,只要保證攝像機(jī)連接電源,用戶在有無線網(wǎng)絡(luò)情況下,便可隨時(shí)隨地在手機(jī)或電腦上查看被監(jiān)控區(qū)域。一般情況下,日常家庭常用此監(jiān)控老人和孩子。360智能攝像頭客服稱,整個(gè)過程都有加密,不會(huì)泄露任何隱私。
據(jù)了解,其他品牌智能攝像機(jī)的安裝、使用程序也大體如此。螢石智能攝像機(jī)客服告訴記者,一個(gè)設(shè)備只能綁定一部手機(jī),“其他人想看的話,給他賬戶和密碼登錄,也可以查看,保證隱私不會(huì)泄露。”
小米智能攝像機(jī)客服介紹,他們的產(chǎn)品采用了RSA加密,并通過https商業(yè)信息專用加密方式傳輸數(shù)據(jù),確保隱私不會(huì)泄露。
中興智能攝像頭客服稱,自家產(chǎn)品還有專門的安全方案,包括數(shù)據(jù)安全、應(yīng)用安全、系統(tǒng)安全、網(wǎng)絡(luò)安全四重保障,全面覆蓋智能家居設(shè)備、云平臺(tái)、APP三大產(chǎn)品領(lǐng)域,保證智能攝像頭的端到端系統(tǒng)安全。
記者注意到,所有品牌的智能攝像機(jī)客服,都堅(jiān)稱自家產(chǎn)品安全可靠,使用程序絕對(duì)不會(huì)被破解,甚至有的客服稱,他們的安全系數(shù)已經(jīng)做到“黑客無法攻擊”。
不法分子輕易破解程序
從去年開始,網(wǎng)絡(luò)上開始出現(xiàn)不少家庭生活視頻畫面,除正常生活細(xì)節(jié)外,還有不少女性裸露視頻以及夫妻生活錄像。從眾多網(wǎng)友留言中可看出,這些視頻源,均是不法人員通過破解網(wǎng)絡(luò)傳輸程序獲得。
而不少“偷窺癖”,還在社交網(wǎng)絡(luò)平臺(tái)上打聽如何破解程序。通過1年多發(fā)酵,破解智能攝像頭的生意應(yīng)運(yùn)而生。
記者在QQ搜索中輸入“攝像頭破解”或“”破解攝像頭“,會(huì)出現(xiàn)大量程序破解賣家,他們出售的破解軟件和教程,價(jià)格有98元、100元、198元、200元不等,價(jià)格越高,賣家贈(zèng)送的IP地址越多。
其中收費(fèi)98元的用戶說,付的款項(xiàng)包括軟件下載安裝和遠(yuǎn)程監(jiān)控,但未提及贈(zèng)送IP。另一個(gè)用戶表示,他的收費(fèi)標(biāo)準(zhǔn)為100元,“送200個(gè)IP地址,包括房間、客廳、女生、夫妻、賓館”。“發(fā)紅包給我,給你軟件及視頻教程,包教會(huì)”。這位賣家發(fā)來數(shù)張非法破解家庭視頻隱私錄像截圖。而其他賣家銷售流程都與其相似,他們大多通過QQ紅包和微信紅包進(jìn)行收款,但也有自稱破解該軟件的用戶,在騙取買家錢財(cái)后,將買家刪除、拉黑。
值得一提的是,記者還被一些賣家拉進(jìn)了QQ群,聊天內(nèi)容多是女性和夫妻隱私生活畫面。付費(fèi)后,一個(gè)賣家向記者郵箱發(fā)來一款破解軟件和詳細(xì)使用教程。
在其提供的播放軟件中,記者輸入對(duì)方贈(zèng)送的IP地址、登錄名、密碼后,成功用手機(jī)登錄了其他家庭的監(jiān)控?cái)z像頭,并可對(duì)實(shí)時(shí)畫面進(jìn)行拍照、錄像、監(jiān)聽。
記者調(diào)查發(fā)現(xiàn),除用手機(jī)登錄外,電腦同樣可登錄。另一賣家要求記者在某網(wǎng)站上進(jìn)行注冊(cè),按照操作程序,在“city”后面輸入想查詢的具體城市,然后開始登錄設(shè)備。
按照使用教程,記者輸入石家莊后,出現(xiàn)了1000多個(gè)端口地址,然后記者隨便輸入一個(gè)端口編號(hào),搜尋到該市下轄的某縣一個(gè)攝像頭IP地址,通過繼續(xù)操作,這個(gè)IP地址對(duì)應(yīng)的家庭實(shí)時(shí)畫面被播出。難以置信的是,買家還能遠(yuǎn)程操控?cái)z像頭的拍攝角度。
隨后,記者與幾個(gè)隱私被泄露家庭取得聯(lián)系,對(duì)方全部蒙在鼓里,并佐證了那些畫面的真實(shí)性。“難以置信,不可思議,前幾天好像看央視曝光這個(gè)了,但沒想到自己也會(huì)出現(xiàn)這種情況。”石家莊一用戶說。
記者注意到,在攝像頭破解過程中,最重要的是不法分子掌握了很多IP地址,那么,這些IP地址是怎么流出的?登錄賬戶和密碼又是如何被泄露的?
國(guó)家互聯(lián)網(wǎng)應(yīng)急中心高級(jí)工程師高勝告訴媒體:“這其實(shí)就是一種掃描器,它使用預(yù)先設(shè)定的一些賬號(hào)和弱口令密碼,在網(wǎng)上進(jìn)行掃描和探測(cè),從而可以發(fā)現(xiàn)存在漏洞的一些攝像頭IP地址,它所使用的弱口令,一般是廠商默認(rèn)的通用密碼,或者是簡(jiǎn)短連續(xù)的數(shù)字和字母。”
據(jù)上述一位不法賣家證實(shí),他們的確是利用了很多用戶不修改默認(rèn)密碼的漏洞。
有網(wǎng)絡(luò)安全專家建議:“第一,不要使用廠家出廠預(yù)設(shè)的用戶名密碼,也不要使用一些簡(jiǎn)單的數(shù)字或者字符密碼,并且一定要定期修改密碼;第二,不要將智能攝像頭正對(duì)臥室、浴室等隱私區(qū)域,并且要經(jīng)常檢查攝像頭的角度是否發(fā)生變化。”
國(guó)家質(zhì)檢總局發(fā)布風(fēng)險(xiǎn)警示
6月18日,國(guó)家質(zhì)檢總局在官網(wǎng)發(fā)布了“智能攝像頭質(zhì)量安全風(fēng)險(xiǎn)警示”,稱針對(duì)智能攝像頭可能存在的信息安全危害,國(guó)家質(zhì)檢總局產(chǎn)品質(zhì)量監(jiān)督司組織開展了智能攝像頭質(zhì)量安全風(fēng)險(xiǎn)監(jiān)測(cè)。
據(jù)介紹,他們共從市場(chǎng)上采集樣品40批次,主要依據(jù)GB/T22239-2008《信息安全技術(shù)信息系統(tǒng)安全等級(jí)保護(hù)基本要求》等標(biāo)準(zhǔn)要求,對(duì)操作系統(tǒng)的更新、惡意代碼防護(hù)、身份鑒別、弱口令校驗(yàn)、訪問控制、信息泄露、數(shù)據(jù)傳輸使用安全有效加密、本地存儲(chǔ)數(shù)據(jù)保護(hù)等項(xiàng)目進(jìn)行了檢測(cè)。
檢測(cè)結(jié)果表明,32批次樣品存在質(zhì)量安全隱患。其中,28批次樣品數(shù)據(jù)傳輸未加密;20批次樣品初始密碼為弱口令,或者用戶注冊(cè)和修改密碼時(shí)未限制用戶密碼復(fù)雜度;18批次樣品在身份鑒別方面,未提供登錄失敗處理功能;16批次樣品對(duì)用戶密碼、敏感信息等數(shù)據(jù),在本地存儲(chǔ)時(shí)未采取加密保護(hù)措施;10批次樣品操作系統(tǒng)的更新有問題,未提供固件更新修復(fù)功能或者固件更新方式不安全;10批次樣品后端信息系統(tǒng)存在越權(quán)漏洞,同一平臺(tái)內(nèi)可以查看任意用戶攝像頭的視頻;8批次樣品未對(duì)惡意代碼和特殊字符進(jìn)行有效過濾;5批次樣品后端信息系統(tǒng)存儲(chǔ)的監(jiān)控視頻可被任意下載,或者用戶注冊(cè)信息可被任意查看。上述問題可能導(dǎo)致用戶監(jiān)控視頻被泄露,或智能攝像頭被惡意控制等危害。
對(duì)此,國(guó)家質(zhì)檢總局提示廣大消費(fèi)者,在選購(gòu)和使用智能攝像頭產(chǎn)品時(shí),要注意以下幾點(diǎn):
一是選擇正規(guī)渠道購(gòu)買智能攝像頭產(chǎn)品,切勿購(gòu)買“三無”產(chǎn)品,注意留意權(quán)威部門發(fā)布的相關(guān)產(chǎn)品質(zhì)量信息。
二是增強(qiáng)隱私信息保護(hù)意識(shí),在購(gòu)買、使用智能攝像頭產(chǎn)品和接受相關(guān)服務(wù)時(shí),仔細(xì)查看相關(guān)說明和廠商聲明,充分了解選購(gòu)產(chǎn)品和服務(wù)的各項(xiàng)功能,注意和防范用戶信息可能泄漏的風(fēng)險(xiǎn),審慎考慮廠商收集、保存和使用用戶信息的要求,根據(jù)自我實(shí)際情況和意愿做出購(gòu)買和選擇決定。
三是使用時(shí),應(yīng)及時(shí)主動(dòng)修改智能攝像頭默認(rèn)密碼,密碼設(shè)置應(yīng)有一定的復(fù)雜度并定期修改。
四是及時(shí)更新智能攝像頭操作系統(tǒng)版本和相關(guān)的移動(dòng)應(yīng)用,發(fā)現(xiàn)異常應(yīng)立即停止使用,并向生產(chǎn)廠商反饋,等待廠商修復(fù)。
耗時(shí)一年用戶從 0 增長(zhǎng)至 1400 萬,背后僅三名工程師,這家社交巨頭背后的技術(shù)棧是如何搭建的?
整理|冬梅、核子可樂
迅猛躥紅無疑是硅谷故事的又一個(gè)真實(shí)寫照,該應(yīng)用在短短幾個(gè)月內(nèi)就獲得了驚人的發(fā)展勢(shì)頭。這款照片與視頻共享社交媒體僅用了軟件工程師們八周的時(shí)間就開發(fā)完成,并于 2010 年 10 月正式登陸蘋果移動(dòng)操作系統(tǒng)。在之后的不到兩年時(shí)間里,(Meta)以 10 億美元現(xiàn)金加股票的形式將 收入囊中。
但跟所有的美好故事一樣, 的發(fā)展過程也歷盡曲折、失敗、沖突與逆轉(zhuǎn),當(dāng)然也不乏眾多偶然因素的意外影響。
值得注意的是,這個(gè)曾經(jīng)估值近千億美元的 在技術(shù)運(yùn)作上一直遵循著三個(gè)指導(dǎo)原則:讓事情變得更簡(jiǎn)單、絕不重新發(fā)明輪子、盡可能使用經(jīng)過驗(yàn)證的可靠技術(shù)。
在當(dāng)今這個(gè)各領(lǐng)域巨頭們都在過度堆砌豪華技術(shù)棧以求建立技術(shù)霸權(quán)的時(shí)代, 的成功也不禁讓人思考,是否最終 99% 的公司都可以使用由三、四個(gè)人管理的經(jīng)典 LAMPish 堆棧?
發(fā)展史
2009 年,27 歲剛剛從斯坦福大學(xué)畢業(yè)的 Kevin Systrom 任職于 ——一家旅行推薦初創(chuàng)公司。Systrom 之前曾在谷歌擔(dān)任過企業(yè)開發(fā)助理,并在 Odeo 公司實(shí)習(xí)(該公司后來發(fā)展成了 Twitter,也就是如今的 X)。
雖然 Systrom 并沒有接受過計(jì)算機(jī)科學(xué)方面的正式訓(xùn)練,但還是憑借著才智和毅力在 任職時(shí)利用業(yè)余時(shí)間學(xué)會(huì)了編程。他最終開發(fā)出一款名叫 Burbn 的 Web 應(yīng)用原型,其設(shè)計(jì)靈感來自他個(gè)人對(duì)威士忌和波本酒的深深喜愛。Burbn 應(yīng)用允許用戶簽到、發(fā)布邀約和分享照片。盡管當(dāng)時(shí)基于位置的簽到類應(yīng)用非常流行,但 Burbn 的照片共享功能仍在同類市場(chǎng)中顯得獨(dú)樹一幟。
2010 年 3 月,關(guān)鍵的轉(zhuǎn)折點(diǎn)不期而至。當(dāng)時(shí) Systrom 參加了硅谷初創(chuàng)公司 Hunch 的一場(chǎng)聚會(huì),并在會(huì)上遇見了來自 和 的兩位風(fēng)險(xiǎn)投資家。在向他們展示了 Burbn 應(yīng)用的原型之后,大家決定有機(jī)會(huì)喝杯咖啡再做進(jìn)一步討論。首次會(huì)面之后,Systrom 決定辭掉工作、專心打磨 Burbn。短短兩周之內(nèi),他就從 和 籌集到 50 萬美元的種子資金,用以進(jìn)一步拓展自己的創(chuàng)業(yè)公司。
有了種子資金的加持,Systrom 得以組建一支維系業(yè)務(wù)運(yùn)轉(zhuǎn)的團(tuán)隊(duì):第一位加入的成員是 25 歲的 Mike Krieger。Krieger 同樣來自斯坦福大學(xué),此前曾在社交媒體平臺(tái) Meebo 擔(dān)任工程師兼用戶體驗(yàn)設(shè)計(jì)師,而且兩人在校期間就認(rèn)識(shí)對(duì)方。
在 Krieger 加入之后,二人重新評(píng)估了 Burbn 的業(yè)務(wù)空間,并決定將注意力集中在單一核心之上:分享由移動(dòng)設(shè)備拍攝的照片。他們仔細(xì)研究了當(dāng)時(shí)攝影領(lǐng)域的其他領(lǐng)先應(yīng)用。在他們二人看來, 應(yīng)用的表現(xiàn)最出色,當(dāng)時(shí)也頗受市場(chǎng)歡迎。其最大亮點(diǎn)就是提供豐富的功能選項(xiàng),比如照片濾鏡。然而,由于該軟件缺乏社交媒體分享功能,Systrom 和 Krieger 從 和 等社交平臺(tái)的夾縫當(dāng)中看到了巨大潛力。
于是他們退后一步,將 Burbn 精簡(jiǎn)成了照片加評(píng)論加“點(diǎn)贊”的功能綜合體。以此為基礎(chǔ),他們將應(yīng)用重新命名為 ,結(jié)合的是 Instant(即時(shí))與 (電報(bào))兩個(gè)單詞。他們還專注于改善照片共享體驗(yàn),想要把 打造成一款極簡(jiǎn)化、盡可能減少用戶操作需求的產(chǎn)品。經(jīng)過八周的應(yīng)用調(diào)整之后,他們帶著 beta 版本給朋友們體驗(yàn),嘗試進(jìn)行初步性能評(píng)估。在解決了軟件中的一些錯(cuò)誤之后, 首度與全世界用戶見面。
2010 年 10 月 6 日 的 iOS 版本正式亮相,并在一天之內(nèi)就吸引到 2.5 萬名用戶。在第一周結(jié)束時(shí), 的下載量已達(dá) 10 萬次。到 12 月中旬,其用戶數(shù)量達(dá)到 100 萬。必須承認(rèn), 的成功有著很強(qiáng)的運(yùn)氣因素,因?yàn)榫驮趲讉€(gè)月前(2010 年 6 月)搭載更強(qiáng)攝像頭的 iPhone 4 剛剛驚艷出爐。
隨著 用戶基礎(chǔ)的迅速擴(kuò)張,更多投資者對(duì)這家年輕的公司表現(xiàn)出興趣。2011 年 2 月, 在 A 輪融資中籌得 700 萬美元。作為其投資方之一, Capital 為 開出了 2500 萬美元的市場(chǎng)估值。除了機(jī)構(gòu)投資者之外, 還吸引到社交媒體技術(shù)行業(yè)眾多領(lǐng)先廠商的關(guān)注,其中就包括 Twitter 和 。
盡管新一輪融資讓 Systrom 和 Krieger 擁有了擴(kuò)大人員規(guī)模的底氣,但兩位創(chuàng)始人還是決定控制自身體量,將班底繼續(xù)保持在十幾人的水平。
Systrom 在 Odeo 實(shí)習(xí)時(shí)結(jié)識(shí)了 Twitter 聯(lián)合創(chuàng)始人 Jack Dorsey。Dorsey 也對(duì) 表現(xiàn)出深厚的興趣,并提出出手收購(gòu)的想法。據(jù)報(bào)道,Twitter 最終提出了價(jià)值約 5 億平均的股票收購(gòu)方案,但被 Systrom 予以回絕。
用戶從 0 增長(zhǎng)到 1400 萬,
背后僅靠 3 名工程師支撐
從 2010 年 10 月到 2011 年 12 月, 在短短一年多時(shí)間里將用戶數(shù)量從 0 擴(kuò)展至 1400 萬。而這一切的實(shí)現(xiàn),背后僅有 3 名工程師的參與。
這個(gè)驚人目標(biāo)源自三大基本原則,外加穩(wěn)定可靠的技術(shù)棧,以下是 的指導(dǎo)原則與技術(shù)棧構(gòu)成分析。
一直以來, 的技術(shù)運(yùn)作都遵循著三個(gè)指導(dǎo)原則:
簡(jiǎn)要介紹技術(shù)棧
的早期基礎(chǔ)設(shè)施運(yùn)行在 AWS 之上,使用 EC2 配合 Ubuntu Linux,EC2 是亞馬遜提供的服務(wù),允許開發(fā)人員租用虛擬計(jì)算機(jī)承載自家工作負(fù)載。
為了保證一切盡可能簡(jiǎn)單,這里用純粹的工程師思維展開討論,延著用戶會(huì)話的生命周期捋順整個(gè)流程:
前端
會(huì)話:用戶打開 應(yīng)用。
最初于 2010 年發(fā)布 iOS 版應(yīng)用。由于 Swift 語言要到 2014 年才亮相,所以合理的猜測(cè)是 是使用 -C 和 UIKit 等方案組合編寫而成。
負(fù)載均衡
會(huì)話:在應(yīng)用開啟之后,向后端發(fā)送一條獲取主提要圖像的請(qǐng)求,此請(qǐng)求隨后抵達(dá) 負(fù)載均衡器。
采用亞馬遜的 Elastic Load 服務(wù)。工程師們租用了 3 個(gè) NGINX 實(shí)例,并根據(jù)其運(yùn)行情況來決定何時(shí)切入和切出。
每條請(qǐng)求會(huì)首先抵達(dá)負(fù)載均衡器,而后再被路由至實(shí)際應(yīng)用服務(wù)器。
后端
會(huì)話:負(fù)載均衡器將請(qǐng)求發(fā)送至應(yīng)用服務(wù)器,而應(yīng)用服務(wù)器負(fù)責(zé)保存正確處理請(qǐng)求所必需的邏輯。
的應(yīng)用服務(wù)器使用 Django、由 Python 編寫,并選擇 作為其 WSGI 服務(wù)器。這里解釋一下,WSGI(Web 服務(wù)器網(wǎng)關(guān)接口)負(fù)責(zé)將請(qǐng)求從 Web 服務(wù)器轉(zhuǎn)發(fā)至 Web 應(yīng)用程序。 使用 Fabric 同時(shí)在多個(gè)實(shí)例上并行運(yùn)行命令,從而在幾秒鐘之內(nèi)完成代碼部署。
這一切共同運(yùn)行在 25 臺(tái)以上的亞馬遜 High-CPU Extra-Large 超大設(shè)備之上。由于服務(wù)器本身保持無狀態(tài),所以在需要處理更多請(qǐng)求時(shí),可以靈活添加更多計(jì)算資源。
通用數(shù)據(jù)存儲(chǔ)
會(huì)話:應(yīng)用服務(wù)器須識(shí)別出請(qǐng)求所需要的主提要數(shù)據(jù),這里猜測(cè)它需要完成以下流程:
獲取相關(guān)圖像的最新 ID;
獲取與這些 ID 相匹配的實(shí)際圖像;
為這些圖像獲取用戶數(shù)據(jù)。
數(shù)據(jù)庫:
會(huì)話:應(yīng)用服務(wù)器從 處獲取相關(guān)圖像的最新 ID。
應(yīng)用服務(wù)器將從 處提取數(shù)據(jù), 存儲(chǔ)有 的大部分?jǐn)?shù)據(jù),包括用戶和照片元數(shù)據(jù)。
和 Django 之間的連接,由 負(fù)責(zé)匯總成池。
由于收取到的數(shù)據(jù)量很大(每秒超過 25 張圖像和 90 個(gè)贊),因此 需要對(duì)數(shù)據(jù)進(jìn)行分片。 依靠代碼將數(shù)千個(gè)“邏輯”分片映射至數(shù)個(gè)物理分片。
還面臨著另一個(gè)有趣挑戰(zhàn),即如何生成可以按時(shí)間排序的 ID。他們生成的可按時(shí)間排序 ID 如下所示:
借助 中的可按時(shí)間排序 ID,應(yīng)用服務(wù)器能夠成功接收到相關(guān)圖像的最新 ID。
圖像存儲(chǔ):S3 與
會(huì)話:之后,應(yīng)用服務(wù)器會(huì)獲取與各圖像 ID 相匹配的實(shí)際圖像,并通過快速 CDN 鏈接為用戶提供順暢的加載體驗(yàn)。
Amazon S3 中存儲(chǔ)有數(shù)以 TB 的圖像。這些圖像可通過 Amazon 被快速交付給用戶。
緩存:Redis 與
會(huì)話:為了從 處獲取用戶數(shù)據(jù),應(yīng)用服務(wù)器(Django)使用 Redis 將圖像 ID 與用戶 ID 進(jìn)行匹配。
在 Redis 的支持下, 能夠?yàn)榧s 3 億張圖像存儲(chǔ)建立起指向創(chuàng)建者用戶 ID 的映射,借此引導(dǎo)在獲取主提要、活動(dòng)提要等圖像時(shí)具體應(yīng)查詢哪個(gè)分片。所有 Redis 都存儲(chǔ)在內(nèi)存內(nèi)以降低延遲,并將數(shù)據(jù)分片至多臺(tái)機(jī)器之上。
通過一系列巧妙的哈希處理, 得以在不到 5 GB 空間內(nèi)存儲(chǔ)這 3 億個(gè)鍵映射。
由此建立的圖像 ID 與用戶 ID 的鍵值映射,用于指示具體應(yīng)查詢哪個(gè) 分片。
會(huì)話:借助 的高效緩存(最近響應(yīng)均被納入緩存),從 處獲取用戶數(shù)據(jù)的速度很快。
對(duì)于常規(guī)緩存, 使用 。當(dāng)時(shí) 設(shè)置了 6 個(gè) 實(shí)例,可以在 Django 上以相對(duì)簡(jiǎn)單的方式進(jìn)行分層。
有趣的事實(shí):兩年之后的 2013 年, 發(fā)布了一篇具有里程碑意義的論文,介紹了他們?nèi)绾螖U(kuò)展 以順利實(shí)現(xiàn)每秒數(shù)十億條請(qǐng)求的處理能力()。
會(huì)話:用戶現(xiàn)在可以看到主頁內(nèi)容,其中展示的就是其所關(guān)注用戶的最新圖像。
主副本設(shè)置
和 Redis 均在主副本設(shè)置中運(yùn)行,并使用 Amazon EBS(Elastic Block Store)快照對(duì)系統(tǒng)進(jìn)行頻繁備份。
推送通知與異步任務(wù)
會(huì)話:現(xiàn)在,假設(shè)用戶關(guān)閉了 應(yīng)用,但隨后收到朋友發(fā)布新圖像的推送通知。
與 的其他推送通知一樣,動(dòng)態(tài)推送通知也是由 pyapns 負(fù)責(zé)發(fā)送。Pyapns 是一款開源、通用的蘋果推送通知(APNS)提供方案。
會(huì)話:用戶非常喜歡這張圖像,并決定分享到 Twitter 那邊。
在后端,這項(xiàng)任務(wù)會(huì)被推入任務(wù)隊(duì)列 Gearman,它的功能就是把工作移交給更適合的其他設(shè)備。 擁有約 200 個(gè) Python 工作線程,專供 Gearman 任務(wù)隊(duì)列使用。
Gearman 用于執(zhí)行多項(xiàng)異步任務(wù),例如向所有用戶的關(guān)注者推送新動(dòng)態(tài)(例如發(fā)布的新圖像,這項(xiàng)功能被稱為 fanout)。
監(jiān)控
會(huì)話:不好! 應(yīng)用因?yàn)榉?wù)器發(fā)生故障、發(fā)出錯(cuò)誤響應(yīng)而遭遇崩潰。三名 工程師立即收到了警報(bào)。
使用開源 Django 應(yīng)用 Sentry 來實(shí)時(shí)監(jiān)控 Python 錯(cuò)誤。
Munin 則用于整理系統(tǒng)范圍內(nèi)的指標(biāo)并發(fā)出異常警報(bào)。 設(shè)置有一大堆自定義 Munin 插件,用以跟蹤應(yīng)用層級(jí)的運(yùn)行指標(biāo),例如每秒發(fā)布的圖像數(shù)量。
Pingdom 負(fù)責(zé)進(jìn)行外部服務(wù)監(jiān)控, 則用于處理事件和通知。
最終架構(gòu)一覽
買下
到 2012 年 3 月, 應(yīng)用的用戶群體已增長(zhǎng)至約 2700 萬。2012 年 4 月, 推出了 Android 版本,不到一天內(nèi)下載量即突破 100 萬次。當(dāng)時(shí),該公司還即將進(jìn)行估值 5 億美元的新一輪融資。順帶一提,Systrom 與 創(chuàng)始人扎克伯格之前在斯坦福大學(xué)舉辦的活動(dòng)上結(jié)識(shí),并在 迅速走紅后一直保持著聯(lián)系。
2012 年 4 月,(現(xiàn)更名為 Meta)提出以 10 億美元現(xiàn)金加股票的價(jià)碼收購(gòu) ,同時(shí)承諾讓 繼續(xù)保持獨(dú)立管理。此后不久,就在 即將進(jìn)行首輪公開募股(IPO)之前, 成功憑借這一條件將其收入囊中。
于 2012 年 11 月發(fā)布功能有所精簡(jiǎn)的網(wǎng)站版本。2014 年 6 月,面向 Amazon Fire 設(shè)備的版本正式發(fā)布。最后在 2016 年,這款已經(jīng)在全球掀起熱潮的照片分享應(yīng)用終于出現(xiàn)在微軟 Windows 平板電腦和 PC 端之上。
為何能一炮而紅?
盡管 現(xiàn)已擁有大量功能,但其仍然牢牢把握著當(dāng)初的設(shè)計(jì)原則:通過應(yīng)用界面可直接創(chuàng)建免費(fèi)賬戶,并輕松上傳各種媒體素材(包括圖像和視頻)。之后,用戶可以使用過濾器編輯上傳的媒體內(nèi)容,并配合位置信息和主題標(biāo)簽(即以 # 號(hào)開頭的單詞或短語,可供社交媒體平臺(tái)識(shí)別帖子所屬的特定主題)進(jìn)行組織。用戶可以將個(gè)人資料設(shè)為公開或不可見,二者的區(qū)別在于:使用公開個(gè)人資料時(shí),其他所有 用戶均可查看該用戶的照片 / 視頻;而使用不可見設(shè)置時(shí),用戶需要申請(qǐng)并獲得批準(zhǔn)后才能看到帖子內(nèi)容。
用戶還可以搜索主題標(biāo)簽和位置來瀏覽其他用戶的照片和視頻。此外,用戶可以滑動(dòng)瀏覽隨機(jī)熱門內(nèi)容,并通過為帖子“點(diǎn)贊”或添加評(píng)論等方式與其他用戶的照片和視頻進(jìn)行交互。當(dāng)有用戶“關(guān)注”另一用戶時(shí),即可將后者的照片和視頻轉(zhuǎn)發(fā)到自己的動(dòng)態(tài)當(dāng)中。
應(yīng)用的首個(gè)版本僅允許用戶以正方形長(zhǎng)寬比(即圖像寬度與高度間的比例關(guān)系)顯示媒體,即圖像的高度和寬度相同。也就是說,當(dāng)時(shí) 用戶只能發(fā)布 2010 年時(shí) iPhone 4 所支持的 640 像素寬度相匹配的媒體。這一設(shè)計(jì)直到 2015 年才有所變化,用戶終于能夠上傳尺寸更大的媒體素材(最高 1080 像素)。
自首次推出以來, 又陸續(xù)添加了消息收發(fā)功能,并允許用戶在同一帖子中展示多個(gè)圖像或視頻。
該應(yīng)用最受歡迎的功能的之一就是“ Stories”。通過此項(xiàng)功能,用戶可以將照片和視頻發(fā)布到應(yīng)用內(nèi)的獨(dú)立內(nèi)容源處。這類帖子只在發(fā)布后的 24 小時(shí)內(nèi)向其他用戶開放。據(jù) 介紹,截至 2022 年,每天有 5 億人使用 Stories 功能。
提供的照片分享與評(píng)論功能營(yíng)造出強(qiáng)烈的用戶參與度和營(yíng)銷口碑,促使用戶自發(fā)宣傳、吸引好友和家人紛紛加入。其簡(jiǎn)潔的界面和順手的功能也在市場(chǎng)上備受青睞。它允許用戶通過滑動(dòng)輕松瀏覽大量帖子,在一定程度上培養(yǎng)了受眾的使用、乃至生活習(xí)慣。
盡管自 Meta(前 )收購(gòu)以來, 的用戶數(shù)量仍在持續(xù)增長(zhǎng),但這款應(yīng)用本身的改進(jìn)也變得乏善可陳。唯一延續(xù)下來的,就是簡(jiǎn)單直觀的用戶體驗(yàn)和對(duì)照片 / 視頻共享功能的核心關(guān)注。盡管收購(gòu)出價(jià)不菲,但對(duì) Meta 來說,這 10 億美元無疑是筆非常劃算的買賣。
2019 年,市場(chǎng)研究公司 預(yù)測(cè),到 2021 年 用戶數(shù)量將達(dá)到 1.172 億。2018 年, 成為蘋果應(yīng)用商店中下載量第二大的免費(fèi)應(yīng)用(僅次于 YouTube 的免費(fèi)移動(dòng)端應(yīng)用)。到 2020 年, 的月活用戶規(guī)模正式突破 10 億大關(guān)。
原文鏈接:
今日好文推薦
活動(dòng)推薦
首屆全國(guó)先進(jìn)計(jì)算技術(shù)創(chuàng)新大賽,分為專題賽和總決賽,主要圍繞算力創(chuàng)新、算法創(chuàng)新、應(yīng)用創(chuàng)新和生態(tài)構(gòu)建四方面展開,歡迎廣大開發(fā)者和高校科技愛好者掃描下方二維碼進(jìn)入大賽官網(wǎng)了解詳情。
讀者福利
人工智能——開源生態(tài)圖譜2023(必備)
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。