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

云平臺如何支持百萬千萬或者上億的在線用戶?

云計算
在云計算發展飛速的時代,傳統通訊正在與互聯網、IT等各大領域融合發展,無論是IM、視頻、VoIP、還是呼叫中心,企業都需要根據自身業務形態開發和部署屬于自己的通訊平臺。那么,在用戶群體不斷壯大之時,云平臺如何該支持百萬千萬或者上億的在線用戶?

在云計算發展飛速的時代,傳統通訊正在與互聯網、IT等各大領域融合發展,無論是IM、視頻、VoIP、還是呼叫中心,企業都需要根據自身業務形態開發和部署屬于自己的通訊平臺。那么,在用戶群體不斷壯大之時,云平臺如何該支持百萬千萬或者上億的在線用戶?日前, 容聯云通訊CTO(***技術官)許志強為程序員們帶來了一場主題為“云通訊PaaS平臺的挑戰和應對之道”的在線培訓。

一個云平臺怎么支持百萬千萬或者上億的在線用戶?許志強認為這里有幾個關鍵點:

1、操作系統調優

***步是操作系統的調優,因為操作系統的缺省設置并不是適合這種大規模的系統訪問的,包括打開文件數、TCP接收發送緩沖等,你需要根據你的業務請將操作系統各項的參數設置進行一個調優。

2、采用異步接口

第二步,因為現在大多數的網絡協議都是基于TCPIP協議的,客戶端在很多情況下是非活躍的,那么要單臺機器處理幾十萬或者上百萬以上的連接需要采用異步的接口。在Linux上使用的是epoll,在windows上就是I/O Completion Port. 十年前,我們會討論一臺Web服務器怎么支撐一萬個用戶(著名的C10K問題),現在這個問題已經隨著操作系統的完善已經非常輕易的解決了,關鍵是怎么使用操作系統提供的這些接口?,F在如果采用長連接,目前的技術水平達到幾十萬甚至上百萬(依賴實際的吞吐量)的長連接單臺服務器是沒有任何問題的。

3、內存數據庫緩存、減少數據庫操作

第三點,我們知道數據庫的操作是比較重的,像內存數據有可能用(Memcache、Redis)或者各種內存數據庫緩存一些數據,減少數據庫的操作,衡量哪些數據放內存數據庫中的一個重要原則就是:如果數據訪問比較頻繁,可以通過key訪問,業務邏輯上不需要強一致的數據適合放內存數據庫。

4、內部模塊交換采用長連接、Protocol Buffer等

系統內部盡可能采用長連接,因為系統的每一次連接都是一個開銷,可能在低負載情況下沒有關系,每次請求一個連接,看上去也挺快,一秒鐘幾百個請求,一千多請求也行,但是一旦系統負荷增大,這部分開銷在整個系統開銷就會非常大了。另外在協議編碼的盡可能采用像Protocol Buffer的協議,這是谷歌開源的協議,具有很好的編解碼效率和傳輸流量優化。

5、節點可并行擴展、Cluster集群

設計的時候需要考慮各個模塊、節點是否可并行擴展的?是不是增加一個模塊、節點就能夠提供服務擴展系統容量?將每個節點盡可能做成無狀態的,只有做到這點,系統才能可擴展、才能做集群、才能采用Cluster集群來做負載均衡服務。

6、自動部署新業務節點支持服務的自動化擴容

云服務的用戶可能突然業務量大增,系統能不能通過自動部署解決彈性自動擴容?這是云通訊現在正在做的。我們跟運營商的線路不是可以通過動態增加的,那是物理接口沒有辦法增加的。但是針對IP端的設備我們是可以做自動部署的,像阿里云、亞馬遜,可以提供API讓你自動地創建虛擬的主機,你可以提前做好相應的磁盤映像, 當檢測到某個類型的設備負責過高后,可以通過接口把這個服務部署起來。當你業務節點快速增加的時候,你采用這種自動部署的方案可以大幅減少人工干預維護的工作。

7.一次性Hash的負載分配方式

