五月综合激情婷婷六月,日韩欧美国产一区不卡,他扒开我内裤强吻我下面视频 ,无套内射无矿码免费看黄,天天躁,日日躁,狠狠躁

新聞動(dòng)態(tài)

云端架構(gòu)助力魅族應(yīng)用商店運(yùn)維的案例分享

發(fā)布日期:2021-12-24 00:14 | 文章來(lái)源:源碼之家

背景:2014年9月4日,魅族科技今日與戴爾簽署合作備忘錄,雙方將建立長(zhǎng)期戰(zhàn)略合作伙伴關(guān)系,致力于加速魅族移動(dòng)互聯(lián)網(wǎng)基礎(chǔ)建設(shè),同時(shí)協(xié)助魅族搭建內(nèi)部私有云。這一舉動(dòng),也體現(xiàn)了戴爾對(duì)中國(guó)高端手機(jī)制造業(yè)的支持。 魅族云服務(wù)的優(yōu)勢(shì)在于系統(tǒng)級(jí)別整合、權(quán)限智能分配、一站式帳號(hào)管理,這也對(duì)互聯(lián)網(wǎng)整體解決方案提出了更高的要求,并面臨更多難點(diǎn)。此次合作的建立標(biāo)志著魅族又一次與國(guó)際頂尖信息技術(shù)供應(yīng)商的接軌,業(yè)界更佳期待戴爾發(fā)揮其解決方案優(yōu)勢(shì),全力幫助魅族加速其云架構(gòu)建設(shè),實(shí)現(xiàn)更大的成功。

應(yīng)用商店可以說(shuō)是移動(dòng)設(shè)備上最特殊的一個(gè)應(yīng)用,它用于分發(fā)和管理其它應(yīng)用,是移動(dòng)操作系統(tǒng)的核心之一,但和操作系統(tǒng)其它組件不同,它需要一個(gè)龐大的云端作為支持。

魅族應(yīng)用商店是國(guó)內(nèi)最早的應(yīng)用分發(fā)平臺(tái),在國(guó)內(nèi)首創(chuàng)了許多業(yè)務(wù)模式,本次魅族工程師將分享魅族應(yīng)用商店云端的整體架構(gòu)。

水平分層、垂直拓展

應(yīng)用商店首先定位于應(yīng)用管理平臺(tái),其次更是應(yīng)用分發(fā)平臺(tái),其典型業(yè)務(wù)場(chǎng)景包括:

幫助Flyme用戶(hù)找應(yīng)用;
幫助Flyme開(kāi)發(fā)者推廣、分發(fā)應(yīng)用;
營(yíng)造維護(hù)應(yīng)用分發(fā)生態(tài)圈。
根據(jù)業(yè)務(wù)場(chǎng)景,不難推導(dǎo)出業(yè)務(wù)架構(gòu)特點(diǎn):

讀多寫(xiě)少;
請(qǐng)求量大、并發(fā)高;
系統(tǒng)要求延時(shí)低;
數(shù)據(jù)規(guī)??煽兀?br />用戶(hù)關(guān)聯(lián)弱。
隨著用戶(hù)規(guī)模的增長(zhǎng),不斷的重構(gòu)、線上運(yùn)行、探索與沉淀,逐步形成了當(dāng)前平臺(tái)的架構(gòu)。如下圖所示。橫向、典型的三層架構(gòu);縱向、以業(yè)務(wù)為驅(qū)動(dòng),積累沉淀了眾多技術(shù)規(guī)范、基礎(chǔ)組件,豐富完善全棧業(yè)務(wù)監(jiān)控。依托完善的監(jiān)控體系,衍生出相應(yīng)的服務(wù)治理機(jī)制。

服務(wù)化框架

