原地址: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. Android 中的图像特效(Matrix)

    以前在线性代数中学习了矩阵,对矩阵的基本运算有一些了解,现在在Android中有一个Matrix类,它的中文意思就是矩阵.Matrix主要是用于图像的缩放.平移.旋转.扭曲等操作.图像处理,主要用到的 ...

  2. 日入过百优质消除手游数据分享—萌萌哒包子脸爱消除(游戏开发引擎:libgdx)

    从2014年开始,消除游戏异常火爆,从消除小星星到腾讯的天天消除都赢得了海量用户.目前,各大市场上开心消消乐等游戏依旧火爆.消除游戏一直持续保持着女性和孩子的主流游戏地位.虽然市场上消除游戏种类很多, ...

  3. python学习day3--python基础

    1.python不用声明变量的类型,运行时python自己进行判断 2.尽量不要用“+”去拼接字符串,运行时会每遇到一个“+”就开辟一块内存空间,使用如下方式进行字符串的拼接. msg=''' inf ...

  4. android不依赖具体activity弹出Dialog对话框,即全局性对话框

    最近在DialogUtil类中声明了一个静态的弹出Dialog方法,弹出的Dialog也是静态的,并且只在第一次进行创建,由于Dialog弹出依附于Activity,所以就出现了问题. 即:第一次调用 ...

  5. AutoPoco的使用

    官方开发指导https://autopoco.codeplex.com/documentation 初步使用: SimpleUser是自己要批量创建的类 1)创建管理工厂 IGenerationSes ...

  6. Xml 学习二

    使用PHPDOM模型操作XML XML的树状结构: s 1.xml文档 1.1.创建DOM树 //创建DOM树$M = new DOMDocument('1.0','utf-8');   1.2.加载 ...

  7. [转载]mysql慢日志文件分析处理

    原文地址:mysql慢日志文件分析处理作者:maxyicha mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在mysq ...

  8. js判断IE6(推荐方法一)

    不得不使用判断的方法 //方法1:推荐 if ( /MSIE 6/.test(navigator.userAgent)){ } //方法2: if ( navigator.appVersion.ind ...

  9. apache、php隐藏头信息的方法

    本文介绍下,在apache与php中隐藏头部信息的方法,有需要的朋友参考下. 一.apache隐藏头部信息 apache 的 httpd.conf 有两个配置可以控制是否显示服务器信息给用户.Serv ...

  10. XZ压缩最新压缩率之王

    xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具. 之前xz使用一直很少,所以几乎没有什么提起. 我是在下载phpmyadmin的时候看到这种压缩格式的,phpm ...