原地址:http://blog.csdn.net/wangqiuyun/article/details/11150503

本来公司一个网游服务器端选定了pomelo框架,后来出了个Firefly,为做一个对比,决定研究一下Firefly。看了一下Firefly,感觉头大,python的,本人python小白,只好慢慢折腾,一天下来总算装上了Firefly框架,并把他的那个开源网游《暗黑世界》服务器端跑了起来,特此记录共享!

其实关于这个框架的安装,他们的官网和BBS是有教程的只是太零散,并且面向的都是高手使用,python小白根本看不懂,在这里我尽量写得简单明了,你就算是刚入门菜鸟都能看懂。开始之前我大体讲一下,这个框架基于python编写,第三方库依赖:twisted, python-memcached,DBUtils,MySQLdb,后端数据存储用到了mysql和memcached,那么咱们一步一步从头来,注意我这里是Win7的系统。

1、安装python,我用的是python-2.7.5.msi,注意是2.7的版本,如果你装了2.6下面twisted和MySQL-python也就要安装对应的2.6版本,下载一路下一步安装即可,注意安装时选择把他的路径加到Path环境变量中,这样咱们就可以直接在控制台使用python命令了;

2、安装mysql,我用的是mysql-5.5.27-win32.msi,也是下一步安装即可,注意设置root账号密码,及默认端口3306;

3、安装memcached,你可以下载源码回来这几编译,也可以找别人编译号的,我找了一个1.4.13版本的:Memcached 1.4.13 For Windows 32or64.zip

关于memcached,我也算初次使用,这里啰嗦几句:

安装:以管理员身分运行cmd,进入memcached.exe所在路径,运行memcached.exe -d install -m 500 即可安装完毕,你可以去windows服务里查看是否有memcached服务;

启动:memcached.exe -d start

停止:memcached.exe -d stop

memcached的基本设置:
-p 监听的端口 默认端口:11211
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

4、安装setuptools,装这个其实就是方便使用easy_install来安装python第三方库,下载:setuptools-0.6c11.win32-py2.7.exe,安装完毕后,把python下Scripts路径也添加到path环境变量里,我这里是path:C:\Python27\Scripts;

5、安装twisted,其实可以用easy_install twisted命令来安装,我这里是下载Twisted-12.2.0.win32-py2.7.exe来安装;

6、运行命令easy_install python-memcached 安装python-memcached;

7、运行命令easy_install DBUtils 安装DBUtils;

8、运行命令easy_install affinity 安装 affinity;

9、安装MySQL-python,可以用easy_install MySQL-python 命令安装,我这里下载MySQL-python-1.2.4.win32-py2.7.exe安装;

10、windows的话还要装一个pywin32,下载pywin32-218.win32-py2.7.exe安装;

11、安装firefly,下载firefly,这里是1.2.2版本,解压后,cmd进入firefly目录下,运行

python setup.py build

python setup.py install

即可安装完毕;

12、创建运行demo

安装完firefly之后,在python script包中就存在 firefly-admin的工具。创建第一个工程:

firefly-admin.py createproject myproject

运行:python startmaster.py

如果不报错就证明运行起来了;

13、运行暗黑世界服务器端

下载DiabloWorld-server-v1.4,解压后,用mysql运行anheisj.sql脚本创建数据库;

进入DiabloWorld-server-v1.4目录,修改config.json 里memcached服务器地质及mysql数据库host地址;

终端运行 python startmaster.py 即可;

如果出现can't connect to mysql server on 'localhost',去把mysql数据库host地址改成127.0.0.1即可。

------------------------------------------------------------------------

写到这!