講到集群,就必須說的是集群中負載的分配方式。舉個例子,之前阿里云余額寶是從IOE架構移到阿里云上,當時存在一個很大的一個挑戰,余額寶的請求量太大了,mysql數據庫性能不夠,怎么解決這個問題呢? 常見的方法就是根據賬號分數據庫、分系統處理,按照賬號分配到對應的數據庫和處理系統,這就是負載分配的方式。一般來說,大家一個很直觀的想法可能是根據這個帳號做一下hash計算。有三個節點,就除三,余數在哪兒就去哪個節點,這是慣用的思路。但是這里有一個問題,之前的三個節點,后來可能變成四個節點,五個節點,一旦變成四個節點,五個節點以后,原來的Hash的值就不對了,如果加了一個節點以后,后面所有的分配都會不對,數據庫什么都要重新調整,整個負載會劇烈的進行一個移動,對增加處理節點是不友好的。

下面是百度上的一個圖,這個是一次性Hash的負載分配方式:

假如這是一個環,這個環是從0到2的32次方,我們保證Hash出來的值在這個區間內隨機分布。在這個區間內,我們這里只有四個節點,圖中藍色的節點是我們的服務節點。當一個請求來了,或者一個帳號來了,這個請求是由誰來服務呢?我們把這個請求計算一個hash,hash值會落在這個環的其中一個點上,就是圖中的這個紫色的點。紫色的點實際上不是一個具體的服務點,它會按方向找最近的點,假如我們以順時針方向,他就找順時針最近的一個點。假如在第三和四節點之間,這兩個節點的負載增加了,我們就在這兩個節點中間加一個節點,把他們中間的負載做一個分擔,這樣其他的節點負責的這種負載請求不會波動不會發生變化。只有落在我們分配的節點順時針之前的節點會有一些變化。所以這樣就非常容易把一個節點加到里面不影響整個系統的動蕩。

責任編輯:老門
相關推薦

2019-09-11 10:40:49

MySQL大分頁查詢數據庫

2012-03-14 14:25:57

2017-05-24 11:44:17

Linux命令

2019-04-03 14:03:58

Linux命令運行

2018-05-10 15:51:41

Linux命令運行

2017-03-06 16:31:01

2015-04-09 14:26:07

2025-02-03 00:00:20

2025-04-28 07:46:03

2021-05-13 09:39:48

5G運營商網絡

2013-12-27 17:07:29

森華易騰IDC云轉型

2018-05-15 09:57:24

淘寶智能客服

2020-09-01 17:19:36

數據監控建模

2025-01-14 16:14:10

2011-12-27 11:23:07

2017-06-22 16:47:42

二維碼支付信息泄露

2024-03-11 16:01:29

BitMap數據去重開發

2010-09-16 16:06:01

sql server表
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品一二三 | 亚洲三区在线观看 | 国产精品视频免费观看 | 81精品国产乱码久久久久久 | 亚洲一区电影 | 羞羞的视频网站 | 久久蜜桃av一区二区天堂 | 国精日本亚洲欧州国产中文久久 | 九九热免费视频在线观看 | 成人性视频免费网站 | 欧美日韩在线播放 | 天天久久| 国产精品免费av | 四虎在线视频 | 亚洲视频精品 | 天久久 | 日日摸夜夜添夜夜添特色大片 | 久久精品亚洲精品国产欧美 | 99在线精品视频 | 在线播放中文字幕 | 欧美日韩国产精品 | 成人一区二区三区在线 | 久久久免费观看视频 | 日韩精品在线观看一区二区 | 欧美一级片黄色 | 日韩一区二区免费视频 | 伊人网影院 | 日韩中文一区 | 久久久久久女 | 99在线免费观看视频 | 精品视频一区二区 | 国产午夜精品一区二区三区嫩草 | 成人激情视频免费在线观看 | 性色av香蕉一区二区 | 国产亚洲精品一区二区三区 | 麻豆精品国产91久久久久久 | 国产一区二区视频免费在线观看 | 国产精品网址 | 精品国产一区二区国模嫣然 | а_天堂中文最新版地址 | www亚洲一区 |