成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

細數移動IM開發中的那些坑

移動開發
移動互聯網時代的來臨促使我們所有的開發者都要從用戶視角出發,基于某一特定場景來創建應用,滿足用戶需求。通常,在這些應用中,溝通環節都是必不可少的。這就要求創業者不僅要花時間和精力來琢磨用戶在某一特定場景下有何痛點需求,琢磨如何解決這一需求,并且可能還要花費更多的精力和時間來解決產品中“溝通”這一技術節點。

移動互聯網時代的來臨促使我們所有的開發者都要從用戶視角出發,基于某一特定場景來創建應用,滿足用戶需求。通常,在這些應用中,溝通環節都是必不可少的。這就要求創業者不僅要花時間和精力來琢磨用戶在某一特定場景下有何痛點需求,琢磨如何解決這一需求,并且可能還要花費更多的精力和時間來解決產品中“溝通”這一技術節點。而要解決溝通問題,就需要一套IM系統,這并不容易。當然,假設你有100個用戶,什么都是容易的,但是假設你有了100萬、1000萬甚至1億的用戶,再簡單的技術節點解決不好,都會成為災難,何況IM系統還是存在許多技術難點和坑點的。今天,我們就來梳理一下IM開發中那些可能遇到的難點及坑點。

首先,來看服務端需要考慮的問題。

1. 連接器的設計:連接器主要用來管理客戶端的長連接。目前***的連接器單臺8G8核的服務器可以做到70萬—100萬的連接,而某些開發者只能做到4000左右的連接,相差好幾個數量級。這里的奧妙在哪里呢?

2. 中間件的設計:是否采用通訊中間件?通訊中間件的好處有哪些?如果不采用中間件,連接器和邏輯服務器的連接關系如何管理呢?

3. 邏輯服務器:邏輯服務器通常簡單一點,主要是根據業務邏輯進行最小粒度的劃分即可。但是即便如此,還是有很多的開發者把看似相關實則不相關的邏輯放在一起,如把鑒權和message服務器放在一起。

4. 狀態服務器:狀態服務器主要管理用戶在線、離線的相關狀態,需要采取中心節點的方案,否則狀態就會不同步。這里主要需要考慮狀態服務器所對應的數據存儲機制,如何進行寫操作,如何進行讀操作?以便***的提高狀態服務器的處理能力和響應速度。

5. 數據庫的設計:數據庫的設計是最難的,也是做大的瓶頸。因為無論對于sql(關系型)數據庫還是nosql(非關系型)數據庫,都有讀寫處理的極限,那就需要考慮數據庫如何分區(根據什么原則、什么操作、哪些用戶訪問哪個節點上的數據庫)。同時又需要考慮每個原子操作(如登陸)需要讀哪些庫,寫哪些庫。只有這些指標明確了,你才能在假設有100萬并發用戶,100萬條并發消息的情況下,準確評估服務端需要多少臺服務器,如何部署。

6. 其他:還有設備推送的處理,何種機制能夠保證不丟消息,離線消息如何處理,等等。這些都是必備而又非常復雜的功能點和技術要求,都需要采取正確的架構和策略才能實現。

其次,我們再看一下IM 協議如何選型。通常IM采取的協議有xmpp、mqtt和私有協議,我們來逐一分析他們的優缺點。

1. xmpp協議:

a) 優點:基于xml協議,容易理解,使用廣泛,易于擴展。

b) 缺點:流量大,在移動終端也耗電。交互過程復雜。多被pc時代的產品使用,不適合移動時代的IM產品,即使我們基于xmpp進行改進,簡化握手過程,改進文件傳輸機制,但是它的基因決定了如何改進,他都不適合移動互聯網時代的IM產品。就像鳳姐無論怎么整容,也變成不了高圓圓一樣。

2. mqtt協議:

a) 優點:適配多平臺。

b) 缺點:協議簡單,但是需要自己擴展好友,群組等功能。

3. 私有協議:

a) 優點:隨心所欲,自己定義,流量小。

b) 缺點:工作量巨大,擴展性差,需要考慮全面。

4.protbuf協議:

a)優點:非常小,非常快,非常簡單。

