Photon——Feature Overview 功能概述

 

Feature Overview 功能概述

 
     Photon is a real-time socket server and development framework that is fast, simple to use and flexible. Client SDKs are available for all major platforms:
     Photon是一个快速、简单、灵活、实时的Socket服务器和开发框架,客户端SDK可用于以下平台:
     The Photon high level architecture looks like this:
     Photon的高级架构体系:
 
 

Basic Architecture 基本架构

  • The Photon Core is written in native C++ for performance reasons
    • It uses IO Completions Ports (IOCP) for high performance socket handling
    • Implements the heavy “lifting” of the protocols (e.g. reliable UDP)
    • Support relaible UDP, TCP and Web Sockets
          Photon Core是用C++编写的,这是出于性能考虑
               它使用的是完成端口IOCP,用于高性能套接字的处理
               使用了更好的协议
               支持可靠的UDP,TCP和Web Sockets
  • The Core hosts a .NET CLR which runs the business logic in C#
    • Contains the applications running on Photon
    • Written in C# (or any other .NET language)
          Photon Core 托管着运行业务逻辑的.NET CLR
               包括运行在Photon上所有的应用程序
               用C#编码

Server Applications (C#) 服务器应用程序

  • We provide several applications as starting point provided in source C# code
    • Lite: Simple and powerful room based game logic
    • LiteLobby: Lobby functionality and room logic
    • Policy: Policy server for Unity3d, Flash and Silverlight
    • LoadBalancing: Load balanced lite scaling across servers (this is powering our Photon Cloud)
          我们提供了多种应用作为开始点
               Lite:简单又强大的房间游戏逻辑基础
               LiteLobby:大厅功能和房间逻辑
               Policy:为U3D,Flash,Silverlight提供的策略服务
               LoadBalancing:负载均衡的Lite扩展服务器
  • The apps are tuned for performance and can be used out of the box or extended
          这些应用是性能调优和可扩展的
  • Convenient xcopy deploy (automatic or manual restart)
          方便部署(自动或手动重启)

Protocols 协议层

  • Photon Core supports the follwoing protocols
    • reliable UDP (based on eNET) and specially tuned for Client-2-Server architectures
    • Binary TCP
    • Web Sockets
          Photon Core支持以下协议
               可靠的UDP(基于eNet),专门针对Client-2-Server架构
               二进制TCP
               Web Sockets
  • Transfer protocol is very lean and slim
          传输协议很精简
  • Photon wraps up the networking layer of each client platform
          Photon包含了网络层的每个客户端平台
  • Communicate cross-platform and cross-protocol
          通信是跨平台和跨协议的
  • Put your data in hashtables and send it: forget about de-/serialization
          你的数据是放在hashtables中进行发送的,无需序列化和反序列化

Server Dev Framework (C#) 服务器Dev框架

  • All apps sit on top of a development framework that solves common tasks for you
          置于所有应用程序之下的一个开发框架,为你解决通用的任务
  • Simple and flexible mapping of RPC calls to operation instances
          简单和灵活的映射调用RPC去操作实例
  • Messages passing through fibers solve many threading problems
          信息传递是通过线程池来解决多线程的一些问题
  • Designed to saturate bandwidth before the CPU becomes the bottleneck
          在CPU成为瓶颈之前设计成饱和带宽

Server Development Tools 服务器开发工具

  • Fully running in Visual Studio » F5 » Debug right from your code!
          完全运行在VS上,F5可以进行调试
  • 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 )
          可使用的工具
               Microsoft:VS
               Redgate:内存分析、性能分析
               Jetbrains:ReSharper, dotTrace, dotCover, dotPeek 

Data Persistence (DBs) 数据持久层

  • Photon does not provide an persistence layer
          Photon不提供数据持久层
  • .NET/Windows supports all major products
          .NET/Windows提供SQL和NoSQL
  • Usage of ORM (mapping) layers optional
          可使用ORM(对象关系映射)

Vast Support of Client Platforms 支持的客户端平台

  • All client platforms interoprate (iOS vs Android vs PC)
          支持所有的客户端平台
  • Major client platforms supported 主要的客户端平台

    • Unity3d: Inlcuding Web/Standalone (Win, MAC, Linux), iOS, Android (see here )
    • MAC: iOS (iPad, iPhone), Mac OSX
    • Marmalade: iOS, Android, Bada, LG, BlackBerry (see here )
    • Flash & Air: Browser, Standalone, iOS, Android
    • Windows 8, Windows 7, Vista, XP, Windows Server: Native & .NET
    • Windows Phone 7+
    • HTML5: Javascript
    • Android: Java and native (NDK)
    • .NET
    • Mono(跨平台的.Net运行环境)

Hosting 托管

  • Host Photon with any major provider
    • PaaS: Platform as a Service
    • IaaS: Infrastructure as a Service
          主要提供者
               平台即服务
               基础设施即服务
  • Selected providers 可选供应商
               微软Azure、Leaseweb、SoftLayer、Rackspace、Amazon EC2

Support 支持

Photon——Feature Overview 功能概述的更多相关文章

  1. MicroRNA in Control of Gene Expression: An Overview of Nuclear Functions 微RNA控制基因表达:核功能概述

    MicroRNA in Control of Gene Expression:An Overview of Nuclear Functions微RNA控制基因表达:核功能概述 抽象:小的非编码RNA( ...

  2. Unity Lighting - Lighting overview 照明概述

    Lighting overview 照明概述     In order to calculate the shading of a 3D object, Unity needs to know the ...

  3. Power BI官方视频(1) Power BI Desktop 7月份更新功能概述

    2016年7月,Power BI Desktop进行了一些功能更新,提高整体的用户体验.同时也有一些新的和令人兴奋的功能.看看大概介绍,更新功能要点: 本文原文地址:Power BI官方视频(1) P ...

  4. osgearth各个例子功能概述

    osgearth各个例子功能概述 转自:http://blog.csdn.net/wl198302/article/details/21177309 最近在学习osgearth,对其还不是很理解,有些 ...

  5. SAP Business One SAP B1功能概述

    SAP Business One SAP B1功能概述 SAP B One配有易于使用的软件界面,是一款全面的,多功能的业务管理解决方案,贵企业可以将其用作主要的企业资源(ERP)应用程序. 该解决方 ...

  6. Android(java)学习笔记102:Map集合功能概述

    下面通过代码引入Map集合:如下 package cn.itcast_01; import java.util.HashMap; import java.util.Map; /* * 作为学生来说,是 ...

  7. Java基础知识强化之集合框架笔记51:Map集合之Map集合的功能概述与测试

    1. Map集合的功能概述 (1)添加功能 V put(K key,V value):添加元素.这个其实还有另一个功能?先不告诉你,等会讲 如果键是第一次存储,就直接存储元素,返回null 如果键不是 ...

  8. Java基础知识强化之集合框架笔记16:List集合的特有功能概述和测试

    1. List集合的特有功能概述: (1)添加功能: void add(int index, Object element):在指定位置添加元素 (2)获取功能: Object get(int ind ...

  9. Java基础知识强化之集合框架笔记03:Collection集合的功能概述

    1. Collection功能概述:Collection是集合的顶层接口,它子体系有重复的,有唯一性,有有序的,无序的. (1)添加功能 boolean add(Object obj):添加一个元素 ...

随机推荐

  1. 用python打印99乘法口诀表

    代码如下 #!/usr/bin/env python # encoding: utf-8 __author__ = 'Nicholas.Cage' i = 1 j = 1 while i <= ...

  2. android的wifi程序随笔作业

    不用说,做前最好新建一个wifiadmin类,用来装载你所有的wifi打开关闭,wifi配置,连接情况等等wifi操作,然后main类里做一些button连接listview显示wifi网络连接等东西 ...

  3. UVa 11354 邦德(最小瓶颈路+LCA)

    https://vjudge.net/problem/UVA-11354 题意: 有n个城市m条道路,每条道路有一个危险系数.先在有若干个询问,要求找到一条从s到t的路,使得途径所有边的最大危险系数最 ...

  4. sa learning

    后缀数组之前一直在给队友搞,但是这个类太大了,预感到青岛八成会有,于是自己也学习一下,记录一下做题的历程 所用的模板暂时来自于队友的倍增nlogn da算法 int t1[maxn] , t2[max ...

  5. 解压.zip,.tar.gz文件到指定目录,重命名文件

    1.解压文件到指定目录 /** * 解压文件到指定目录 * zipFile:要解压的文件 * descDir:解压到哪个文件 * */ @SuppressWarnings("rawtypes ...

  6. Linux安装keepalived

    1.下载安装ipvs安装包,进行解压 http://www.keepalived.org/software/ 2.创建安装路径连接 安装环境: yum -y install openssl-devel ...

  7. jQuery实际案例⑤——仿京东侧边栏(楼层)

    楼层:①页面滑动到哪块儿“楼层”就显示到哪个:②点击某“楼层”页面滚动到对应的位置:③点击“返回”回到页面顶部 实现:①使用$(window).scroll(function(){ });  //监视 ...

  8. Memcached incr 与 decr 命令

    Memcached incr 与 decr 命令用于对已存在的 key(键) 的数字值进行自增或自减操作. incr 与 decr 命令操作的数据必须是十进制的32位无符号整数. 如果 key 不存在 ...

  9. Webstorm: cannot find any declarations

    起因 在调整项目关系时,将根目录的.idea文件删除,导致了对相对路径的资源无法直接command + click进行跳转 尝试 1. 新建quick-link (无效) 2. invalidate ...

  10. 上传网站后建议执行:chown www:www -R /path/to/dir 对网站目录进行权限设置,/path/to/dir替换为你网站目录。

    上传网站后建议执行:chown www:www -R /path/to/dir 对网站目录进行权限设置,/path/to/dir替换为你网站目录.