Photon Server Intro
Photon is an on-premises real-time socket server and cross-platform multiplayer game development framework that is extremely fast and very simple to use.
Use the multiplayer API from Photon Server to join many players together in a shared game session and transfer data and messages synchronously, in real-time, between connected players across platforms.
Your Own Multiplayer Game Backend!
Photon Cloud allows for a broad range of game types using the client SDKs, including and not limited to:
- First Person Shooters
- Racing Games
- Minecraft type of games
- Casual real-time games
- Asynchronous and synchronous games
With Photon Server applications you get the frameworks to build and run your own multiplayer game backend.
All applications are provided in C# source code. The apps are tuned for performance and can be used out of the box or customized as needed. The deployment is very convenient using xcopy deploy with either automatic or manual restarting.
The Photon Server requires a valid license to run.
Under The Hood
Photon Server Architecture
The Photon Core is written in native C++ for performance reasons
- The core uses IO Completions Ports (IOCP) for high-performance socket handling
- Implements the heavy "lifting" of the protocols
- Support reliable UDP, TCP, HTTP and Web Sockets
The business logic executes in a .NET CLR hosted by the core.
- Contains the applications running on Photon
- Written in C# or any other .NET language
The Photon Server core supports the following protocols
- reliable UDP (based on eNET) and specially tuned for Client-2-Server architectures
- Binary TCP
- Web Sockets / Secure Web Sockets
The transfer protocol is very lean and slim. Photon wraps up the networking layer of each client platform for you. Have your game clients communicate cross-platform and across protocols. Put your data in hashtables or byte-arrays and just send it.
Server Dev Framework (C#)
All applications sit on top of a development framework that solves common tasks for you.
- RPC calls are simple and flexible mapped to operation instances.
- Threading problems are solved using message passing through fibers.
- Photon is designed to saturate traffic before the CPU becomes the bottleneck.
Server Development Tools
Fully running in Visual Studio >> F5 >> Debug right from your code! Use all the first class tools from .NET Development.
- Microsoft: Visual Studio
- Redgate: Memory Profiler, Performance Profiler, Reflector (see here ...)
- Jetbrains: ReSharper, dotTrace, dotCover, dotPeek (see here ...)
Data Persistence (DBs)
Photon Server does not provide a persistence layer.
.NET/Windows supports all major products.
For the optional usage of ORM (mapping) layers use e.g.