日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

實(shí)現(xiàn)一個(gè)刷數(shù)任務(wù),需要思考哪些維度?

來源: 責(zé)編: 時(shí)間:2024-03-18 09:42:27 180觀看
導(dǎo)讀前言大家好,我是田螺。相信很多后端開發(fā)的伙伴們,都做過刷數(shù)任務(wù)了吧。今天跟大家聊聊,做好一個(gè)刷數(shù)任務(wù),需要具備哪些后端思維。1. 數(shù)據(jù)的備份和還原我們做刷數(shù)任務(wù)的時(shí)候,首先要考慮的是,這些被刷的數(shù)據(jù)是否還要還原的。

前言

大家好,我是田螺。GDI28資訊網(wǎng)——每日最新資訊28at.com

相信很多后端開發(fā)的伙伴們,都做過刷數(shù)任務(wù)了吧。今天跟大家聊聊,做好一個(gè)刷數(shù)任務(wù),需要具備哪些后端思維。GDI28資訊網(wǎng)——每日最新資訊28at.com

1. 數(shù)據(jù)的備份和還原

我們做刷數(shù)任務(wù)的時(shí)候,首先要考慮的是,這些被刷的數(shù)據(jù)是否還要還原的。或者刷出問題時(shí),需要回滾的。如果是的話,我們就要做好備份。GDI28資訊網(wǎng)——每日最新資訊28at.com

如果你是把數(shù)據(jù)遷移到新的表,則有可能不需要備份,這個(gè)具體問題具體分析的哈。GDI28資訊網(wǎng)——每日最新資訊28at.com

通常,我們?cè)谝粋€(gè)事務(wù)內(nèi),先備份數(shù)據(jù),再操作刷數(shù)邏輯。GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

當(dāng)然,備份數(shù)據(jù)的方式有多種方式,可以數(shù)據(jù)庫備份,比如搞一個(gè)備份表。或者文件系統(tǒng)快照等,在需要的時(shí)候,就還原數(shù)據(jù)。GDI28資訊網(wǎng)——每日最新資訊28at.com

2.刷數(shù)維度是什么?是否支持灰度?

我們刷數(shù)的時(shí)候,先確認(rèn)下具體的業(yè)務(wù)需求和數(shù)據(jù)模型。然后需要確定刷數(shù)的維度是什么。GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

  • 客戶維度:比如刷數(shù)的維度可以是一個(gè)客戶。刷數(shù)的時(shí)候,把這個(gè)客戶的所有數(shù)據(jù)撈取出來,在一個(gè)事務(wù)內(nèi),把客戶的所有數(shù)據(jù),按照業(yè)務(wù)的規(guī)則,刷到一個(gè)表。
  • 賬號(hào)維度:刷數(shù)的維度是賬號(hào),在執(zhí)行刷數(shù)的時(shí)候,就是把這個(gè)賬號(hào)的所有數(shù)據(jù)撈取出來,在一個(gè)事務(wù)內(nèi),把賬號(hào)的所有數(shù)據(jù),刷到另外一個(gè)表。

當(dāng)然,還有其他維度,比如產(chǎn)品維度等等都可以,就看業(yè)務(wù)需求和你們的數(shù)據(jù)模型。GDI28資訊網(wǎng)——每日最新資訊28at.com

確認(rèn)了刷數(shù)維度后,需要思考你的刷數(shù)是否支持灰度。比如確認(rèn)客戶維度刷數(shù)后,你實(shí)現(xiàn)的代碼,是否支持灰度刷數(shù),也就是說,是否支持先刷一部分客戶,確認(rèn)沒問題后,再根據(jù)配置刷全量客戶。GDI28資訊網(wǎng)——每日最新資訊28at.com

3. 并發(fā)考慮,刷數(shù)過程是否需要加鎖。

比如,你要給一個(gè)客戶相關(guān)的業(yè)務(wù)表刷數(shù),需要考慮并發(fā)場(chǎng)景,簡(jiǎn)單點(diǎn)說,就是你在刷數(shù)的過程中,客戶是否可能在做交易請(qǐng)求,這時(shí)候,是否可能產(chǎn)生臟數(shù)據(jù)。GDI28資訊網(wǎng)——每日最新資訊28at.com

一般情況下,可以考慮給客戶維度加分布式鎖,比如加鎖的key是customerId。但是我們加鎖的時(shí)候,肯定是不希望影響客戶太久的,因?yàn)榧渔i后,整個(gè)刷數(shù)的過程中,系統(tǒng)是處理不了這個(gè)用戶的交易請(qǐng)求的,也就是說影響交易了。GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

所以也一般刷數(shù)任務(wù),我們會(huì)選擇在夜深人靜的時(shí)候執(zhí)行,這時(shí)候用戶發(fā)生交易的概率很低,影響相對(duì)較小。GDI28資訊網(wǎng)——每日最新資訊28at.com

4. 刷數(shù)失敗怎么辦?是否支持重試?

我們?cè)谒?shù)的時(shí)候,有可能會(huì)刷失敗。比如因?yàn)榫W(wǎng)絡(luò)問題、或者目標(biāo)表結(jié)構(gòu)等等。失敗后,我們有哪些措施保證呢:GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

如果刷數(shù)失敗的話,我們要確保數(shù)據(jù)的完整性和一致性,一般一個(gè)刷數(shù)維度,需要加事務(wù),確保失敗可以回滾,保證數(shù)據(jù)一致性。刷失敗之后,首先確認(rèn)分布式鎖要被移除(如果有加鎖的話),因?yàn)橐_認(rèn)即使失敗后,交易也是能正常進(jìn)行的。GDI28資訊網(wǎng)——每日最新資訊28at.com

還要考慮失敗支持重試。可以自動(dòng)重試或者手動(dòng)重試,比如通過xxl-job定時(shí)任務(wù)撈取,繼續(xù)重試。有時(shí)候,可以設(shè)置重試次數(shù)和重試間隔,確保任務(wù)在一段時(shí)間內(nèi)嘗試恢復(fù)。GDI28資訊網(wǎng)——每日最新資訊28at.com

5. 恰到好處的事務(wù)處理

我們第4小節(jié)提到,如果失敗了,需要保證數(shù)據(jù)的完整性和一致性。其實(shí),一般我們刷數(shù),就是通過加事務(wù)處理去保證的。GDI28資訊網(wǎng)——每日最新資訊28at.com

事務(wù)需要加到恰到好處,比如我們不能所有的刷數(shù)業(yè)務(wù)都放到一個(gè)事務(wù)內(nèi)。如果我們是按照客戶維度來刷數(shù)的,我們就一個(gè)事務(wù)把一個(gè)客戶所有的數(shù)據(jù)刷的邏輯放到一塊,當(dāng)然,有些查詢是可以放到事務(wù)外處理的,一些更新或者修改、刪除操作則放到事務(wù)內(nèi)。GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

如果你的數(shù)據(jù)是分庫處理的,則有可能刷數(shù)的時(shí)候要考慮分布式事務(wù)了。GDI28資訊網(wǎng)——每日最新資訊28at.com

6. 性能優(yōu)化,考慮多線并行執(zhí)行。

如果我們的刷數(shù)任務(wù)數(shù)據(jù)量很大,執(zhí)行耗時(shí)比較久的話。就建議可以多線程并行執(zhí)行。GDI28資訊網(wǎng)——每日最新資訊28at.com

比如你是分庫分表的,是有30個(gè)表,你可以A線程執(zhí)行1-10的表,B線程執(zhí)行11-20的表,C線程執(zhí)行21-30的表。GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

7. 日志記錄

我們執(zhí)行一個(gè)刷數(shù)任務(wù),一定要做好日志記錄。GDI28資訊網(wǎng)——每日最新資訊28at.com

我記得我們技術(shù)領(lǐng)導(dǎo)說過一句話,很有道理:評(píng)價(jià)你的日志是否打印得是否夠好。就是你根據(jù)控制臺(tái)打印出的日志,能知道你的復(fù)雜業(yè)務(wù)執(zhí)行到什么流程。如果異常中斷,你能根據(jù)日志快速知道什么異常,哪個(gè)業(yè)務(wù)數(shù)據(jù)有問題,那就夠了。GDI28資訊網(wǎng)——每日最新資訊28at.com

