偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

容器技術在游戲云應用展望

云計算
基于游戲行業(yè)“短平快”的鮮明特點, 每一個游戲世界里面,每一種業(yè)務邏輯,都可以運行在一個獨立的容器中。這一系列的容器,就構成了一個獨立的游戲世界的自治系統(tǒng)。

[[123810]]

基于游戲行業(yè)“短平快”的鮮明特點, 每一個游戲世界里面,每一種業(yè)務邏輯,譬如控制人物的行走,戰(zhàn)斗,場景,聊天,存檔,數(shù)據(jù)庫等,都可以運行在一個獨立的容器中。這一系列的容器,就構成了一個獨立的游戲世界的自治系統(tǒng)。 目前,騰訊內(nèi)部業(yè)務運行環(huán)境基本全部實現(xiàn)了容器化,在2014 Container技術大會中,騰訊云高級產(chǎn)品經(jīng)理劉永峰曾發(fā)表演講“Docker時代,公有云面臨的挑戰(zhàn)和機遇”。本文中劉永峰展望了容器技術在游戲云的應用。以下為原文:

什么是容器?

容器(Container)是一種輕量級的虛擬化技術,所謂輕量級虛擬化,就是使用了一種操作系統(tǒng)層虛擬化技術,這種技術允許一個操作系統(tǒng)上用戶空間被分割成幾個獨立的單元在內(nèi)核中運行,彼此互不干擾,這樣一個獨立的空間,就稱之為一個容器。舉個例子,一個操作系統(tǒng),可以類比成一套公寓,那么容器,就相當于公寓中的一個房間,大家共享同一個客廳,廚房和衛(wèi)生間。但是房間和房間之間彼此隔離,一個房間里面的人的活動,不會影響到其他房間的住客。房間也有門,有一定的安全措施。隨著虛擬化技術的發(fā)展,一臺物理的機器可以虛擬成多臺虛擬機,但是虛擬一個獨立操作系統(tǒng)是存在系統(tǒng)損耗的,不可能虛擬太多。而容器就不同了,同一臺機器,可以運行幾十個甚至數(shù)百個容器?;緵]有太大的性能上的損耗,并且啟動一個容器,就像啟動一個進程那么簡單,在秒級的時間即可完成。因此在某些場景下,容器技術會有非常大的優(yōu)勢。

容器技術的發(fā)展歷程

容器的技術并不是一項很新的技術,早在十多年前,其思想就已經(jīng)開始得到應用了。2005年,Solaris系統(tǒng)率先推出了容器的概念。2007年的時候,容器技術的核心特性cgroup正式進入Liunux內(nèi)核。2011年,已經(jīng)形成了標準化的規(guī)范。業(yè)界在對容器的使用上,也越來越廣泛,特別是一些大的互聯(lián)網(wǎng)公司,國內(nèi)的騰訊,百度,都已經(jīng)在內(nèi)部生產(chǎn)環(huán)境中大規(guī)模使用了容器技術。對于容器技術使用最成熟的當屬Google,Google內(nèi)部的幾乎所有的業(yè)務,其運行環(huán)境基本全部實現(xiàn)了容器化。容器發(fā)展的最重要的一個里程碑是Docker的出現(xiàn)。很多人有誤解,Docker其實并不是一種虛擬化的技術,而是一種容器的管理技術,它主要由容器管理引擎,客戶端以及AUFS文件系統(tǒng)組成。將容器的構建,分發(fā)和運行標準化了。因此出來一年多,其熱度已經(jīng)席卷全球。

容器技術有哪些優(yōu)勢

隨著容器技術的發(fā)展,特別是插上Docker的翅膀后,顯得如虎添翼。它有什么優(yōu)勢,能夠解決什么問題呢?

這里總結了如下幾點:

提升了虛擬化的粒度:由于Container是一種操作系統(tǒng)層的虛擬化技術,可以在進程級別進行隔離,因此一臺物理的機器,可以運行非常多的容器,而將性能損耗降到***。當然也支持在虛擬機上運行容器。因此,一些低成本,支持動態(tài)伸縮的微服務成為可能。譬如一個個人站點,一個公眾賬號,一個個人博客。當然也可以用于游戲服的場景。

IT服務交付標準化:在Docker中,有容器和倉庫的概念,任何服務,都可以打包成容器。容器可以存儲在倉庫中。當需要執(zhí)行式,直接從倉庫中拉取進行執(zhí)行。屏蔽了底層IT基礎設施之間的差異。服務的運營實體不需要了解容器內(nèi)部的結構,只需要從倉庫中拉取進行執(zhí)行就行了。因此可以在IT服務的交付和使用者之間劃開一條清晰的界限。非常適合目前IT服務分工越來越細的趨勢。

