日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

游戏开发--开源软件11--Firefly(python 服务端分布式框架)||pygame

發布時間:2025/3/19 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 游戏开发--开源软件11--Firefly(python 服务端分布式框架)||pygame 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

Firefly是免費、開源、穩定、快速擴展、能 “熱更新”的分布式游戲服務器端框架,采用Python編寫,基于Twisted框架開發。它包括了開發框架和數據庫緩存服務等各種游戲服務器基礎服務,節省大量游戲開發的工作時間,真正做到讓使用者把精力放在游戲玩法邏輯上。用它可以搭建自定義的分布式架構,只需要修改相應的配置文件即可。

優勢特性

  • 采用單線程多進程架構,支持自定義的分布式架構;
  • 方便的服務器擴展機制,可快速擴展服務器類型和數量;
  • 與客戶端采用TCP長連接,無需考慮粘包等問題;
  • 封裝數據緩存服務;
  • 可實現實時熱更新數據以及游戲邏輯,客戶端玩家無感覺;
  • 有幾十個基礎游戲玩法系統模塊提供組裝使用(v1.3.0提供);

框架介紹

management, firefly 是個多進程、分布式的游戲服務器。因此各游戲server(進程)的管理和擴展是firefly很重要的部分,框架通過抽象使服務器的擴展非常容易。

Network,客戶端連接通信、server進程間的通信等構成了整個游戲框架的脈絡,所有游戲流程都構建在這個脈絡上。與客戶端的通信采用的是請求/回應式的,所以受到的客戶端的請求,服務端都會給出相應的回應,服務端也能主動的推送,廣播給客戶端消息。這些請求是基于指令號的請求。(例如定義101為登陸指令)server進程之間的通信時采用的異步回調的方式,這樣就減少了的進程間通過網絡通信中的時間消耗。

Data, 數據處理是網游的重要部分。在網游有大量的數據需要存儲,需要更新,這使得數據庫的讀寫效率成為服務器的最大的性能瓶頸。firefly的db處理能夠將數據庫表中的數據緩存到memcache中并能以對象的形式進行調用相應的對象方法對數據進行操作。可以在不同的進程中通過實例化相同的名稱的緩存實例,得到同步的數據。并能將緩存對象中的數據寫回數據庫中。
框架思路

一個最基本的服務器就是一個在不停運行著的應用程序。在分布式游戲服務器中,我們需要的服務器具有的功能有,監聽客戶端的連接,監聽其他服務進程的消息,連接其他的服務進程,有些需要有數據庫連接和緩存服務。如下圖

net connect 做客戶端連接,root監聽其他服務進程消息,node連接其他服務進程,db數據庫,cache緩存。是否需要監聽客戶端連接,是否監聽其他服務進程消息等這是都是可以在config.json中進行配置。包括各個服務器的名稱以及各個服務器之間的連接關系。這樣就可以自定義出自己的分布式架構。


Pygame 是一組用來開發游戲軟件的 Python 程序模塊,基于 SDL 庫的基礎上開發。允許你在 Python 程序中創建功能豐富的游戲和多媒體程序,Pygame 是一個高可移植性的模塊可以支持多個操作系統。

轉載于:https://my.oschina.net/u/1389155/blog/174208

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的游戏开发--开源软件11--Firefly(python 服务端分布式框架)||pygame的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。