刷數(shù)日志打印,一般包括:GDI28資訊網(wǎng)——每日最新資訊28at.com

  • 記錄詳細(xì)的刷數(shù)任務(wù)日志
  • 包括執(zhí)行的步驟
  • 刷數(shù)成功與否
  • 刷數(shù)耗時(shí)等信息

8.監(jiān)控告警

我們開發(fā)刷數(shù)邏輯的時(shí)候,如果某種返回不符合預(yù)期的時(shí)候,就需要告警上報(bào)監(jiān)控(比如插入數(shù)據(jù)庫返回跟預(yù)期插入條數(shù)不一致)。GDI28資訊網(wǎng)——每日最新資訊28at.com

又或者是你刷數(shù)失敗,需要包這個(gè)異常日志打印出來,并且上報(bào)監(jiān)控(比如普羅米修斯,和企業(yè)微信通知)。比如這塊代碼:GDI28資訊網(wǎng)——每日最新資訊28at.com

try{    flushService.flushDataCustomerLevel(customerNo);}catch(Exception e){  Logger.error("flush customer data fail: {}", customerNo, e);  prometheusMonitor.report("刷數(shù)失敗",customerNo);  notify();  weChatWorkSend();}

9. 數(shù)據(jù)量大的時(shí)候,最好壓測(cè)

如果你刷的數(shù)據(jù)量很大的時(shí)候,最好做壓測(cè)。壓測(cè)通常包括模擬多種負(fù)載情況,以確保系統(tǒng)在不同條件下都能正常運(yùn)行。GDI28資訊網(wǎng)——每日最新資訊28at.com

做刷數(shù)任務(wù)壓測(cè),主要考慮這幾方面:GDI28資訊網(wǎng)——每日最新資訊28at.com

  • 數(shù)據(jù)量:使用大量數(shù)據(jù)進(jìn)行測(cè)試,以確保系統(tǒng)在處理大規(guī)模數(shù)據(jù)時(shí)的性能。這可以包括數(shù)據(jù)量的增長(zhǎng)、查詢和寫入的吞吐量等。
  • 網(wǎng)絡(luò)延遲和吞吐量:在模擬網(wǎng)絡(luò)延遲和限制吞吐量的情況下進(jìn)行測(cè)試,以了解系統(tǒng)在這些條件下的表現(xiàn)。
  • 錯(cuò)誤處理:引入模擬的錯(cuò)誤場(chǎng)景,例如數(shù)據(jù)庫連接中斷、請(qǐng)求超時(shí)等,以驗(yàn)證系統(tǒng)對(duì)錯(cuò)誤的處理能力。

刷數(shù)壓測(cè)的好處:GDI28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片GDI28資訊網(wǎng)——每日最新資訊28at.com

  • 性能評(píng)估:壓測(cè)可以幫助評(píng)估系統(tǒng)在處理大量數(shù)據(jù)時(shí)的性能。通過模擬真實(shí)負(fù)載,可以更好地了解系統(tǒng)的響應(yīng)時(shí)間、吞吐量和資源利用情況。
  • 容量規(guī)劃:通過壓測(cè),可以更好地了解系統(tǒng)在不同負(fù)載條件下的容量需求。這有助于進(jìn)行容量規(guī)劃,確保系統(tǒng)能夠應(yīng)對(duì)未來的增長(zhǎng)。
  • 發(fā)現(xiàn)潛在問題:壓測(cè)可以幫助發(fā)現(xiàn)系統(tǒng)中可能存在的潛在問題,如內(nèi)存泄漏、并發(fā)問題、資源瓶頸等。通過在模擬環(huán)境中發(fā)現(xiàn)并解決這些問題,可以避免它們?cè)谏a(chǎn)環(huán)境中引起嚴(yán)重后果。
  • 驗(yàn)證容錯(cuò)能力:壓測(cè)可以測(cè)試系統(tǒng)在出現(xiàn)錯(cuò)誤、超時(shí)、網(wǎng)絡(luò)故障等異常條件下的容錯(cuò)能力。這有助于確保系統(tǒng)能夠適應(yīng)不可預(yù)測(cè)的情況。
  • 性能優(yōu)化:壓測(cè)結(jié)果提供了性能瓶頸的線索,幫助團(tuán)隊(duì)進(jìn)行性能優(yōu)化。通過分析性能數(shù)據(jù),可以識(shí)別需要改進(jìn)的部分并優(yōu)化系統(tǒng)。
  • 規(guī)遇風(fēng)險(xiǎn):通過壓測(cè),可以更早地發(fā)現(xiàn)潛在的性能問題和瓶頸,有助于規(guī)遇系統(tǒng)上線后可能面臨的風(fēng)險(xiǎn)。

