Photon Cloud or Photon Server?
Photon雲端
是一個被完整管理的軟體服務(SaaS)解決方案。
您可以完全專注於您的應用程式客戶端,而我們將負責處理主機端、伺服器操作及縮放等所有事項。
Photon伺服器
是一個內部部署的伺服器應用程式,您可以在您選擇的機器上運行它及以它作為主機端。
完全可客製化,而且授權控制讓您可以自由地設置及設定您自己的多人玩家遊戲後端。
Photon雲端運行在Photon伺服器上。
比較
Photon雲端 | Photon伺服器 | |
---|---|---|
伺服器管理 | 伺服器不再麻煩。 您只需放輕鬆,我們的專家將負責處理伺服器的運行。 |
您獲得針對您的應用程式運行Photon的完整授權。
您運行您自己的伺服器或租用合適的伺服器,並且確保它們可供您的使用者使用。 Photon的記錄及效能計數器提供有關效能及穩定性的所有必要資訊。 |
可縮放性 |
Photon雲端自動縮放以容納您所有的使用者。 您的客戶端應用程式使用我們的SDK,針對高效率的載入平衡工作流程而組建。 |
我們的載入平衡增強在源程式碼中可用。
它是在多個伺服器間縮放的堅實基礎。 您的責任是針對您的顧客來運行正確數量的伺服器。 |
遊戲邏輯 | 有了Photon Realtime、Photon Voice、Photon Chat及PUN,您獲得針對所有多人玩家遊戲類型的周全的解決方案。 各個可用於免費下載的客戶端SDK在源中含有多個範例,以讓您針對同步的及非同步的遊戲及應用程式來使用Photons API快速開始。 | 伺服器的邏輯可以在C#中完整地客製化。 源中提供了多個示範應用程式,並附有免費伺服器SDK,並且為您的應用程式提供了高性能的現成框架。 得益於我們的協定及低級別功能性的抽象,並且新增您可能需要的任何功能。 |
立即開始 | Photon雲端讓您註冊並且立即運行您的應用程式。 不需要設定。 不需要伺服器。 | 下載之後,在5分鐘之內啟動您的Photon伺服器。 Photon非常容易設定,並且在本機和遠端上運行。 |
授權許可 |
在多種訂閱間選擇,選擇匹配您的每月活躍使用者計數的訂閱。 無論您是獨立製作、新創公司或AAA工作室,您將找到一個匹配的方案。 Photon Realtime有一個免費的方案,其針對最多20個CCU。 |
授權許可可以作為一次性購買或訂閱,並且以下載方式來提供。 使用企業授權許可來作為任何數量的伺服器或應用程式的主機端。 Photon伺服器針對最多100個CCU,可用一個免費的授權許可。 |
請參見方案 | 請參見方案 | |
功能 | ||
虛擬應用程式 | ||
名稱伺服器 | ||
已支援產品 | ||
Fusion | ||
Quantum | ||
Photon Realtime | ||
Photon Chat | ||
Photon Voice | ||
PUN | ||
Photon Bolt | ||
驗證提供者 | ||
自訂 | ||
Oculus | ||
Vive | ||
Steam | ||
Xbox | ||
PlayStation | ||
Nintendo |
從v5.0.12.24499開始的重要更改
Photon雲端持續更新修復、強化或加入新功能。
雖然我們試著發佈新的Photon伺服器SDK的版本,來趕上Photon雲端,但是兩者無法總是保持同步。
在這裡,我們列出了從Photon伺服器SDK的v5.0.12.24499版本最新公開發佈以來的, Photon雲端的重要更改。
此外,如果您的目標同時在於Photon雲端及Photon伺服器環境,或是在其間互相切換,這個清單將提供可能破壞您的遊戲的東西。
您也可以找到迴避問題的解決方案的建議。
在v5.0.12.24499中缺少的Photon雲端功能
- 在RC1中缺少在名稱伺服器上的隨機的叢集支援(萬用字元,sterisk叢集'/*')。
預設下,如果區域字串不明確指定一個叢集(未含有'/'),則C#客戶端SDK(包含PUN)附加一個「/*」後置詞到雲端區域字串。
這個功能用於叢集分區化。
所以如果一個客戶端試著連線到一個附有特定區域的自為主機端的v5 RC1伺服器,且沒有指定叢集,則會失敗,並且出現「無效區域」錯誤。
這是因為客戶端將請求區域代碼「{x}/*」,而開發人員只要求「{x}」。
當可用時,您仍然可以使用最佳區域功能,以連線到或註解到在C# SDK中附加萬用字元叢集的程式碼(在「LoadBalancingClient.cs」中,在LoadBalancingClient.ConnectToRegionMaster
之中的前三行)。
但是後者選項較為不方便,特別是在更新客戶端SDK的時候。
一個迴避問題的解決方案時將在Nameserver.json中的區域輸入項目加倍,方法是為每個區域新增一個複製,但是以「/*」尾碼作為您有的各個區域的名稱。
所以舉例而言,如果您只有「eu」區域,您需要新增一個以「eu/*」作為名稱的相同輸入項目。 - 在RC1中不支援在自訂驗證請求中將
Dictionary<string, object>
作為POST裝載資料來發送。
您仍然可以發送string
或byte[]
。
在v5.0.12.24499中的已知問題
- 透過PhotonControl來設定遊戲伺服器IP,將導致一個錯誤。
您需要在「deploy\LoadBalancing\bin\GameServer.xml.config」中手動設定遊戲伺服器IP,並且設定名稱為「PublicIPAddress」。 - 因為PhotonServer.config的HTTPListener的URL中的一個設置錯誤,而無法透過開箱即用的WebSocket協定來連線到伺服器。
以「/*」替換「/+」,這樣應該解決問題。