b)缺點:不能表示復雜的數據結構,但是對于IM來講,已經足夠。強烈推薦此協議。

***,我們再來了解一下移動端有哪些難點需要解決。

1. 流量:采取哪種協議、圖片縮略圖、附件的壓縮三點決定了流量的大小。

2. 耗電:(1)流量越小,耗電越低。(2)心跳策略,減少心跳次數,耗電量就會降低。

3. 心跳時長:wifi,2G,3G,4G,移動、電信、聯通,不同網絡,不同運行商,NAT失效時間不一樣,因此心跳的時間也就不一樣。

4. 網絡連接:cmnet和cmwap下連接處理機制。

5. 網絡不穩定:移動端***的特點就是網絡不穩定,在不穩定的網絡狀態下,如何保證消息以最快的速度到達?如何避免重聯風暴?這些既需要從整體架構考慮,也需要在移動端采取巧妙的策略加以避免。

這些難點寫下來只不過千把字,耗時三十幾分鐘,但是真正要解決這些難點卻要不知道花費多少日日夜夜,敲下多少行代碼。因此,對于那些在某一場景下需要溝通能力的產品——O2O,互聯網教育,互聯網醫療、游戲…建議這些創業者把精力和資源都放在自己的核心能力上,而溝通就放心的交給我們容聯云通訊IM吧——因為那些難點,我們都已經***的干掉了他們。

還不了解云通訊IM?那就在4月21日,來參加云通訊開發者俱樂部第二期線上公開課吧,主講人云通訊IM產品線總監張靖宇,屆時會為開發者詳細講解云通訊IM,開發者也可互相探討自己在開發過程中遇到的其他問題。

責任編輯:老門
相關推薦

2022-05-15 08:13:50

Mysql數據庫Mycat

2020-09-09 07:55:51

TS開源符號

2015-05-25 19:27:15

2019-06-11 10:05:27

統計數據平均值欺騙

2018-04-25 09:39:27

神經網絡弊端缺點

2013-03-26 13:48:10

Windows 8

2015-09-17 09:25:56

Win 10開發

2019-12-05 08:44:20

MybatisSQL場景

2013-06-21 10:45:41

Windows 8.1

2021-03-08 08:05:05

漏洞Exchange微軟

2013-05-29 09:59:43

Opera瀏覽器

2020-05-28 16:15:50

HTTP暗坑前端

2016-12-28 13:19:08

Android開發坑和小技巧

2011-12-15 09:45:21

PhoneGap

2011-12-22 19:57:38

PhoneGap

2012-08-30 09:41:23

移動應用開發

2012-12-27 10:22:46

大數據

2017-08-04 17:07:32

JavaArraysList

2013-02-21 10:44:03

云計算云平臺云服務提供商

2022-08-16 08:27:20

線程毀線程異步
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩精品一区二区三区视频 | 国产免费观看一级国产 | 久久99精品久久久久久青青日本 | 久久久.com | 天天干天天色 | 久久久久久久久久一区二区 | 亚洲狠狠爱 | 国产在线观看网站 | 黄色网页在线 | 欧美成人在线网站 | 一区二区三区回区在观看免费视频 | 国产精品毛片一区二区三区 | 国产在线精品一区 | 欧美h版 | 欧美国产精品一区二区三区 | 91久久国产综合久久 | 国产精品不卡一区 | 欧美精品一区二区在线观看 | 国产精品欧美一区二区三区 | 性高湖久久久久久久久aaaaa | 国产精品有限公司 | 久久精品国产久精国产 | 女生羞羞网站 | 成人一区二区在线 | 91中文字幕 | 免费久草| 久久精品亚洲一区二区三区浴池 | www.色.com| 91精品国产乱码久久久久久久久 | 久久久一| 九九热这里只有精品在线观看 | 久久久久久久av麻豆果冻 | 一区二区三区四区毛片 | av免费在线观看网站 | 中文字幕乱码一区二区三区 | 在线视频国产一区 | 特黄特色大片免费视频观看 | 日韩在线免费 | 亚洲欧美国产一区二区三区 | 中文字幕在线观看 | 99tv |