SERVER

Photon Server
Features

Build any kind of multiplayer game and create your own fully authoritative servers.
Host and run them in your own premises.

Realtime, Turnbased & MMO

Benefit from over 15 years of development. Use the lean and speedy UDP/TCP protocols that use low bandwidth and allow ultra fast serialization. Photon Server is the ideal multiplayer engine for any kind of multiplayer game.

Multiplayer Framework

Photon Server provides you with turnkey frameworks for multiplayer games. Start from scratch or build your own custom logic on top of several demo applications included in source code with the free server SDKs.
This lets you achieve great results fast and easy.

Cross-Platform

You develop and build directly for your chosen gaming platform, with your favorite engine or framework:
Photon is the leading cross-platform multiplayer service and the world's #1 for Unity games.

High Scalability

All Photon Server SDKs include the load balancing framework in source code. Our Photon Cloud scales seamlessly using this framework. Run on-premises, on cloud servers or mix bare metal with cloud servers to ensure sufficient capacities for peak times.

Architecture

Whether with Reliable UDP, TCP, HTTP or Websockets: Photon's highspeed client to server architecture is the game industry's most solid foundation for your titles. Forget about punch-through issues. It just works.

Custom Server Logic

Customize and develop the server logic in any .NET language like C# or managed C++. First class tools like Visual Studio or Redgate Profiler allow for rapid development and debugging.

Production Ready

The SDKs contain sample apps for room based games such as FPS or MOBAs and for WoW-like MMOs with interest management.

The Network Engine for all Major Platforms

Photon completely wraps up the complex networking layer of each client platform for you.
Photon Server supports Reliable UDP, TCP, HTTP and Web Sockets with a lean and slim transfer protocol for each.
Your game clients communicate cross-platform and across protocols:
just send your data and Photon does the deserialization/serialization, you don't.

Photon Server Architecture

The Photon Core is written in native C++ to provide the ultimate performance and to allow for first-class toolchain support.
In combination with Windows Server IO Completions Ports (IOCP) it implements the heavy "lifting" of the protocols.
The business logic executes in a .NET CLR and contains the applications written in C# or any other .NET language.

All applications sit on top of a extensible RPC and event development framework that solves common tasks.
RPC calls are simply and flexible mapped to operation instances.
Threading is simplified, based on message passing principles using fibers.
Overall, Photon Server is designed to saturate traffic before the CPU becomes the bottleneck.

Runs on Windows (32 and 64 bit), latest version recommended.

Scalability

Easily scale your application across multiple servers as your titles grow.
Photon Server contains a load balancer (Master/Lobby) to allow for high scalability.
The Master/Lobby Server keeps track of the load level on the Game Servers and of the games that are currently open and routes players accordingly for a optimal QoS.
Game Servers host the game rooms and regularly report their current work load and the list of running game sessions to the Master Server.

Room-based games scale out-of-the box with the Load Balancing app provided in source code.
MMOs usually require a custom scaling concept that fits the individual requirements.
Find a MMO framework including interest management provided in source with the Photon Server SDKs.

Hosting and Operations

Combine self hosted and cloud servers to provide sufficient capacities as your titles grow.
Run Photon Server on your own bare metal servers, cloud servers or even mashup both for optimal price/performance ratio.
For example, cover high loads adding some cloud servers to your dedicated machines on the fly.

Photon Server easily integrates with your Windows Server landscape.
Run it as a Windows service, script it using PowerShell and look at the included Windows Performance Counters to monitor server load.