平臺(tái)早期,規(guī)模小、結(jié)構(gòu)簡(jiǎn)單。伴隨公司互聯(lián)網(wǎng)轉(zhuǎn)型,用戶(hù)規(guī)模高速增長(zhǎng)、業(yè)務(wù)增多,平臺(tái)關(guān)系復(fù)雜、擴(kuò)展難、開(kāi)發(fā)效率低,原有架構(gòu)完全無(wú)法服務(wù)大規(guī)模的Flyme用戶(hù)。

為了減少業(yè)務(wù)依賴(lài)、提升集群效率、提高開(kāi)發(fā)部署效率,我們基于業(yè)務(wù)典型場(chǎng)景,把業(yè)務(wù)邏輯模塊化,單元化。拆分出了應(yīng)用管理、應(yīng)用展示(榜單)、應(yīng)用推薦(個(gè)性化推薦)、應(yīng)用搜索等多個(gè)服務(wù)。

服務(wù)分為兩類(lèi),一類(lèi)是基礎(chǔ)服務(wù),該類(lèi)不依賴(lài)其他服務(wù),業(yè)務(wù)邏輯簡(jiǎn)單,僅提供基礎(chǔ)業(yè)務(wù)邏輯,例如應(yīng)用管理服務(wù)。另一類(lèi)是聚合服務(wù),該類(lèi)聚合多個(gè)基礎(chǔ)服務(wù),形成相對(duì)復(fù)雜的業(yè)務(wù)邏輯,例如應(yīng)用搜索服務(wù)。

成型服務(wù)化框架能滿(mǎn)足大眾化的需求,如遠(yuǎn)程調(diào)用、動(dòng)態(tài)發(fā)現(xiàn)、負(fù)載均衡、監(jiān)控等,同時(shí)勢(shì)必會(huì)引入一些無(wú)關(guān)的功能,影響性能。外加此類(lèi)產(chǎn)品無(wú)法滿(mǎn)足我們的定制化需求,我們重復(fù)造輪子。與以往同類(lèi)產(chǎn)品不同,我們做了如下改進(jìn):

精細(xì)化度量指標(biāo)
實(shí)時(shí)度量計(jì)算
系統(tǒng)依賴(lài)、調(diào)用鏈
無(wú)縫IT系統(tǒng)集成
服務(wù)間采用自研的Kiev框架通訊。Kiev底層通訊基于Netty網(wǎng)絡(luò)框架,序列化支持協(xié)議支持Hessian、Protobuffer等,支持跨語(yǔ)言(C/Java)調(diào)用,通訊協(xié)議支持TCP、UDP等??蚣芑赯K(ZooKeeper)實(shí)現(xiàn)了High Availability與Load Balance策略。服務(wù)調(diào)用時(shí)會(huì)采樣,生成詳細(xì)的調(diào)用鏈,收集,產(chǎn)生豐富的服務(wù)狀態(tài)數(shù)據(jù)(Response Time,QPS),為服務(wù)治理提供了詳實(shí)有力的數(shù)據(jù)支撐。

消息隊(duì)列(MetaQ)

消息隊(duì)列是分布式應(yīng)用間交換信息的一種技術(shù)。為了解核心業(yè)務(wù)及輔助業(yè)務(wù),我們引入消息隊(duì)列,將搜索團(tuán)隊(duì)、大數(shù)據(jù)團(tuán)隊(duì)需要的業(yè)務(wù)數(shù)據(jù)定期全量同步,實(shí)時(shí)增量更新。既隔離了業(yè)務(wù)間的強(qiáng)耦合,又保障了數(shù)據(jù)的及時(shí)性。

接口規(guī)范

接口眾多、形式多樣,管理維護(hù)成本高,為了規(guī)范開(kāi)發(fā)流程、便于問(wèn)題跟蹤定位,我們制定了統(tǒng)一的接口規(guī)范。例如接口采用RESTful風(fēng)格,統(tǒng)一接口返回形式,約定每個(gè)業(yè)務(wù)層的錯(cuò)誤編碼,每個(gè)錯(cuò)誤編碼還會(huì)攜帶可選的錯(cuò)誤提示,方便問(wèn)題跟蹤。