10. 實(shí)戰(zhàn)壓軸匯總:做一個(gè)刷數(shù)任務(wù),如何更好保護(hù)你的系統(tǒng)

10.1 設(shè)置個(gè)配置時(shí)間,可以控制任務(wù)跑多長(zhǎng)時(shí)間后終止。

有些時(shí)候,我們?nèi)绻麚?dān)心刷數(shù)任務(wù)跑太久,可能會(huì)影響交易,這時(shí)候我們可以搞個(gè)配置變量,比如apollo配置變量,控制刷數(shù)多長(zhǎng)時(shí)間后,可以停止。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.2 循環(huán)分頁查詢,設(shè)置最大次數(shù)告警監(jiān)控

我們做刷數(shù)任務(wù)的時(shí)候,經(jīng)常是分頁循環(huán)掃描某個(gè)客戶/用戶表,然后一批一批出來執(zhí)行刷數(shù)邏輯。比如偽代碼像這樣:GDI28資訊網(wǎng)——每日最新資訊28at.com

long minId while(true){   List<CustomerDo> customerList =  customer.pageQueryAscID(pageSize,minId);   flushCustomerData(customerList);   if(customerList.size()< pageSize){     break;   }   minId = customerList.get(customerList.size()-1).getId(); }

這塊代碼,其實(shí)沒啥問題。有些時(shí)候,我們可能手抖寫錯(cuò)了,可能導(dǎo)致死循環(huán)。GDI28資訊網(wǎng)——每日最新資訊28at.com

其實(shí)為了保護(hù)我們的系統(tǒng),我們可以先確認(rèn)下客戶有多少,然后設(shè)置個(gè)循環(huán)次數(shù),當(dāng)超過最大循環(huán)次數(shù)之后,就告警排查確認(rèn)。GDI28資訊網(wǎng)——每日最新資訊28at.com

long minId; Integer maxCycleNum =1000; Integer cycleNum = 0; while(true ){   List<CustomerDo> customerList =  customer.pageQueryAscID(pageSize,minId);   flushCustomerData(customerList);   if(customerList.size()< pageSize){     break;   }   minId = customerList.get(customerList.size()-1).getId();   if(cycleNum>= maxCycleNum){    //告警   }   cycleNum ++; }

當(dāng)然這只是個(gè)一種后端思路哈。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.3 如果定時(shí)任務(wù)是xxl-job ,路由規(guī)則是什么,并發(fā)問題考慮

大家如果使用過xxl-job作為定時(shí)任務(wù),應(yīng)該抖配置過它的路由規(guī)則吧。比如是分片的,還是第一個(gè)/最后一個(gè)等等。GDI28資訊網(wǎng)——每日最新資訊28at.com

如果是分片的,就是多個(gè)pod都可能執(zhí)行到你的業(yè)務(wù)邏輯。這時(shí)候你要考慮并發(fā)執(zhí)行,你的業(yè)務(wù)是否收影響。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.4 SQL是否命中索引,是否存在慢SQL

我們做刷數(shù)任務(wù)的時(shí)候,很多時(shí)候,都要跟SQL打交道。GDI28資訊網(wǎng)——每日最新資訊28at.com

我們要確保查詢、更新、或者刪除的數(shù)據(jù)量大的表,都要有索引了。要確保沒有慢SQL。GDI28資訊網(wǎng)——每日最新資訊28at.com

常規(guī)的我們可以用explain分析SQL,我們還可以通過壓測(cè)分析出來。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.5 如果加了分布式鎖,鎖時(shí)間考慮

如果你是按照客戶維度刷數(shù),加了客戶維度的分布式鎖,你要考慮鎖時(shí)間是多久,鎖時(shí)間是否可以配置(一般這種最好配置一下。)GDI28資訊網(wǎng)——每日最新資訊28at.com

如果你時(shí)間設(shè)置小,那這時(shí)候刷數(shù)還沒完成,鎖就超時(shí)釋放了,那不就有問題啦。GDI28資訊網(wǎng)——每日最新資訊28at.com

如果你時(shí)間設(shè)置過長(zhǎng)也不太好,當(dāng)然,你在刷完數(shù),finally執(zhí)行釋放鎖也可以。GDI28資訊網(wǎng)——每日最新資訊28at.com

finally {    redisService.deleteKey(customerNoKey);  }

10.6 大事務(wù)考慮,事務(wù)是否太多?是否可以拆分為小事務(wù)

我們?cè)谒?shù)的時(shí)候,為了保證數(shù)據(jù)的完整性和一致性,一般要求加事務(wù)的。GDI28資訊網(wǎng)——每日最新資訊28at.com

