IM應用中的優化

2021-06-25 07:26:07 字數 654 閱讀 7717

曾經做過im應用中考慮過的一些關於應用優化的問題。

優化重心主要放在了電量優化和流量優化上:

1、專用裝置

3、自己動手去寫電量消耗

1、不要影響手機休眠

心跳包使用 alarm manager出發心跳包

2、儘量減少網路請求

資料快取、本地儲存,同步增量、一次傳送多個請求

3、少使用gps定位,網路定位優先

4、針對不同網路型別做優化

上傳buffer大小:2g 1024位元組,3g 10k

其他的優化可以參考官網

uid=process.myuid();

initrecvbytes=trafficstats.getuidrxbytes(uid);

initsendbytes=trafficstats.getuidtxbytes(uid);

1、心跳

減小心跳包

減小傳送頻率

智慧型心跳,動態心跳時間

2、封包協議

自定義封包協議,減小包大小。

3、異常重連機制

動態重連機制

4、壓縮

檔案壓縮

用到過的壓縮演算法:gzip

每乙個重要訊息都要給服務端回執

在移動IM中應用定位系統

一 定位系統的實現方式 按位置資訊的精確度考慮聯絡人的位置資訊,從低到高可以分為以下幾類 1.在編制聯絡人資訊時加入的固定字段。例如,粗略字段 所在地 北京中國 詳細字段 工作位址,家庭住址等。2.根據聯絡人手機號碼獲取手機號碼歸屬地資訊。例如,1381140 x 歸屬地 北京 3.根據聯絡人的ce...

sql server中的hash應用優化

sql server很多地方用到hash,計畫快取查詢,hash連線,hash聚合等。hash查詢mssql很多設計中都應用了,不過我們能在開發設計中,也可以利用這個特性。將如果有需求對大文字進行完全匹配,比如查詢產品型號 較長字串 那麼可以建立乙個產品型號的hash欄位,然後在hash欄位上進行查...

高併發IM系統架構優化實踐

在構建社交im和朋友圈應用時,乙個基本的需求是將使用者傳送的訊息和朋友圈更新及時準確的更新給該使用者的好友。為了做到這一點,通常需要為使用者傳送的每一條訊息或者朋友圈更新設定乙個序號或者id,並且保證遞增,通過這一機制來確保所有的訊息能夠按照完整並且以正確的順序被接收端處理。當訊息總量或者訊息傳送的...