- 博客(20)
- 资源 (13)
- 收藏
- 关注
原创 Webgame服务端分布式架构设计
Webgame服务端分布式架构设计——By King 最近在设计实现Webgame服务端游戏架构,跟大家分享下。 以下对架构的几点说明:1. DB:数据库层。使用MongoDB, 可以作分布式,按webgame的需求,基本应该是不需要的。设置3个数据库,分别是GameData(游戏数据), GameLog(游戏日志),GameConfig(游
2013-03-25 13:52:21 5331 6
转载 【转】KCP快速可靠协议
1 简介KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。纯算法实现,并不负责底层协议(如UDP)的收发,需要使用者自己定义下层数据包的发送方式,以 callback的方式提供给 KCP。 连时钟都需要外部传递进来,内部不会有任何一次系统调用。本文传输协议之考虑UDP的情况。名词说明(源码字段):...
2019-09-26 21:24:09 329
原创 公司部署公网服务器方案
需求:1. 原有一个光线宽带(旧网),现新增一条专线宽带(新网)供公网服务器使用;2. 新网要提供wifi给用户使用,并且可以通过内网访问旧网络与公网服务器;3. 要求旧网可以通过内网访问公网服务器;4. 公网服务器可以对互联网服务。设备要求:1. 三层交换机x 12. 路由器(可配置静态路由) x2 网段指定路由A网段:192.168.1.*路由B网段:192.168....
2018-03-22 17:36:13 5825
转载 boost::function用法详解
functioncommandclassstringwrapperreference目录(?)[+]要开始使用 Boost.Function, 就要包含头文件 "boost/function.hpp", 或者某个带数字的版本,从"boost/function/function0.hpp" 到"boost/function/function10.hpp". 如果你知道你想
2014-04-26 11:02:52 540
转载 Java Semaphore用法
Java Semaphore用法操作系统的信号量是个很重要的概念,在进程控制方面都有应用。Java 并发库 的Semaphore 可以很轻松完成信号量控制,Semaphore可以控制某个资源可被同时访问的个数,acquire()获取一个许可,如果没有就等待,而release()释放一个许可。比如在Windows下可以设置共享文件的最大客户端访问个数。 Semaphore维护了当前访问的
2014-01-16 14:40:16 715
转载 如何制作一个简单的游戏 Cocos2d-x 2.0.4
本文实践自 Ray Wenderlich 的文章《How To Make A Simple iPhone Game with Cocos2D 2.X Tutorial》,文中使用Cocos2D,我在这里使用Cocos2D-x 2.0.4进行学习和移植,前者是用Object-C所写,所以移植到Cocos2D-x会有些差异,比如某些函数、某些功能不能跟原文一样直接实现,需另转换方法实现。之前已经对Co
2013-08-30 16:03:14 704
转载 cocos2d-x开发环境在win + eclipse配置
之前写了Box2d物体移动的例子,没有分享一下,最近规整了一下代码,与大家分享。。。本文讲解的是你事先配置好了使用cygwin编译2dx项目,若这个你还没有配置好,请依次参考:cocos2d-x_Win32_Android_环境配置手册、cocos2d-x(2.0.2)的win32工程移植到Android、cocos2dx(2.0.2)含有Box2d编译到android平台上搞定基本的配置。
2013-08-22 15:37:56 930
转载 使用eclipse调试cocos2d-x C++ 代码(编写+真机调试,放弃VS)
前提条件:先看此文:http://blog.csdn.net/gdpencil/article/details/10178077(首先ecplise已经可以编译cocos2d-x再看此文)你已经下载coccos2d-x和NDK,并且会使用build_native.sh和eclipse编译cocos2d-x项目安装NDK Plugin英文好的同学可以直接查看官方说
2013-08-22 12:47:11 2183
转载 让人死去活来的cocos2d-x安卓开发环境搭建(windows+eclipse+ndk)
安卓环境搭建 【一 写在前面】环境搭建的顺序是这样1.JDK&JRE 安装JDK会顺带安装JRE的,这一步是为了可以编写和允许普通的JAVA程序2.Eclipse JAVA 的 IDE,这一步是为了方便地开发JAVA程序3.CDT 是Eclipse的一个插件,这一步是为了可以引入C+
2013-08-22 12:45:00 1124
Webgame服务端分布式架构设计
Webgame服务端分布式架构设计——By King 最近在设计实现Webgame服务端游戏架构,跟大家分享下。 以下对架构的几点说明:1. DB:数据库层。使用MongoDB, 可以作分布式,按webgame的需求,基本应该是不需要的。设置3个数据库,分别是GameData(游戏数据), GameLog(游戏日志),GameConfig(游戏配...
2013-03-29 11:10:17 135
原创 php-fpm nginx配置,报502错误问题
服务器由于重装,安装了PHP环境 ,发现频频报502,调试后发现只要是有错误就报502,例如数据库连接不上。网上找了各种502错误修复配置,都没解决问题。最终,从别的服务器拷个nginx.conf过来,还真的就正常了!!逐步排除后发现原来的nginx.conf没配置以下fash-cgi相关配置:fastcgi_buffer_size 64k;fastcgi_buffers 4
2012-12-26 14:57:47 1389
转载 MySQL MyISAM/InnoDB高并发优化经验
最近做的一个应用,功能要求非常简单,就是 key/value 形式的存储,简单的 INSERT/SELECT,没有任何复杂查询,唯一的问题是量非常大,如果目前投入使用,初期的单表 insert 频率约 20Hz(次/秒,我喜欢这个单位,让我想起国内交流电是 50Hz),但我估计以后会有 500Hz+ 的峰值。目前的工作成果,额定功率 200Hz(CPU 占用 10 – 20,load avg =
2011-11-26 11:52:44 6389
原创 jquery使用$.getJson()跨域大数据量请求方法
jq的$.get和$.post方法,都是不能跨域访问的。$.getJson却让我们看到了希望的曙光,不过有一点不足的是,这个是GET的方法,传递的参数是有限制的,最大不超过2083个字符。但问题终有解决办法的,经分析得出解决方案如下:a.com使用$.getJson向b.com发送请求,在请求的同时,a.com把需要的传递的内容放到临时文件中(或者membercache),b.com收到请求,反过来向a.com请求需要的数据,进行必要的操作,再给a.com返回成功的信息。这样就达到跨域大数据
2011-03-18 19:54:00 7438
原创 用PHP实现网页内容保存为excel表格
<br />当网页的表格需要保存为excel格式,可以使用链接访问以下PHP页面,即可以将内容保存到本地。<br /> <br />PHP程序处理:<br /> <br /> $smarty->assign('title', $excel['title']); // 标题 $smarty->assign('hd', $excel['hd']); // 表头 $smarty->assign('num',$excel['hdnum']); //
2011-01-17 18:43:00 5329
原创 关于游戏开发的一些总结
<br /><br />1) 架构的设计原则:简单、可控、稳定、高性能。作为游戏开发,简单和可控在很大程度能够减少开发成本,对于正在运营的游戏,也正是追求游戏的稳定。<br />2) 关于三方通讯的功能,一定要采取不信用的态度,任何来源于外部的东西,都可能是不安全的,一定要有防御性。<br />3) 游戏设计一定要有可控的压力阈值,不能让单个玩家控制我们的服务器资源,防止被攻击。<br />4) 数据库尽可能设计简单的表结构和SQL语句。<br />5) 数据的接发,采用按帧发送,小包拼
2010-12-25 15:02:00 785
原创 loadrunner模拟多用户打BOSS压力测试(网页游戏)
<br />测试工具:loadrunner<br />测试环境:某网页游戏压力测试<br />测试案例:600个玩家打BOSS<br /><br /><br />测试过程:<br />一、配置BOSS出生。<br /> 将BOSS出生点设置到在南京-木头。这里只能设置到城市,在哪个点,需要刷一下BOSS的位置,因为以下脚本录制是打木头这个点。<br /> <br />二、loadrunner录制脚本。<br />1.启动loadrunner录制脚本<br /> 1)新
2010-12-14 12:58:00 7513 5
原创 关于GET和POST方式的总结
<br /><br />问题描述:网站后台需要跳转到另外的地址,但是跳转后出现的页面是一片空白。<br />问题解决:经过排查是URL地址过长了,无法传递完整的参数。GET的方式最长能够使用1024字节。逐改进使用了cookie,经过测试,cookie也能只存放4096个字符。仍然满足不了我们的需求。最终采用POST方式,不限制传送的数据量。<br />问题总结:解决该问题采用了从get到cookie,再到post的方式。中间cookie的工作量虽然不多,但无疑是多余的。如果在开发前能够对程序的结果进行估量
2010-12-09 17:09:00 620
原创 linux下实现每天自动发送服务器日志到邮箱(使用sendmail)
今天做了一个将服务器日志分析,且将结果发送到管理员邮箱的功能。如果不熟悉,还真的要花点功夫。安装sendmail 的内容就不详序了,搜索一下有一大把,这里总结一下用法。 发送过程是:使用PHP分析服务器日志,再用服务器的计划任务每天凌晨执行一下PHP文件,将结果发送到管理员的邮箱。PHP文件:sendmail_log.php if (!(empty($_SERVER["REQUEST_URI"]) && $_SERVER["argc"]>=1)){ die("This p
2010-12-01 20:13:00 5934
转载 54点提高PHP编程效率
<br />0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。<br /><br />1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。<br /><br />2、$row[’id’] 的速度是$row[id]的7倍。<br /><br />3、
2010-11-10 20:04:00 584 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人