但是,切忌事務(wù)不要太大,我們可以把一些查詢放到事務(wù)外,把計(jì)算邏輯也放事務(wù)外,把數(shù)據(jù)庫的更新、新增、刪除操作放到事務(wù)內(nèi)就好。GDI28資訊網(wǎng)——每日最新資訊28at.com

就是把大事務(wù)拆分為小事務(wù)。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.7 打印耗時(shí)時(shí)間,如果時(shí)間夠長(zhǎng)

一般來說,做刷數(shù),盡量打印一下耗時(shí),這樣我們可以根據(jù)日志,觀察是否有哪些問題需要及時(shí)處理的。GDI28資訊網(wǎng)——每日最新資訊28at.com

比如打印刷一個(gè)客戶要多久。或者打印一批客戶要多久,等等。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.8 是否可以加個(gè)配置,減少掃描

有些時(shí)候,我們需要配置一定的灰度規(guī)則來支持灰度刷數(shù)。如果刷數(shù)流程是先掃描所有客戶,然后接著判斷客戶是否命中灰度。這樣每次任務(wù)執(zhí)行,都會(huì)掃描客戶表。GDI28資訊網(wǎng)——每日最新資訊28at.com

我么可以考慮加個(gè)配置,傳特定的客戶號(hào),根據(jù)客戶號(hào)列表,去查客戶列表,然后開始刷數(shù)邏輯,不用再全表掃描客戶表了。GDI28資訊網(wǎng)——每日最新資訊28at.com

10.9 是否考慮校驗(yàn)邏輯

有些時(shí)候,我們沒法確認(rèn)我們刷的邏輯是否正確,這時(shí)候,可以考慮是否加校驗(yàn)邏輯。GDI28資訊網(wǎng)——每日最新資訊28at.com

你可以異步進(jìn)行校驗(yàn),也可以同步校驗(yàn)(當(dāng)然,如果耗時(shí)不大的時(shí)候)GDI28資訊網(wǎng)——每日最新資訊28at.com

10.10 try...catch 包住可能的異常

如果我們是按照一個(gè)客戶維度去刷數(shù)的,你要確認(rèn)A客戶刷失敗,是不是不能影響B(tài)客戶。這時(shí)候建議try...catch 包住可能的異常,這樣即有利于分析錯(cuò)誤原因,又可以不不因?yàn)槲粗惓?dǎo)致刷數(shù)中斷。GDI28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-76543-0.html實(shí)現(xiàn)一個(gè)刷數(shù)任務(wù),需要思考哪些維度?

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 用 Python 優(yōu)雅地玩轉(zhuǎn) Elasticsearch:實(shí)用技巧與最佳實(shí)踐

下一篇: 垃圾收集器的秘密:深入理解JVM性能調(diào)優(yōu)