安全性也是平臺(tái)不可忽略的一個(gè)關(guān)鍵點(diǎn),基于通用型的原則,我們采用了業(yè)界通用OAuth協(xié)議來(lái)保障接口安全。為了應(yīng)對(duì)異常流量對(duì)系統(tǒng)造成的沖擊,我們給接口層添加了流量控制功能。

分布式緩存

平臺(tái)早期,分發(fā)接口采用DB+本地緩存的方式提供數(shù)據(jù),這種模式DB壓力大、接口吞吐量小、本地緩存更新不及時(shí)。為了解決這些問(wèn)題,我們引入分布式緩存Redis。業(yè)務(wù)接口數(shù)據(jù)全部被緩存到Redis集群,緩存數(shù)據(jù)由定時(shí)任務(wù)主動(dòng)刷新,零穿透,緩存即存儲(chǔ)、存儲(chǔ)即緩存。依托Redis的高性能極大的提高了系統(tǒng)吞吐量。Redis集群先按業(yè)務(wù)場(chǎng)景做垂直切分、再根據(jù)數(shù)據(jù)量做水平分片。業(yè)務(wù)通過(guò)代理(Twemproxy)連接所有分片。Redis集群基于ZK實(shí)現(xiàn)HA(High Availability),基于定制化腳本實(shí)現(xiàn)線上自動(dòng)擴(kuò)容,這樣既保障了緩存集群的高可用性,又滿(mǎn)足了集群容量自動(dòng)擴(kuò)充的需求。

MySQL水平分片

隨著用戶(hù)規(guī)模增長(zhǎng),單庫(kù)單表已無(wú)法滿(mǎn)足業(yè)務(wù)需求,為此我們將數(shù)據(jù)量大的用戶(hù)數(shù)據(jù)庫(kù)橫向拆分出多個(gè)數(shù)據(jù)庫(kù)。為了降低運(yùn)維成本,我們采用了單實(shí)例多數(shù)據(jù)庫(kù)的部署模式。業(yè)務(wù)層通過(guò)分庫(kù)路由組件透明的訪問(wèn)數(shù)據(jù)庫(kù)。當(dāng)單實(shí)例多數(shù)據(jù)庫(kù)的模式無(wú)法支撐當(dāng)前業(yè)務(wù)需求時(shí),通過(guò)更新路由規(guī)則就可以平滑的完成DB擴(kuò)容。

GSLB(Global Server Load Balance)

使用域名提供服務(wù)的互聯(lián)網(wǎng)企業(yè),都無(wú)法避免在有中國(guó)特色的互聯(lián)網(wǎng)環(huán)境中遭遇到各種域名被緩存、用戶(hù)跨網(wǎng)訪問(wèn)緩慢等問(wèn)題。Flyme互聯(lián)網(wǎng)基礎(chǔ)架構(gòu)團(tuán)隊(duì)推出了一種全新的域名解析調(diào)度系統(tǒng):GSLB。GSLB是為移動(dòng)客戶(hù)端量身定做的基于Http(s)協(xié)議的流量調(diào)度解決方案,解決LocalDNS解析異常以及流量調(diào)度不準(zhǔn)。

GSLB的原理非常簡(jiǎn)單,主要有兩步:

A、客戶(hù)端直接訪問(wèn)GSLB服務(wù)接口,獲取業(yè)務(wù)在GSLB服務(wù)中配置的訪問(wèn)最優(yōu)的IP?;谌轂?zāi)考慮,我們保留了運(yùn)營(yíng)商LocalDNS域名解析的方式。

B、客戶(hù)端獲取到的業(yè)務(wù)服務(wù)IP后,直接向此IP發(fā)送業(yè)務(wù)協(xié)議請(qǐng)求。

GSLB將域名解析的協(xié)議由DNS協(xié)議換成了Http(s)協(xié)議,并不復(fù)雜。但是這一轉(zhuǎn)換,卻帶來(lái)了許多收益:

