posts - 311, comments - 0, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

     摘要: IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都是可运行的,Windows内核花费大量的时间在进行线程的上下文切换,并没有多少时间花在线程运行上。再加上创建新线程的开销比较大,所以造成了效率的低下。
  阅读全文

posted @ 2011-01-25 15:36 点点滴滴| 编辑 收藏

     摘要:   丘比特在天上挥舞着小翅膀,掌管着人世间的爱情归属,某一刻说不定就看上了谁,然后“扑哧”射出一支爱箭,中箭的男女突然有了来电的感觉,相见时,心跳加速,呼吸加快,而如果一日不见,就好似隔了三秋,这便是爱情。
  阅读全文

posted @ 2011-01-24 14:38 点点滴滴| 编辑 收藏

     摘要: 如果你有一个很受欢迎的Web站点,你会发现当请求的连接数增加时,服务器的响应延时也会随之增加。虽然你可以增加RAM、升级处理器、使用更快的驱动器及总线,这在短期内会有一定的帮助,但最终会发现一台服务器无法完成需要的任务。

使用多台服务器平衡负载是一个不错的想法,你可以在你的服务器池中随意增加多台服务器来提高服务器的性能和增强网络的稳定性。如果你的服务器池中有多台服务器,当一台down机后,其他服务器可以接替它的工作,继续提供服务而不至于造成服务中断。
  阅读全文

posted @ 2011-01-19 20:24 点点滴滴| 编辑 收藏

     摘要: 都已经看出来了,这种每切换一次地图就要重新连接服务器的方式实在是不够优雅,而且在实际游戏运营中也发现,地图切换导致的卡号,复制装备等问题非常多,这里完全就是一个事故多发地段,如何避免这种频繁的连接操作呢? 最直接的方法就是把那个图倒转过来就
  阅读全文

posted @ 2011-01-19 19:24 点点滴滴| 编辑 收藏

     摘要: 狭义的游戏对象是指游戏世界中所能看到及可交互的对象,如玩家、怪物、物品等,我们这里也主要讨论这类对象在服务器上的组织及实现。
  在大部分的MMOG中,游戏对象的类型都大同小异,主要有物品、生物、玩家等。比如在wow中,通过服务器发下来的GUID我们可以了解到,游戏中有9大类对象,包括物品(Item)、背包(Container)、生物(Unit)、玩家(Player)、游戏对象(GameObject)、动态对象(DynamicObject)、尸体(Corpse)等。
  阅读全文

posted @ 2011-01-19 19:23 点点滴滴| 编辑 收藏

     摘要: 花了几个小时的时间给MANGOS的几个工程都加上了预编译头文件,编译速度与以前相比大大提高,不过game工程的编译速度还是不太理想,里面的文件包含关系错综复杂,再加上大量模板的使用,一个小小的改动都会引起好多文件的重新编译,实在是影响效率。  阅读全文

posted @ 2011-01-19 19:18 点点滴滴| 编辑 收藏

     摘要: 关于登录服、大区服及游戏世界服的结构之前已做过探讨,这里再把各自的职责和关系列一下。  阅读全文

posted @ 2011-01-19 19:18 点点滴滴| 编辑 收藏

     摘要: 关于这一节,这几天已经打了好几遍草稿,总觉得说不清楚,也不好组织这些内容,但是打铁要趁热,为避免热情消退,先整理一点东西放这,好继续下面的主题,以后如果有机会再回来完善吧。本节内容欠考虑,希望大家多给点意见。  阅读全文

posted @ 2011-01-19 19:12 点点滴滴| 编辑 收藏

     摘要: 有关State模式的设计意图及实现就不从设计模式中摘抄了,我们只来看看游戏服务器编程中如何使用State设计模式。

  阅读全文

posted @ 2011-01-19 17:11 点点滴滴| 编辑 收藏

     摘要: 前面一直都在说接收数据时的处理方法,我们应该用专门的IO线程,接收到完整的消息包后加入到主线程的消息队列,但是主线程如何发送数据还没有探讨过。 一般来说最直接的方法就是逻辑线程什么时候想发数据了就直接调用相关的socket API发送,这要求服务器的玩  阅读全文

posted @ 2011-01-19 17:08 点点滴滴| 编辑 收藏

仅列出标题
共32页: First 22 23 24 25 26 27 28 29 30 Last