標(biāo)簽:
  • 熱門焦點(diǎn)
  • K60 Pro官方停產(chǎn) 第三方瞬間漲價(jià)

    雖然沒有官方宣布,但Redmi的一些高管也已經(jīng)透露了,Redmi K60 Pro已經(jīng)停產(chǎn)且不會(huì)補(bǔ)貨,這一切都是為了即將到來的K60 Ultra鋪路,屬于廠家的正常操作。但有意思的是該機(jī)在停產(chǎn)之后
  • 線程通訊的三種方法!通俗易懂

    線程通信是指多個(gè)線程之間通過某種機(jī)制進(jìn)行協(xié)調(diào)和交互,例如,線程等待和通知機(jī)制就是線程通訊的主要手段之一。 在 Java 中,線程等待和通知的實(shí)現(xiàn)手段有以下幾種方式:Object 類下
  • 三言兩語說透設(shè)計(jì)模式的藝術(shù)-單例模式

    寫在前面單例模式是一種常用的軟件設(shè)計(jì)模式,它所創(chuàng)建的對(duì)象只有一個(gè)實(shí)例,且該實(shí)例易于被外界訪問。單例對(duì)象由于只有一個(gè)實(shí)例,所以它可以方便地被系統(tǒng)中的其他對(duì)象共享,從而減少
  • 量化指標(biāo)是與非:挽救被量化指標(biāo)扼殺的技術(shù)團(tuán)隊(duì)

    作者 | 劉新翠整理 | 徐杰承本文整理自快狗打車技術(shù)總監(jiān)劉新翠在WOT2023大會(huì)上的主題分享,更多精彩內(nèi)容及現(xiàn)場(chǎng)PPT,請(qǐng)關(guān)注51CTO技術(shù)棧公眾號(hào),發(fā)消息【W(wǎng)OT2023PPT】即可直接領(lǐng)取
  • 破圈是B站頭上的緊箍咒

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之每年的暑期檔都少不了瞄準(zhǔn)追劇女孩們的古偶劇集,2021年有優(yōu)酷的《山河令》,2022年有愛奇藝的《蒼蘭訣》,今年卻輪到小破站抓住了追
  • 年輕人的“職場(chǎng)羞恥感”,無處不在

    作者:馮曉亭 陶 淘 李 欣 張 琳 馬舒葉來源:燃次元&ldquo;人在職場(chǎng),應(yīng)該選擇什么樣的著裝?&rdquo;近日,在網(wǎng)絡(luò)上,一個(gè)與著裝相關(guān)的帖子引發(fā)關(guān)注,在該帖子里,一位在高級(jí)寫字樓亞洲金
  • 重估百度丨大模型,能撐起百度的“今天”嗎?

    自象限原創(chuàng) 作者|程心 羅輯2023年之前,對(duì)于自己的&ldquo;今天&rdquo;,百度也很迷茫。&ldquo;新業(yè)務(wù)到 2022 年底還是 0,希望 2023 年出來一個(gè) 1。&rdquo;這是2022年底,李彥宏
  • 小米MIX Fold 3配置細(xì)節(jié)曝光:搭載領(lǐng)先版驍龍8 Gen2+罕見5倍長(zhǎng)焦

    這段時(shí)間以來,包括三星、一加、榮耀等等有不少品牌旗下的最新折疊屏旗艦都得到了不少爆料,而小米新一代折疊屏旗艦——小米MIX Fold 3此前也屢屢被傳
  • 機(jī)構(gòu)稱Q2全球智能手機(jī)出貨量同比下滑11% 蘋果份額依舊第2

    7月20日消息,據(jù)外媒報(bào)道,研究機(jī)構(gòu)的報(bào)告顯示,由于需求下滑,今年二季度全球智能手機(jī)的出貨量,同比下滑了11%,三星、蘋果等主要廠商的銷量,較去年同期均有下
Top 主站蜘蛛池模板: 黄大仙区| 化德县| 枞阳县| 大同市| 盖州市| 左云县| 娱乐| 昔阳县| 策勒县| 花垣县| 北海市| 枣庄市| 潼南县| 利辛县| 泸州市| 呈贡县| 凤冈县| 安陆市| 南康市| 读书| 巴楚县| 玉环县| 彰化县| 宽甸| 县级市| 甘肃省| 寿阳县| 新源县| 南通市| 诸暨市| 东台市| 吴川市| 唐海县| 丹江口市| 华容县| 九江县| 德钦县| 亳州市| 丹棱县| 睢宁县| 喀什市|