知乎app怎么離線緩存 知乎APP的技術(shù)架構(gòu)是什么樣的?
知乎APP的技術(shù)架構(gòu)是什么樣的?知乎截止2019年1月,用戶數(shù)2億、話題38萬(wàn)、問(wèn)題2800萬(wàn)、回答我數(shù)1.3億。今天我們通過(guò)知乎在線部分的技術(shù)架構(gòu)分享分享,來(lái)去聊聊互聯(lián)網(wǎng)平臺(tái)技術(shù)架構(gòu)都確定了哪些層面
知乎APP的技術(shù)架構(gòu)是什么樣的?
知乎截止2019年1月,用戶數(shù)2億、話題38萬(wàn)、問(wèn)題2800萬(wàn)、回答我數(shù)1.3億。今天我們通過(guò)知乎在線部分的技術(shù)架構(gòu)分享分享,來(lái)去聊聊互聯(lián)網(wǎng)平臺(tái)技術(shù)架構(gòu)都確定了哪些層面~
1、微服務(wù)架構(gòu),知乎從11年就結(jié)束了微服務(wù)的探索,接觸過(guò)protocolbuffers、Avro、Thrift,最終在16年確認(rèn)可以使用Thrift,而使用Consul和HAProxy作為注冊(cè)中心和負(fù)載均衡。是在14年再確認(rèn)的這套微服務(wù)架構(gòu),另外很穩(wěn)定在用到了現(xiàn)在。所以我大家別問(wèn)我想知道為什么不可以使用gRPC了。
2、云平臺(tái),知乎有自己的內(nèi)部研發(fā)的ZAE,絕大部分的大俠幫幫忙業(yè)務(wù)容器在15年就早就完全跑在了Docker里,現(xiàn)在我們HBase和Kafka也是跑在容器里的。我們最開(kāi)始可以使用的是Mesos做的資源調(diào)度,現(xiàn)在已經(jīng)切換到了Kubernetes。
3、防御部署平臺(tái),知乎的部署平臺(tái)是與ZAE在一起的,設(shè)計(jì)和實(shí)現(xiàn)Jenkins重新搭建的自動(dòng)出現(xiàn)獨(dú)立顯卡,在MR(Gitlab)階段自動(dòng)啟動(dòng)建議使用SonarQube進(jìn)行靜態(tài)代碼檢查。重新部署分為測(cè)試環(huán)境,辦公室環(huán)境,金絲雀1(灰度單個(gè)容器),金絲雀2(灰度20%流量),生產(chǎn)環(huán)境(100%流量上游戲)。如果不是金絲雀階段出現(xiàn)錯(cuò)誤,會(huì)不自動(dòng)并且回滾操作。
4、監(jiān)控,我們主要注意基于組件Grafana、OpenTracing、Graphite等壘建了監(jiān)控系統(tǒng)。另外自研了Halo這個(gè)可以方便啊的是業(yè)務(wù)方觀測(cè)到服務(wù)之間的依賴關(guān)系、更快的響應(yīng)時(shí)間(P95,P99,P999)、出錯(cuò)數(shù)。而也進(jìn)行了新技術(shù)的嘗試,目前在業(yè)務(wù)容器監(jiān)控使用了Prometheus。
5、存儲(chǔ),通常是MySQL、Redis、HBase;正準(zhǔn)備調(diào)研后TiDB,目前有一套生產(chǎn)集群上游戲打算給「已讀」服務(wù)建議使用。
6、消息隊(duì)列,早期在用自研的Sink,目前使用Kafka,同樣的提供在Kafka的基礎(chǔ)上包裝了Beanstalkd另外任務(wù)隊(duì)列方便啊業(yè)務(wù)并且在用。
7、編程語(yǔ)言,Python、Golang、Java、Rust。目前Python使用場(chǎng)景漸漸地變少。Java在一些算法項(xiàng)目和商業(yè)系統(tǒng)中有建議使用。搜索系統(tǒng)建議使用的Rust寫(xiě)回Lucene,現(xiàn)并在此寫(xiě)回了類ES的集群化搜索引擎。
有什么好用的,清理軟件?
WIN10最方便的清理工具是系統(tǒng)自帶的各種管家、助手等等等等都用各種各樣的搗鼓你裝,總之已經(jīng)沒(méi)有必要,不過(guò)有風(fēng)險(xiǎn)。我的體會(huì)是,徹底沒(méi)必要安裝好第三方清理軟件,最放心的清理工具是WIN10系統(tǒng)隨機(jī)軟件的。再說(shuō)注冊(cè)表,永遠(yuǎn)千萬(wàn)不能定期清理,需要清理軟件如果說(shuō)沒(méi)用啊的可能沒(méi)有用,但注冊(cè)表清理并又不能增加性能和速度。我曾經(jīng)的很短段時(shí)間用著名的ccleaner做清理,直到有一天用它清理過(guò)之后才發(fā)現(xiàn)有些軟件又不能用。相對(duì)來(lái)說(shuō),火絨附帶的需要清理是比較好放心的,最起碼它不可能誤刪東西。