码迷,mamicode.com
首页 > 数据库 > 详细

Firefly——dbentrust 示例DEMO (源码+教程)

时间:2014-08-11 17:44:42      阅读:341      评论:0      收藏:0      [点我收藏+]

标签:http   使用   io   strong   文件   数据   for   div   

原地址:http://www.9miao.com/question-15-54002.html

Firefly——dbentrust示例说明
一、数据库准备
本篇示例演示的是firefly与MySQL和memcached之间的数据处理,所以要先准备好数据库。(数据库工具使用的是SQLyogEnt)
1、创建数据库

<ignore_js_op>

bubuko.com,布布扣



2、建表
下面是一个简单的角色表(player)

<ignore_js_op>

bubuko.com,布布扣



二、firefly与MySQL之间的交互(test_dbpool.py)

<ignore_js_op>

bubuko.com,布布扣



第18行中的sql语句可以是任何合法的sql语句,对数据库进行操作。本例是查询player表中id为100001的角色的等级,运行文件:

<ignore_js_op>

bubuko.com,布布扣



打印出的结果为40,同数据库中完全一样。(最后得出的结果为元组的原因,详见python的MySQLdb这个模块的用法,网上教程很多,这里不再说明。)

三、firefly与memcached之间的交互(test_mclient.py)

<ignore_js_op>

bubuko.com,布布扣



运行本例前,一定要保证memcached服务正常运行,之前发过关于memcached安装、配置方面的文档,这里不再说明。下面运行文件:

<ignore_js_op>

bubuko.com,布布扣



四、综合示例(test.py)

<ignore_js_op>

bubuko.com,布布扣



<ignore_js_op>

bubuko.com,布布扣



43,44行是将数据库中的player表的数据同步到memcached中
46行是将player表的数据注册到MAdminManager中,MAdminManager之前也有提到过,本质上相当于数据库的“库”,管理所有的“表”

55行会将所有注册到MAdminManager中的表数据同步到数据库,一般用于日常的游戏数据备份(避免因特殊事故造成服务器关闭而造成的数据丢失,但此举比较消耗性能,建议间隔时间长一点)以及服务器关闭前备份数据。
运行文件:

<ignore_js_op>

bubuko.com,布布扣



可以看出memcached中的数据levels已由40被改为20,下面看下数据库中是否改变:

<ignore_js_op>

bubuko.com,布布扣

 

Firefly——dbentrust 示例DEMO (源码+教程),布布扣,bubuko.com

Firefly——dbentrust 示例DEMO (源码+教程)

标签:http   使用   io   strong   文件   数据   for   div   

原文地址:http://www.cnblogs.com/123ing/p/3905114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!