開發(fā),測試,部署一體化:系統(tǒng)的持續(xù)集成,持續(xù)部署,一直是IT開發(fā)人員,運維人員夢寐以求的事情,但是實際上,解決起來非常困難,很多時候,開發(fā)出來后,要花很大力氣搭建一套測試環(huán)境,測試完成后,又得重新搭建一套運營環(huán)境。而Docker三個核心的概念Build,Ship,Run,其實涵蓋了從開發(fā)到部署到執(zhí)行的全流程。以容器為單位,當開發(fā)完成后,打包成容器,放到倉庫,然后進入測試流程,測試完成后,依然push到倉庫,***到生成環(huán)境。讓三個環(huán)節(jié)平滑的銜接。避免了復雜的運行環(huán)境搭建的工作量。

游戲托管的主要特點

前一部分主要介紹了容器技術的優(yōu)勢和特點,那如何和游戲來結合呢。這得現(xiàn)成游戲行業(yè)本身的特點以及業(yè)務特征說起。其實游戲行業(yè)是對云的接受度***,但是也是對云的特點使用最不充分的行業(yè)。俗話說,游戲行業(yè),特別是現(xiàn)在比較火的手游行業(yè),本質(zhì)是“短平快”:

短:游戲生命周期短,特別是手游,一般一款游戲,只有一年左右的生命周期;

平:游戲后臺架構是一個扁平的架構,大部分游戲都是單區(qū)單服,一臺機器,一個數(shù)據(jù)庫,可以搞定好多個游戲服;

快:游戲滾服快,很多游戲,用戶都是爆炸式增長,通常一個游戲服,只支持固定數(shù)量的用戶,達到用戶上線,就開一個新的服,因此主要表現(xiàn)在開服快,同時,也由于生命周期短,也需要開發(fā)快,部署上線快。

游戲業(yè)務的后臺服務器架構,目前大多數(shù)也沿襲了傳統(tǒng)的模式,以比較常見的單區(qū)單服架構為例,通常都是使用一臺性能比較好的機器,譬如16核64G內(nèi)存,在機器上開一定數(shù)量的游戲服(相當于同時運行多個游戲后臺服務進程,通過不同的端口來提供服務)。每個服支撐固定數(shù)量的在線用戶。每個游戲服,構成了一個獨立的游戲世界,不同游戲服之間,數(shù)據(jù)是不互通的。游戲服有多有少,以騰訊云的某一款游戲為例,一臺16核的云服務器,開到80~100個游戲服。為什么不是一臺服務器開一個游戲服呢?主要還是成本方面的考慮。當然也有人會問,為什么不能每個游戲服用戶數(shù)多一些,從而開少一些的游戲服呢?這主要是由于游戲特點決定的,例如MMORPG(多人在線RPG)類的游戲,每個游戲服,地圖有限,不可能支撐太多用戶,同時,用戶太多,等級差異較大,造成游戲生態(tài)系統(tǒng)不平衡。因此,每個游戲服用戶數(shù),是一個恒定的量。

傳統(tǒng)游戲后臺架構存在的問題

一臺機器同時運行大量的游戲服,當機器宕機時,影響的用戶面比較廣;

由于每一個游戲服是一個后臺服務進程,進程之間沒有強隔離,會導致不同游戲服之間資源分配不均勻,或者資源相互搶占的問題;

一個游戲中,會涉及很多不同種類的業(yè)務邏輯,譬如登錄,聊天,戰(zhàn)斗,行走,甚至記錄日志。傳統(tǒng)的方式情況下,為了簡化部署,大多都運行在同一臺服務器上面。因此需要不同的進程或者線程去完成這些業(yè)務邏輯。管理起來非常的復雜,特別是當一臺機器上同時存在很多組游戲服時。

當然,也有一些優(yōu)化后的架構,譬如將一個游戲大區(qū)里面登錄邏輯獨立出來,由一組單獨的服務器去承載。但是,要讓一個游戲世界,所有的業(yè)務邏輯都能協(xié)調(diào)運行,依然是一個非常復雜的事情。特別是一臺物理的機器,部署了多組游戲服時。

一個全新的游戲自治系統(tǒng)

前面的章節(jié)談到了容器技術的優(yōu)點。其中比較重要的一個優(yōu)勢是,容器技術是一種輕量級虛擬化技術,能夠以很細的粒度,虛擬化獨立的系統(tǒng)運行環(huán)境。這就意味著,一臺物理的服務器,或者是一臺云上面的虛擬服務器,能夠同時運行成百上千個獨立的容器。每一個游戲世界里面,每一種業(yè)務邏輯,譬如控制人物的行走,戰(zhàn)斗,場景,聊天,存檔,數(shù)據(jù)庫等,都可以運行在一個獨立的容器中。這一系列的容器,就構成了一個獨立的游戲世界的自治系統(tǒng)。一個自治系統(tǒng)里面的所有容器,可以運行在一臺物理的機器上面,也可以分布在彼此獨立的機器上面。同時,還可以根據(jù)每一類業(yè)務使用資源的不同,合理的規(guī)劃這一類容器的資源用量,做到彼此互不干擾。當然,如果只是純粹的容器技術,這個自治系統(tǒng)里面的容器管理也是一個大問題。但是Docker技術的出現(xiàn),為我們***的解決了這個問題。Docker里面有倉庫的概念,所有的自治系統(tǒng)的基本單元(容器),都可以存儲在倉庫中,同時,借助于FIG,SERF等容器編排,以及服務自發(fā)現(xiàn)的技術。當這些容器被分發(fā)到一個運行環(huán)境(一批執(zhí)行的服務器)時,能夠將一個自治系統(tǒng)快速構建出來。讓一個游戲世界的后臺架構,能夠在秒級的時間里面快速重建。這將完全顛覆游戲開服的概念。我們知道,現(xiàn)在的開服,需要申請機器,安裝軟件版本,修改配置等非常繁瑣的操作,雖然通過腳本,可以基本實現(xiàn)自動化,但是依然需要一部分人工去介入。結合了Docker等技術,只需要分發(fā)和復制就可以了,將Docker所提倡的三個核心概念Build,Ship,Run體現(xiàn)的淋漓***。

