Linux就業技術指導(七):游戲類運維重點流程解析


一,某游戲公司例行上線與更新流程示例

例行維護/更新流程

1.1 更新前天

提前確認好要更新的是什么,更新會有人通知你,一般是運營人員
比如:我們明天做什么什么更新

1.2 第2天更新

一般固定點更新,會先收到更新郵件
運營人員會發公告給玩家,說我們什么什么游戲,幾點進行維護
比如:10點更新:

(1)關閉游戲端口,禁止外部訪問,對自己公司開放(更新完要測試)

通過防火牆腳本實現(參考公司已有並在線上正常使用的腳本)

(2)停止游戲程序

如果做了監控,停服前可以關閉監控,如果你知道是自己在停服,也可以不關
這個問題具體要問開發,我們公司就是停止游戲程序的時候會把數據寫到數據庫,所以等程序關閉后再備份。(如果不先停止游戲程序,那么會導致數據庫的數據不一致)

(3)備份數據庫

通過腳本實現數據備份並問下研發需要備份哪些庫
備份完畢后,檢查備份的數據大小,判斷是否與前幾天備份的數據有沒有太大的差異(差距太大表明有問題,需要檢查)

(4)通知相關人員進行更新操作(一般是開發,也可能是自己,根據公司情況而定)

如果是你自己做更新,先看看是什么更新(促銷更新,版本更新,web更新等)
那就得根據是什么更新,就執行什么更新操作(開發會給更新流程),如果有老人帶,做完后總結下(這樣自己會更明白些)
更新內容,比如添加幾個文件,數據庫添加字段等,熟練后可以寫成腳本

(5)啟動游戲程序

當更新完畢后,就啟動游戲程序,以便進行下面的測試

(6)通知相關人員進行測試(研發,測試人員,運營人員等)

游戲能不能正常打開,能不能正常登錄,該更新的東西有沒有更新好

(7)打開游戲端口,允許外部訪問

如果測試沒有問題,運營人員會說,可以開服了;就可以把游戲端口對外,就是玩家可以登陸游戲
和相關人員確認好什么時候可以停止游戲程序操作(停之前備份數據庫還是之后)

1.3 總結

  1. 接收到更新郵件
  2. 查看是什么更新
  3. 不同的更新執行不同的更新流程
  4. 和相關人員確認好什么時候可以進行更新操作
  5. 到了更新時間后進行更新流程
  6. 連上需要更新的服務器
  7. 執行防火牆腳本,關閉游戲端口,禁止外部訪問,對自己公司開發
  8. 停止游戲程序
  9. 備份數據庫
  10. 通知相關人員進行更新操作
  11. 更新完畢后,啟動游戲程序
  12. 通知相關人員進行測試
  13. 測試沒問題,執行防火牆腳本,開放游戲端口,讓玩家登陸游戲

1.4 注意事項

更新前操作:

(1)收到更新郵件,可以先確認郵件中更新文件是否能夠正常下載

機器比較多,開發也很忙,有時會出現,開發並沒有把包上傳到固定的機器或者沒有傳好之類的。

(2)確認好更新維護時間

一般是固定時間,然后運營人員要對玩家發布公告

(3)可以先連上需要操作的機器

(4)如果做了監控,停服前可以關閉監控,如果你知道是自己在停服,也可以不關

(5)檢查游戲開放的端口

進行更新時:

(1)第一步關閉游戲端口並確認端口確實關閉了

(2)停止游戲程序並確認確實關閉了(可以通過查看進程的方式,如果是java寫的程序,直接ps -ef | grep java即可)

(3)執行備份數據庫的腳本並驗證備份文件的大小是否正常

(4)備份好了后,通知相關人員進行更新操作並確認更新正確,比對md5,文件時間等(如果是自己更新,就提取准備好更新的步驟;熟練后,可以寫成腳本)

(5)所有服更新完畢后,啟動游戲程序並確認啟動成功

(6)通知相關人員進行測試,比如,是否能登陸游戲,登陸游戲后需要改變的地方有沒有改變(一般運營人員操作)

(7)測試沒有問題,執行防火牆腳本,開放游戲端口,讓玩家登陸游戲

1.5 游戲業務類專業術語解釋

  • [x] 合服:其實就是合並玩家數據(例如:1服和2服合並,其實就是合並玩家的數據,將1服數據導入2服數據庫,然后1服就能用來開3服了)
  • [x] 混服:就是同一個服務器,運營兩款不相同的游戲
  • [x] 同服:在一個配置比較高的服務器上,同時部署兩款相同的游戲,比如火影忍者,可以部署1服2服等(就是將程序拷貝一份,修改端口等在啟動====>類似多實例)
  • [x] 跨服:多個服的玩家在一起玩,比如1,2,3,4服玩家都在一起玩。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM