[置顶] 游戏跨服架构进化之路

游戏市场竞争激烈,研发团队对于提高MMOARPG(Multiplayer OnlineAction Role Playing Game)游戏的品质的探索从未间断过,本文从当前游戏市场发展的背景出发,提出了设计自由交互的“跨域体系”的必要性,然后在实现跨服架构过程中对设计目标、原则、存在的技术难点进行了思考,实现了一套用于跨服通信的高吞吐的RPC通信框架,先后体验了被动拉取模式带来的坑,和改成主动推送模式带来的便利。并且,对该架构设计在消息组播,通信量,消息序列化/反序列化,服务器分组,战区自动分配,断线重连...
阅读(4386) 评论(1)

Redis3.2.2 集群配置总结

redis cluster在设计的时候,就考虑到了去中心化,去中间件,也就是说,集群中的每个节点都是平等的关系,都是对等的,每个节点都保存各自的数据和整个集群的状态。每个节点都和其他所有节点连接,而且这些连接保持活跃,这样就保证了我们只需要连接集群中的任意一个节点,就可以获取到其他节点的数据。 Redis 集群没有并使用传统的一致性哈希来分配数据,而是采用另外一种叫做哈希槽 (hash slot)的方式来分配的。redis cluster 默认分配了 16384 个slot,当我们set一个key 时,会...
阅读(37) 评论(0)

谈谈对PureMVC的理解

官网位置:http://puremvc.org/Facade(单例,只发送不接受Notification):关于Proxy(model)只发送不接受NotificationProxy模式为代理模式,为其他对象提供一种代理,并以控制对这个对象的访问。Proxy负责收发服务端的消息,也可以在其中写少量逻辑。收到消息后发送Notification到Mediator(view部分),在Mediator可以...
阅读(34) 评论(0)

Unity中查找子组件GameObject或Component的操作汇总

1.GameObject属性:tag常用于区分游戏中不同类型的对象(例如区分玩家和NPC)name:游戏物体的名称 方法:SetActive:使游戏物体处于活跃/不活跃状态例:other.gameObject.SetActive(flase);如果这行代码放到触发的代码中,就会起到一个让所有触发的物体都从世界上消失的作用 如何查找GameObject①直接拖拽赋值----public一个gameO...
阅读(78) 评论(0)

Unity3D学习之路

1.准备C#的开发环境 VS2015,2.准备通信协议 protobuf 3.3.0 具体请参考:Protobuf 3.3 使用总结3.引入日志系统 :C#日志系统 Log4net使用总结4.搭建并调通和server之间的通信框架,通过反射注入到各个Action去处理,达到了命令行级别的通信4.NGUI 基础准备http://www.cnblogs.com/HangZhe/p/7381040.ht...
阅读(67) 评论(0)

C#日志系统 Log4net使用总结

.net 日志系统官网:https://logging.apache.org/有了log4j2的基础,log4net使用也类似,很容易让JAVA程序员上手。1.通过NuGet下载依赖包 log4net 2.0.82.创建配置文件 log4net.config,放置到源代码src下,要运行起来要放到/bin/Debug/ /bin/Release 下,并在文件AssemblyInfo.cs上加上一句...
阅读(145) 评论(0)

Protobuf 3.3 使用总结

下载可执行文件 protoc.exehttps://github.com/google/protobuf/releases/里的protoc-3.3.0-win32.zip,解压拿到protoc.exe最方便的方式通过NuGet包管理器,安装 Google.Protobuf 3.3.0 和 Google.Protobuf.Tools 3.3.0,这个包含了预编译的protoc.exe和和在tool...
阅读(127) 评论(0)

在CentOS 7 下安装.Net 框架

由于 在跑protobuf build 脚本时,为了编译protobuf 遇到了以下问题:Building relevant projects. + dotnet restore ./src/Google.Protobuf.sln buildall.sh: line 9: dotnet: command not found需要安装.net框架,于是打算在linux 下操作一把。Install .N...
阅读(123) 评论(0)

Protobuf 的 proto3 与 proto2 的区别

这是一篇学习笔记。在粗略的看了 Protobuf 的文档中关于 proto2 和 proto3 的说明后,记录下了几点 proto3 区别于 proto2 的地方...
阅读(57) 评论(0)

JAVA代码的热修复实现

用于处理线上的一些逻辑bug的利器,这样,就不会为了一些几行代码的错误导致的bug,需要重新发版本重启服务器,而严重影响在线活跃,收入了。...
阅读(206) 评论(0)

Sed使用总结

1.把 10.104.5.71替换成10.104.5.98, sed -i 's/10.104.5.71/10.1...
阅读(128) 评论(0)

Redis命令总结

查找某个key的类型127.0.0.1:6379> type "rank:911745220609"hash查找某个key占用大小要看中文的redis-cli --raw...
阅读(157) 评论(0)

Infobright构架解析

Infobright的总体构架图如下:如上图所示,Infobright采用了和MySQL一致的构架,分为两层。上层是服务及应用管理,下层是存储引擎。Infobright的默认存储引擎是brighthouse,但是Infobright还可以支持其他的存储引擎,比如MyISAM、MRG_MyISAM、Memory、CSV。Infobright通过三层来组织数据,分别是DP(Data Pack)、DPN...
阅读(236) 评论(0)

yum源调整为阿里云源记录

鉴于国外的yum源经常连不上,切换成国内的yum源,我们首选阿里的备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup下载新的CentOS-Base.repo 到/etc/yum.repos.d/CentOS 6wget -O /etc/yum.repos.d/CentOS-Base.repo...
阅读(235) 评论(0)

Redis异常及使用总结

现象 :早上后台的订阅线程无故退出,导致统计和监控失效长达5个小时左右 日志: 2015-04-13 05:00:00.256 ERROR [Message SubScribe Monitor][SubScribeManager.java:127] - 订阅线程无故退出 com.lingyu.common.core.ServiceException: redis.clients.jedis.e...
阅读(26217) 评论(0)

数据库连接池Druid使用总结

根据综合性能,可靠性,稳定性,扩展性,易用性等因素替换成最优的数据库连接池。...
阅读(2081) 评论(0)
203条 共14页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:820203次
    • 积分:7226
    • 等级:
    • 排名:第3197名
    • 原创:149篇
    • 转载:52篇
    • 译文:2篇
    • 评论:87条
    文章分类
    最新评论
    robot