遊戲伺服器概述

2021-09-08 20:20:23 字數 1804 閱讀 8797

遊戲後台開發==遊戲伺服器開發

滿足海量遊戲使用者的穩定和高質量的服務需求

穩定 - 相對於:宕機,網路和計算卡頓;

高質量 - 快速:網路延遲;邏輯嚴謹;更新頻率和及時性。

延遲敏感

實時的高強度互動

業務邏輯複雜,內部耦合度高

變更頻度高,幅度大

擁有所有資源的控制權;

重視資源的合理使用而不是最少占用。

重視效能;

重視可伸縮性。

效能來自於

持續執行,意味著:穩定最重要;容錯;日誌和監控。

(1)服務穩定包含的因素

(2)如何才能做到穩定?

kiss==keep it ******&stupid (一看就懂)

容錯方面

(1)錯誤不可避免(邏輯自身bug、程式執行環境、外部影響)

(2)基本要求 - 錯誤範圍可控

(3)基本應對 - 錯誤隔離和可快速恢復。

(1)本質上是應對海量服務的問題。

(2)出發點:兩種不同的困難

(3)方** - 分治

大的問題分解成小問題,小問題繼續分解,最終在合適的力度下得到解決。

服務分布化

內部複雜度應對:分層分塊。

(4)方** - 灰度

什麼是灰度:拋棄0/1思維;在不同的場景下提供不能的服務。

在不同範疇維度的應用:服務降級;灰度分布。

感悟:任何事情都不是非黑即白的,可以灰度發布,灰度服務(取中間值)。

開發者:伺服器程式設計師。

開發夥伴:客戶端程式員,遊戲策劃。

構建-測試:測試工程師。

部署維護:運維工程師。

(1)了解常見查詢/排序演算法的特點:利用演算法來改善效能,勝於通過編譯器選項、程式設計技巧;

(2)根據業務情況合理的選擇演算法

(1)對作業系統基礎知識的了解

(2)對linux作業系統的了解

(1)選擇程式語言的幾個因素

(2)c/c++技能要求

(1)shell指令碼

(2)程式內嵌指令碼語言

(1)化繁為簡的重要途徑:區分「變化性」是其中的關鍵。

(2)設計原則 - solid

(3)設計模式:可以視為設計原則的應用。

想清楚:用到這些方法、方式,它的原因是什麼?

(1)關聯式資料庫

(2)nosql

(3)檔案

(4)網路接入,協議

伺服器_維基百科

遊戲伺服器與普通伺服器有什麼區別_知乎

lua 為什麼在遊戲程式設計領域被廣泛運用?_知乎

在拿到offer的那一刻,我不知道遊戲伺服器端是做什麼的。在部門大佬的指導和介紹下,我開啟了本課程開始學習。課程總共有16節,我爭取學習完一節課程後就整理,總結,吸收好這節課的內容,然後發布到部落格上,希望我能堅持到底!

如果有寫的不好或需要補充的地方請及時提出來,我看到後會及時更新的。^_^

mysql 做遊戲伺服器配置 遊戲伺服器部署

bin bash 小菜鳥 掛機 版本 1.0 遊戲伺服器部署 基礎環境 mysql資料庫svn客戶端需部署才能執行此指令碼 if uid 0 then echo game server install else exit 1 firead p please create the storage ga...

mysql遊戲伺服器快取 遊戲伺服器快取策略

1 什麼是快取 在資料庫與伺服器邏輯之間加入的資料層 2 作用 減少資料庫操作 伺服器使用mysql作為資料庫,mysql每秒鐘併發數量有限,所以我們要減少mysql的操作。3 erlang的快取 erlang 在記憶體中可用 程序字典 gen state ets 儲存變數,理論上三種方式都可以作為...

遊戲伺服器架構

登陸伺服器判斷賬戶合法性,如果合法的話,把session資訊寫入memcache,閘道器伺服器收到玩家連線請求後,在memcache裡查詢是否合法玩家,防止非法連線。閘道器伺服器要管理玩家連線,需要高併發,可以開多個 scene mgr純粹的 訊息功能 資料庫伺服器純粹的查詢修改資料功能,如果成為瓶...