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. 2705: [SDOI2012]Longge的问题

    Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 1898  Solved: 1191[Submit][Status][Discuss] Descripti ...

  2. Juniper SRX 简单命令一

    Juniper为人所熟悉的一定是从netscreen开始的,作为一线防火墙品牌,还是有很高的地位.但是以前玩netscreen,都是用的网页版去配置,而且网页版做得很不错.但是现在netscreen要 ...

  3. mybatis动态sql中的bind绑定

    知识点:bind在模糊查询中的用法 在我的博客    mybatis中使用mysql的模糊查询字符串拼接(like) 中也涉及到bind的使用 <!-- List<Employee> ...

  4. spring junit4 测试

    @Service @ContextConfiguration(locations = { "classpath:config/applicationContext.xml" }) ...

  5. apache——(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address [::]:443

    问题:命令行运行httpd.exe时报错 (OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次.  : AH00072: make_sock: could not bind t ...

  6. 回文树 Palindromic Tree

    回文树 Palindromic Tree 嗯..回文树是个什么东西呢. 回文树(或者说是回文自动机)每个节点代表一个本质不同的回文串. 首先它类似字典树,每个节点有SIGMA个儿子,表示对应的字母. ...

  7. git开发错分支

    1,代码未提交时: 使用以下命令即可解决. git add .      (把所有改动暂存) git stash     (把暂存的文件提交到git的暂存栈) git checkout 本该提交代码的 ...

  8. Linux安装ipvsadm

    一.介绍 ipvs称之为IP虚拟服务器(IP Virtual Server,简写为IPVS).是运行在LVS下的提供负载平衡功能的一种技术 二.安装 1.下载 http://www.linuxvirt ...

  9. FlatBuffer入门笔记

    FlatBuffer入门笔记 1 flatbuffer资料 flatbuffer下载地址:https://github.com/google/flatbuffers flatbuffer官方使用文档: ...

  10. 【nginx】一台nginx服务器多域名配置

    Nginx 多域名配置 nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里.一. ...