windows下游戏服务器端框架Firefly安装说明及demo运行的更多相关文章

  1. 在windows下搭建爬虫框架,安装pywin32时出错?

    出错原因:pip install pypiwin32(安装文件是pypiwin32而不是pywin32) pip intall pywin32

  2. windows下python常用库的安装

    windows下python常用库的安装,前提安装了annaconda 的python开发环境.只要已经安装了anaconda,要安装别的库就很简单了.只要使用pip即可,正常安装好python,都会 ...

  3. windows下配置lamp环境(1)---安装Apache服务器2.2.25

    window下lamp成为wamp; 安装wamp环境的第一步是安装Apache服务器.下面开始安装步骤图文并茂. 一.双击安装包点“next”进行下一步,然后同意协议(这张图没有截):

  4. Windows下的lua-5.3.4安装过程

    Windows下的lua-5.3.4安装过程 Mingw平台下的编译过程: $ make echo$ make mingw$ make local $ make echo PLAT= none CC= ...

  5. Windows下当地RabbitMQ服务的安装

    Windows下本地RabbitMQ服务的安装 本文参考:刘若泽相关技术文档 当然这些内容页可以通过RabbitMQ官方网站获得. RabbitMQ配置说明手册 一.RaibbitMQ服务器配置 1. ...

  6. Windows 下 MySql 5.7.20安装及data和my.ini文件的配置(转)

    Windows 下 MySql 5.7.20安装及data和my.ini文件的配置     本文通过图文并茂的形式给大家介绍了MySql 5.7.20安装及data和my.ini文件的配置方法. my ...

  7. windows下使用cpanm进行模块安装

    windows下使用cpanm进行模块安装 要放假了,突然想整理一下手头上的软件,突然发现perl的安装模块这个功能不能用. 弄了一下,使得windows 下 perl 的 cpanm能用,避免成天为 ...

  8. windows下mysql 8.0.12安装步骤及基本使用教程

    本文实例为大家分享了windows下mysql 8.0.12安装步骤及使用教程,供大家参考,具体内容如下 补充:mysql 已经更新到了 8.0.19,大致步骤和这个差不多,照着来就完事了. 我下载的 ...

  9. 安装选择msi格式还是zip(windows下Nodejs zip版下载安装及环境变量配置)

    安装选择msi格式还是zip((windows下Nodejs zip版下载安装及环境变量配置)) -----以node.js 安装为例: 1,外观对比: ✿ 简单介绍一下node的作用: • node ...

随机推荐

  1. 获得随机的n条结果行

    * FROM [Menu] order by NEWID() * FROM [Menu]

  2. JDBC之数据连接

    :数据库语句: create database LandDB; use LandDB; create table T_BL_CANTON_CODE ( CTN_CODE int primary key ...

  3. firebug调试js时提示调试器未激活处理办法

    firebug是web开发中最常用的分析调试软件,不过我今天使用在调试百度在线编辑器UEditor时一直提示调试器未激活. 从使用经验来看不应该啊,我都下了断点了为什么会提示调试器未激活呢!多次载入网 ...

  4. iOS动画——弹窗动画(pop动画)

    用pop动画简单实现弹窗的缩放和渐变,感觉这个动画常用,就写一下博客 pop动画是Facebook推出的动画引擎,请自行到GitHub上搜索下载拖拽导入xcode项目中. 更多pop动画使用和原理可网 ...

  5. MAC系统介绍

    MACOS: UNIX系统图形界面的显示 开发环境: 一种是终端(terminal) 一种是Xcode(ide) MAC快捷键: command(window) + c : 复制 command + ...

  6. css笔记——移动端

    苹果手机 /*按钮样式:*/input[type=button], input[type=submit], input[type=file], button { cursor: pointer; -w ...

  7. [GeekBand] C++11~14

    一.关键字decltype 由对象得到对象的数据类型,例如 Complex  a(1,  2);     decltype(a)  b(3,  4);     declare type是让编译器去找到 ...

  8. 【转】VS2012发布网站详细步骤

    1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布: 2.弹出网站发布设置面板,点击<新建..>,创建新的发布配置文件: 输入你自 ...

  9. ssh 登陆指定 验证文件

    当前用户jim ssh-keygen -t rsa 生成密钥 把pub结尾的公用密钥数据追加到192.168.1.3上的 /home/tom/.ssh/authKeys(文件名可能不一样) ssh - ...

  10. CSS3 弹性盒布局模型(转)

    简介 引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的条目进行排列. 对齐和分配空白空间.即便容器中条目的尺寸未知或是动态变化的,弹性盒布局模型也能正常的工作.在该布局模型中,容器会根 ...