skynet mysql_云风skynet学习笔记001---环境搭建

在 skynet 中,用服务 (service) 这个概念来表达某项具体业务,它包括了处理业务的逻辑以及关联的数据状态。使用 skynet 实现游戏服务器时,不建议把业务状态同步到数据库中,而是存放在服务的内存数据结构里。服务、连同服务处理业务的逻辑代码和业务关联的状态数据,都是常驻内存的。如果数据库是你架构的一部分,那么大多数情况下,它扮演的是一个数据备份的角色。你可以在状态改变时,把数据推到数据库保存,也可以定期写到数据库备份。业务处理时直接使用服务内的内存数据结构。(引自云风GettingStarted。

预备

首先,我们先要确认以下环境是否安装,这个是编译skynet过程中必须的环境,使用下面的命令来安装,说明一下,我使用的是CentOS 7:

yum -y install gcc automake autoconf libtool make readline-devel

其次,如果使用git的话需要安装git

yum -y install git

检查是否已经安装lua,这里我是用yum list lua来检测的,这个命令会显示本地已经安装的lua版本,以及源上的lua版本,如果安装了lua,且lua版本低于5.3,要先卸载lua,再安装5.3版的lua,否则运行不起来示例,示例client.lua前几行就有下面一段代码:

if _VERSION ~= "Lua 5.3" then

error "Use lua 5.3"

end

skynet已经带有lua了,不需要我们再安装,但是这里我还是安装了lua5.3.3,再卸载了低版本之后,我们就来编译并安装新版本的lua(可以不用安装,直接走到获取下一步)

curl -R -O http://www.lua.org/ftp/lua-5.3.3.tar.gz

tar zxf lua-5.3.3.tar.gz

cd lua-5.3.3

make linux test

make install

一、获取源代码

方法1: 通过git将源码clone下来(推荐)

git clone https://github.com/cloudwu/skynet.git

方法2: 直接在github上下载zip包,然后解压到要安装的目录

https://codeload.github.com/cloudwu/skynet/zip/master

二、编译源代码

进入刚刚下载的源码目录(这里我的目录是skynet)。

cd ~/skynet

使用make命令进行编译

make 'linux' # 这里可以是linux、macosx、freebsd,具体使用哪个根据平台。

三、测试

skynet中有一个简单的示例,很适合初学者学习怎么使用skynet。

假设我们现在已经在skynet目录下面了,首先,我们先跑起服务端(这里是运行在前台,按住Ctrl + C 即可停止该服务):

./skynet examples/config

然后,我们打开一个新的控制台,如果是在本地linux主机上,按住Ctrl + Alt + F2/F3/F4/F5/F6打开不同的控制台,Ctrl + Alt + F1 代表默认启动模式,比如是命令行启动的,则打开的是一个控制台,如果是图形界面启动的,则表示切换到图形界面。这里我是命令行启动的,我已经在F1上启动了服务端,现在按住Ctrl + Alt + F2打开一个新的控制台并登录,进入到skynet目录,输入下面的命令,启动客户端:

lua examples/client.lua

我们在客户端输入hello:

hello

Request: 3

RESPONSE 3

result world

服务器给我们返回了world,运行测试通过,环境搭建成功!

你可能感兴趣的:(skynet,mysql)