容錯和熱遷移

游戲的穩(wěn)定性一直是運營方最為關心的問題。一次異常的宕機,可能導致非常大得損失。傳統(tǒng)模式下,一臺服務器,同時運行幾十組游戲服時,一次宕機,可能會影響數(shù)萬的游戲玩家。當游戲服的所有業(yè)務邏輯實現(xiàn)容器化后,某一次機器故障,可能只是影響到了部分游戲服里面的某些業(yè)務邏輯。我們可以將一個游戲自治系統(tǒng)看做是一個正在運轉的機器。一起出現(xiàn)故障時,需要重新啟動并組裝機器,現(xiàn)在可以做到在不停機的情況下,替換零件。譬如控制行走任務的容器正好位于某個故障機器時,可能只是瞬時的卡頓,立即就恢復正常。借助某些監(jiān)控的手段,一些重要的業(yè)務邏輯甚至可以同時運行多個備份容器,當一個邏輯出現(xiàn)問題時,能夠快速切換到另外一個備用容器。

未來的展望

游戲對于云的使用,目前還處于非常初級階段,大部分游戲廠商,還是使用的傳統(tǒng)的IDC托管,即使使用云的廠商,也是將云主機當傳統(tǒng)的物理機在使用。容器技術雖然有多年的發(fā)展,但是Docker之類技術目前還只是襁褓中的嬰兒。游戲領域能夠接受容器的概念,還需要一個探索和實踐的過程。但是隨著游戲領域的競爭加劇,低成本,精細化運營是未來的趨勢。游戲一直是騰訊云最重要的拓展領域,由于有國內(nèi)***規(guī)模的游戲用戶群體,因此對于游戲理念的理解,游戲架構的設計以及運營經(jīng)驗,一直是騰訊云最重要的競爭優(yōu)勢之一,所以騰訊云很早就啟動了容器技術在游戲領域的研究。目前,容器技術在騰訊的社交網(wǎng)絡已經(jīng)有多年的實踐經(jīng)驗,內(nèi)部業(yè)務運行環(huán)境基本全部實現(xiàn)了容器化。相信很快在游戲領域也會逐步應用開來。在文章的***,我想到和某個從國外回來的大型游戲公司的老板在聊天時,他給我描述的未來游戲世界的一種場景。全世界所有游戲玩家都在一個游戲世界里面。有堪比現(xiàn)實世界般廣袤的地圖。游戲中的場景和人物都由強大云計算支撐的AI智能控制,整個游戲,就是現(xiàn)實世界的完全模擬。或許借助于文章中展望的技術,我們會看到類似的這種大同的景象。

原文出自:http://www.lupaworld.com/article-247342-1.html

責任編輯:Ophira 來源: 騰訊云 開源云計算
相關推薦

2021-03-24 15:02:35

區(qū)塊鏈醫(yī)療技術

2011-08-31 09:37:38

云服務私有云公有云

2021-01-11 11:15:53

物聯(lián)網(wǎng)云原生邊緣計算

2020-01-09 10:36:16

云計算技術互聯(lián)網(wǎng)

2024-06-18 10:08:12

2017-03-16 17:05:01

人工智能智能建筑應用展望

2022-03-30 13:56:20

區(qū)塊鏈游戲技術

2013-12-11 09:50:01

2018-03-06 16:11:09

2021-03-24 14:57:40

云原生云計算開發(fā)

2020-05-22 10:43:04

Windows容器DevOps

2014-09-30 09:20:13

SDN openflow NFV

2016-08-16 00:40:37

IT支撐系統(tǒng)云計算資源池

2015-07-20 17:00:45

VXLAN云數(shù)據(jù)中心

2023-12-03 09:09:00

NAT云網(wǎng)關

2025-03-27 02:50:00

2014-11-20 10:55:47

Docker容器技術虛擬化

2019-03-06 12:32:09

容器全棧云青云

2021-03-09 10:30:26

物聯(lián)網(wǎng)技術物聯(lián)網(wǎng)IOT

2016-08-08 13:39:26

區(qū)塊鏈技術伍旭川
點贊
收藏

51CTO技術棧公眾號