设为首页 收藏本站
查看: 833|回复: 0

[经验分享] skynet 初探

[复制链接]

尚未签到

发表于 2017-6-23 10:18:53 | 显示全部楼层 |阅读模式
  skynet是云风团队发布的一个开源的服务器框架。
  底层采用C编写,逻辑层通常用lua。非常适合作为游戏的服务器框架。
  学习skynet,可能涉及到操作系统,window,linux,游戏服务器等方方面面的知识,是一个不可多得的开源项目。
  作为菜鸟的希望把学习的过程记录下来,无论对于面试和工作都有莫大的帮助。
  
  官方的指南 https://github.com/cloudwu/skynet/wiki/GettingStarted
  
  今天第一篇,首先来搭建skynet。分为以下四个步骤:
  1.ubuntu
  2.samba
  3.git clone源码
  4.build skynet
  
  1.ubuntu
  官方推荐使用ubuntu作为开发skynet的环境,也有社区的同学提供了window版,但未知问题较多。
  新手还是使用官方推荐的ubuntu好了。首先要安装一个vmware虚拟机,再下载ubuntu的最新iso镜像。
  对于程序猿来讲小case啦,忽略不讲。
   DSC0000.png
  
  2.samba
  既然用到lua语言开发,我还是习惯使用sublime作为编辑器开发。而且以后打算用quick-cocos-2d或者window api作为客户端,需要一个linux和windows交互共享的方法。
  samba是一个可以提供windows和linux共享的软件。因此需要搭建samba服务器环境。这里也略过不表。网上超多教程。搭建好之后,在ubuntu查看ip地址,在windows添加网络,就可以linux和windows互访了。
   DSC0001.png
  3.接着我们从github上clone源码
  git clone https://github.com/cloudwu/skynet.git
   DSC0002.png
  4.最后开始搭建skynet
  make linux
  简单的编译。总共遇到了下面几个问题:
  4.1 readline.h找不到
  其实是没装lua。需要安装lua5.3以上版本。
  4.2 jemalloc找不到
   DSC0003.png
  需要安装jemalloc。jemalloc是一种内存分配算法。区别于c语言里的malloc,效率更高。
  安装jemalloc的过程中提示缺少m4。m4是一个宏处理器。
  4.3 缺少autoconf
  autoconf是一种自动生产Makefile的软件。
  这里插一个知识。ubuntu安装软件有三种方法。apt-get,dpkg安装deb和make install安装源码包
  a.apt-get install xxx。需要联网。上面的lua安装用到此方法。
  b.dpkg -i package.deb。从下载好的deb包安装。
  c.编译安装源码包。通常4个步骤,从官网下载压缩包
  解压 tar -zxvf xxxx
  配置 ./configure --prefix=安装路径
  编译 make
  安装 make install
  上面的jemalloc,m4和autoconf都是源码包安装法。其中设置安装路径--prefix时还要考虑环境变量$PATH,需要安装到环境变量路径中,或者自己增加环境变量。
  $PATH 可以查看当前的环境变量
  安装好jemalloc,autoconf,lua等支持后,再在skynet目录下make linux,则算编译成功。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-387201-1-1.html 上篇帖子: Spring Cloud 开门见山 下篇帖子: SpringCloud微框架系列整体模块梳理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表