ASP.NET Web Game构架设计3--业务逻辑服务器之计时器

业务逻辑服务器里主要包括以下四个模块

u 计时服务器

u 资源服务器

u 其他逻辑服务

u 对外的WCF接口模块/Socket接口模块

1.计时服务器

计时服务器的作用是给需要长耗时的功能提供一个延时管理模块,比较典型的 应用如“种菜”的计时,武将升级的计时,科技升级的计时,建筑升级的计时等 。计时服务器主要由四个元素组成:

u 用于保存计时队列的数据表

u 添加计时的函数接口

u 删除计时的函数接口

u 用于加速的函数接口

u 定时机制

u 可以动态扩展的计时过期处理程序

用于保存计时队列的数据表

先来说一下存储结构,计时的存储大体上有两种方案:1.基于内存;2.基于数 据库。首先要说明的,从经验角度出发,本人更青睐于第二个方案。下面对这两 个存储方案进行评比:

基于内存的优点:

操作速度快

基于内存的缺点:

如果服务器停电,所有用户的队列数据将全部消失!(客服的灾难)

基于数据库的优点:

不怕服务器掉电,只要服务程序启动,就可以处理过期的队列

基于数据库的缺点:

读取数据的速度较慢,

时间: 2024-08-19 00:11:29

ASP.NET Web Game构架设计3--业务逻辑服务器之计时器的相关文章

ASP.NET Web Game构架设计2--数据库设计

首先来看一下数据库设计. 游戏的数据库设计是项目基础设计中很重要的一个环节,下面将说明以下几个 要点: u 为什么选用SqlServer u 基本原则 u 表关系的设置 u 数据的冗余设计 u 什么时候使用存储过程 u 什么时候使用EntityFramework什么时候使用ADO.NET 1.为什么先用SQL Server 首先,不要对SQL Server的性能表示怀疑.作为WebGame应用来讲,它的吞吐 能力,承载能力完全够用. 第二,如果服务代码是使用C#来编写的,那么SQL Server

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【外传】——Attribute Routing

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[外传]--Attribute Routing 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 题外话:由于这个技术点是新学的,并不属于原系列,但借助了原系列的项目背景,故命名外传系列,以后也可能在这个系列中附加一些新的技术. 前言 在Web Api 2.0中,提出了一种新的配置路由方式--基于特性的路由(Attribute-based Routing),在我们之前

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【开篇】【持续更新中。。。】

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[开篇][持续更新中...] 最近发现web api很火,园内也有各种大神已经在研究,本人在asp.net官网上看到一个系列教程,原文地址:http://bitoftech.net/2013/11/25/detailed-tutorial-building-asp-net-web-api-restful-service/.于是打算跟着学一下,把学习过程记录在博客园的同时也分享给大家. 每一篇结束后我都会把代码共享 由于

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【七】——实现资源的分页

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[七]--实现资源的分页 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 这篇文章我们将使用不同的方式实现手动分页(关于高端大气上档次的OData本文暂不涉及,但有可能会在系列的后期介绍,还没确定...),对于分页的结果,我们将采用2种不同的方式响应给客户端(1.将分页元数据封装在响应Body中2.在http响应报文头部添加分页信息). 众所周知,在服务器端一

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【六】——实现资源间的关联

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[六]--实现资源间的关联 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 这一篇文章主要介绍一下资源间的关联--例如在学生和课程之间就存在这样的关联:每一个课程都会有多个学生来选,如何获取这些有关联的信息?如何实现选课的业务?对于客户端应该怎么来调用呢?下面给出解决方案: 配置对应的路由 对于上面的需求,我们可以先定制一个URI模板:"api/courses

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【四】——实现模型工厂,依赖注入以及格式配置

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[四]--实现模型工厂,依赖注入以及格式配置 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 在上一篇中,我们已经初步开始使用Web Api了,但同时出现了一些很多不足之处,本章我们就着重来解决这些不足. 上篇导航:http://www.cnblogs.com/fzrain/p/3510035.html 配置JSON的格式 Web Api提供Xml和JSON作

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【十】——使用CacheCow和ETag缓存资源

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[十]--使用CacheCow和ETag缓存资源 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 本文将使用一个开源框架CacheCow来实现针对Http请求资源缓存,本文主要介绍服务器端的缓存. 使用缓存技术可以很好的提高Web Api的性能,减小服务器的开销.我们把这种缓存形式称之为:条件化请求(Conditional Requests).具体表现为:客户

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【三】——Web Api入门

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[三]--Web Api入门 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 经过前2节的介绍,我们已经把数据访问层搭建好了,从本章开始就是Web Api部分了.在正式开始之前,再一次回顾一下Web Api的应用场景:Web Api可以与 MVC,WebForm结合使用,也可以作为一个单独的Web服务.在正式讨论Web Api的配置以及如何构造我们的URI来消

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【五】——在Web Api中实现Http方法(Put,Post,Delete)

原文:使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[五]--在Web Api中实现Http方法(Put,Post,Delete) 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 在Web Api中,我们对资源的CRUD操作都是通过相应的Http方法来实现--Post(新增),Put(修改),Delete(删除),Get(查询).查询在前几章我们已经实现了,本章就在我们的案列(CourseController)