今天在工作中遇到,centos6.4系统中有一台服务器的网卡接口为em1、em2,其它机器的网卡接口都是eth0、eth1,由于脚本中涉及到读取这些网卡信息的,所以为了能够更好的统一管理这些游戏服务器,我决定把网卡接口统一修改为eth0、eth1。方法如下:1、修改/etc/grub.conf最后添加b..
分类:
其他好文 时间:
2015-08-26 20:22:22
阅读次数:
139
到了新的环境,老大让我有空研究下一代服务器技术,作为一个长期任务。
新的服务器想达到的目标:
1、分布式系统,对象(Entity)之间的关系类似于Actor模型。
2、逻辑服务,是单进程、多线程的,对象之间发消息进行通信,但是简单读取属性尽可能做到直接。
3、必须使用Python语言。开发方式类似于BigWorld引擎。
这个目标还是很宏伟的...
分类:
其他好文 时间:
2015-08-19 20:45:34
阅读次数:
149
说道Python和多线程,很容易想到GIL,GIL意味着只要是用Python做的多线程程序,就无法利用多个CPU。
经过一些失败的尝试后,我也一度认为GIL是无解的。我们甚至把注意力转向了IronPython等无锁Python,但是实际上那样问题可能更多,比如我们不熟悉mono,mono也没达到完全成熟的程度。
直到skynet的QQ群里一位朋友介绍了另...
分类:
编程语言 时间:
2015-08-19 20:39:56
阅读次数:
173
上一篇blog是关于gRPC框架的基本使用,如果说gRPC只是远程发几个参数,那和一个普通的http请求也没多大差别了。所以今天我就来学习一下gRPC高级一点的使用方法。流!流可以根据使用方法,分为单向和双向:
单向
– Client->Server
– Server->Client
双向
– ClientServer
下面是一个新的例子,参数表示一块地,而返回的是这块地上面的建筑。与上...
分类:
Web程序 时间:
2015-08-17 12:01:42
阅读次数:
282
Gonet2中,大量使用了gRPC,而对这个我不熟,所以这里花点时间了解一下。当然,环境我已经配好了,这里只是讲代码上如何使用,环境的搭建,网上应该蛮多。不过用gRPC要用科学的方式上网,这个对我华厦民族的同胞们,应该都不陌生了。
远程调用,一开始我想的很复杂,但是真的了解过之后,无非是,server side提供一个开方的接口,公开调用时传送数据的格式,client side遵照这种规定,调用...
分类:
Web程序 时间:
2015-08-14 17:05:47
阅读次数:
541
游戏服务器经典的架构就是C++和Lua的结合,C++开发主体框架,Lua实现一些复杂的逻辑。我们都知道Lua是一种非常快的语言,但是到底有多块,我们测试下看看。
C++调用Lua的性能测试,发现不对的地方望提出。
实验一:我们使用C++调用Lua带8个以上参数的函数,而这个函数里面什么也没有做。我们通过这个实验能够简单地测试出:使用Lua虚拟机和向调用栈当中传入8+个参数和Lua取出这些参数的时间。...
分类:
编程语言 时间:
2015-08-13 23:46:14
阅读次数:
233
客户端消息在Agent中的预处理流程。
Agent定义好的三种请求:
//api.go
var RCode = map[int16]string{
0: "heart_beat_req", // 心跳包..
1: "heart_beat_ack", // 心跳包回复
10: "user_login_req", /...
分类:
Web程序 时间:
2015-08-12 11:30:22
阅读次数:
180
Gonet2是一个用Go语言实现的游戏服务器端框架,github上面的网址是点击打开链接。
Agent的启动流程以及连接处理。...
分类:
Web程序 时间:
2015-08-11 16:18:06
阅读次数:
192
1.本地缓存和分布式缓存 ???????游戏服务器为了保证访问数据的性能需要将玩家的数据进行缓存,根据缓存的位置不一样,可以分为:本地jvm缓存和分布式缓存。之前做的2个游戏算是2种方式都接触过。 ? ? ?...
分类:
其他好文 时间:
2015-08-05 20:31:16
阅读次数:
122
近日一起游戏公司被“DDoS”攻击案件被成都市公安局高新分局网安大队成功破获。 记者从警方获悉,6月9日,该分局网安大队接“梦工厂网络有限公司”报案称:该公司游戏服务器自6月初以来受到来自互联网黑客的攻击,...
分类:
其他好文 时间:
2015-07-28 23:21:37
阅读次数:
435