【Q】在纠结到底要用什么方式写博客,是原生态记录框架编写过程(有点所谓的手把手教学的感觉有木有),还是每个模块整合完毕后写分析文章,新手没有写过博客,不知道那种效果好。朋友们给点建议?

这套框架的初衷是可以整一套可以高效、快速、低成本开发网页游戏、手机游戏的后端框架,想了个名字叫EGame(Easy Game),后续会发一些客户端相关的博文。

整体框架:

1. 底层为C++,逻辑层为Lua,实现所有玩法逻辑脚本实现。

2. 网络库用 libevent,不仅有epool,更看中其bufferevent

3. 数据库为mysql,用memcache做数据缓冲层,实现离线数据处理与登录时角色是否存在查询等

4. 框架的主体结构为用IOThread和LogicThread两个线程来处理两个无锁循环消息队列

  Queue<MsgRecv>* g_qRecv来处理接收到的客户端消息,

  Queue<MsgSend>* g_qSend为服务端处理完逻辑之后将分发给客户端的消息

设计思路为IOThread收到客户端消息后,将其压入消息队列g_qRecv,由LogicThread读取g_qRecv队列中消息,处理完逻辑之后把要发给客户端的结果压入消息队列g_qSend,IOThread再来分发g_qSend队列消息

5. LogThread线程为写日志相关,写完log之后可用rsync同步给管理后台

6. HttpRequestThread线程用来处理与管理后台的Http请求相关,如一些后台接口

7. HotUpgradeThread线程用来监控Lua脚本是否更新,检测是否变化来重置Lua全局环境实心热更新

注:想把框架介绍写的详细一点、牛逼一点却感觉文笔匮乏啊,后续再慢慢优化改进吧,把不具体的、不够的地方慢慢补上。

【Q】想做一个框架图,却不知道用什么好,用word什么的做出来感觉不尽人意,朋友们有工具推荐吗?

初定为EGame的更多相关文章

  1. 【emotion】目标初定

    现在的我漂浮不定,我的心是凌乱的,虽然在我面前的路有无数条,但是我却不知道哪一条路是属于我的.对于java,我掌握的东西可能并不是系统的,想想也知道,自学一年,能形成什么样子的体系呢?然而在日常的工作 ...

  2. ASP.NET MVC Model元数据(二)

    ASP.NET MVC Model元数据(二) 前言 在上篇中,给大家留个对Model元数据的印象,并没有对Model元数据有过多的讲解,而在本篇中也不会对Model元数据的本身来解释,而是针对于它的 ...

  3. 高版本->低版本迁移,低版本客户端连接高版本数据库EXP导出报错EXP-00008,ORA-01455,EXP-00000

    生产环境: 源数据库:RHEL + Oracle 11.2.0.3 目标数据库:HP-UX + Oracle 10.2.0.4   需求:迁移部分表  11.2.0.3-->10.2.0.4,若 ...

  4. 点餐系统sprint3总结

    转眼间,sprint3也结束了.意味着软件工程的课程结束了,我们的项目也完成了.在队友们的认真学习,专注打码,辛苦赶工后,我们的项目完成了.显然是仓促中完成的,没有完美的界面.没有无bug的项目,但是 ...

  5. [转载] TLS协议分析 与 现代加密通信协议设计

    https://blog.helong.info/blog/2015/09/06/tls-protocol-analysis-and-crypto-protocol-design/?from=time ...

  6. java版复利计算

    这是我修改为java的初定界面,还有很多细节问题还没有解决,希望老师可以给我多点的点评,接下来继续努力,我会把每一次的进步发上来,不断的去锻炼. 1.我所用的开发工具是ecipse 2.所有的语言为j ...

  7. SmartDo数据挖掘思路

    SmartDo数据挖掘思路 数据挖掘部分: 数据挖掘的主要网址为: https://www.amazon.com/Best-Sellers/zgbs 挖掘部分为网址左边的入口,大约20多个,其中页面分 ...

  8. mysql优化--博森瑞

    http://blog.itpub.net/28916011/viewspace-1758440/ 现在说一下mysql的内存和I/O方面的两个特点. 一. mysql内存特点: 1.  也有全局内存 ...

  9. SharePoint 学习记事(一)

    记录背景: 随着公司业务的拓展,为拿到更多的项目,让原本不太信任我们的美国大佬相信我们的实力,让在美国的销售发挥他的能力,所以公司在13年下半年筹划收购了一家美国本土的公司.大约400人的规模,这个公 ...

随机推荐

  1. Github博客地址

    欢迎访问我的Github博客: J.R.Smith_blog

  2. 登录远程SQL服务器

    一 看ping 服务器IP能否ping通. 这个实际上是看和远程sql server 2000服务器的物理连接是否存在.如果不行,请检查网络,查看配置,当然得确保远程sql server 2000服务 ...

  3. Google研究员Ilya Sutskever:成功训练LDNN的13点建议

    Google研究员Ilya Sutskever:成功训练LDNN的13点建议 摘要:本文由Ilya Sutskever(Google研究员.深度学习泰斗Geoffrey Hinton的学生.DNNre ...

  4. javascript design patterns

    http://jsdesignpatterns.com/ http://www.joezimjs.com/tag/design-patterns/ http://codecube.net/#archi ...

  5. Java实现二叉树的构建与遍历

    转载:http://ocaicai.iteye.com/blog/1047397 目录: 1.把一个数组的值赋值给一颗二叉树 2.具体代码 1.树的构建方法 2.具体代码 package tree; ...

  6. [LeetCode#110, 112, 113]Balanced Binary Tree, Path Sum, Path Sum II

    Problem 1 [Balanced Binary Tree] Given a binary tree, determine if it is height-balanced. For this p ...

  7. 【转】Android驱动开发之earlysuspend睡眠模式编程总结

    原文网址:http://blog.csdn.net/bigapple88/article/details/8669537 (1)添加头文件: #include <linux/earlysuspe ...

  8. Android设备信息、感应器检测

    近日产品已经上线,开始有时间来做自己的事情,于是就开始学习和巩固一些以前用过的或者学过的技术.昨天写了一个检测Android设备的序列号和IMEI以及感应器等等的一个Demo来跟大家分享一下. 在开发 ...

  9. (转载)用PHP正则表达式清除字符串的空白

    (转载)http://www.chinaz.com/program/2009/0220/67569.shtml 我们经常会处理来自用户输入或从数据库中读取的数据,可能在你的字符串中有多余的空白或制表符 ...

  10. 字符串(多串后缀自动机):HDU 4436 str2int

    str2int Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total S ...