A、解決域名解析異常:用戶(hù)使用Http(s)協(xié)議向魅族GSLB服務(wù)發(fā)起域名解析請(qǐng)求,繞過(guò)了運(yùn)營(yíng)商的LocalDNS,用戶(hù)在客戶(hù)端的域名解析請(qǐng)求將不會(huì)遭受到域名解析異常的困擾,有效預(yù)防DNS劫持。

B、用戶(hù)就近訪問(wèn):GSLB能直接獲取到用戶(hù)IP,結(jié)合魅族自有IP地址庫(kù)以及測(cè)速機(jī)制,可以為用戶(hù)搜索最優(yōu)的IDC服務(wù)節(jié)點(diǎn)。

C、實(shí)現(xiàn)精準(zhǔn)流量調(diào)度:流量異常(周年慶推廣活動(dòng))或機(jī)房故障時(shí),方便快捷的將流量平滑的調(diào)度到附近的機(jī)房,保障服務(wù)的高可用性。

下載防劫持

運(yùn)營(yíng)商HTTP劫持推送廣告的情況相信大家并不陌生,近來(lái)國(guó)內(nèi)各大應(yīng)用分發(fā)平臺(tái)都有不同的程度的應(yīng)用下載被劫持現(xiàn)象,我們也難置身事外,為此,我們上線文件下載防劫持方案。

如下圖所示。應(yīng)用商店在分發(fā)應(yīng)用時(shí),會(huì)同時(shí)分發(fā)應(yīng)用文件的摘要等相關(guān)信息,客戶(hù)端下載獲取到應(yīng)用文件(Apk)后,會(huì)計(jì)算并比對(duì)文件的摘要,以此來(lái)判別文件是否被修改或替換。如果文件比對(duì)失敗,則更換為HTTPS通道繼續(xù)下載應(yīng)用。為防止CDN與源站的網(wǎng)絡(luò)被劫持,CDN回源前后也會(huì)校驗(yàn)文件信息。

除了比對(duì)應(yīng)用文件的摘要,我們還會(huì)比對(duì)文件的大小、包名(Android應(yīng)用的唯一標(biāo)識(shí))、版本號(hào)等信息。針對(duì)APK下載場(chǎng)景,生產(chǎn)環(huán)境我們主要使用文件大小和包名來(lái)做校驗(yàn)。

有些游戲應(yīng)用文件比較大,如熱門(mén)游戲《植物大戰(zhàn)僵尸》大小在100M左右、熱門(mén)網(wǎng)絡(luò)游戲《夢(mèng)幻西游》大小在300M左右。如果全量計(jì)算文件摘要這樣會(huì)比較耗時(shí)、耗資源,對(duì)硬件資源有限的手機(jī)來(lái)說(shuō)是一筆很大的開(kāi)銷(xiāo),勢(shì)必會(huì)影響到用戶(hù)的操作體驗(yàn)。為此,針對(duì)大文件,我們采用了部分比對(duì)文件摘要的方式。

應(yīng)用商店應(yīng)用數(shù)量大、渠道不單一,為了預(yù)防分發(fā)信息異常造成大面積應(yīng)用下載失敗事故,云端新增了動(dòng)態(tài)關(guān)閉、調(diào)整客戶(hù)端判別邏輯的機(jī)制。

無(wú)論劫持動(dòng)作是否成功修復(fù),客戶(hù)端均會(huì)上報(bào)操作日志,借助大數(shù)據(jù)的優(yōu)勢(shì),我們可以分析改進(jìn)防劫持效果。

版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開(kāi)通

自選配置、實(shí)時(shí)開(kāi)通

免備案

全球線路精選!

全天候客戶(hù)服務(wù)

7x24全年不間斷在線

專(zhuān)屬顧問(wèn)服務(wù)

1對(duì)1客戶(hù)咨詢(xún)顧問(wèn)

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部