前言

项目简介

skynet_fly的理念是基于skynet开发开箱即用的微服务框架,旨在大家使用该框架,不会想着需要修改底层源码,而是基于该框架对服务端做一个快速搭建。
skynet_fly持续迭代的原则,尽量向下兼容,不会因向下兼容性而束手束脚,后续考虑使用版本更新日志记录大版本的改动信息。

框架优势

skynet_fly是基于skynet扩展的可以快速开发web,游戏,和需要rpc调用的框架。
使用skynet_fly的好处:

  • 支持不停服更新。
  • 一键生成skynet的配置文件和skynet_fly的配置文件以及配套shell脚本。
  • 对匹配房间类游戏做了gate,ws_gate的基础设施封装以及pb,json协议的支持,开发游戏只需要实现相关业务逻辑。
  • 对redis,mysql,timer,log 使用封装。
  • 基于skynet cluster封装出简单易用的远程rpc调用。
  • 支持服务发现。
  • 支持http服务长连接。
  • 支持http服务路由,中间件模式。
  • 支持jwt鉴权。
  • 内置日志分割。
  • 支持快进时间。
  • 支持orm(数据关系映射)目前适配了(mysql,mongo),数据库可无缝切换。

适合哪些人群

  1. 喜欢lua语言,想用lua开发游戏、网站、后台、API服务等等。

如果你对skynet没有一点点了解,可能使用该框架会有点困难,建议先大概了解学习skynet框架

  1. 对skynet有一定了解,却迷茫于如何架构服务。

对skynet有一定了解,那么上手该框架将会轻松很多。

为什么要开发一个skynet_fly框架?

  1. skynet框架不是开箱即用的,使用skynet开发游戏基本上或多或少都需要对框架做一些修改。

在开源框架当中,大部分好用的框架都是开箱即用的,对新手非常友好。使用skynet如果没有人带路的话,还是挺困难的,想要用的好,得看明白底层代码,然后还需要一些架构能力。
而使用skynet_fly,提供了很多基础设施的支持,架构服务只需要关注实现业务代码,能够更快速的开发迭代。

  1. 使用lua开发网站的框架较少,我想skynet_fly可以做到。

涵曦开发的wlua可以说是实现了lua版本 gin框架。
我把wlua的核心代码嵌入了skynet_fly中,再利用skynet_fly的热更模块机制,可以做到网站服务热更。

框架提供了这么多功能是不是很复杂,很难用?

可以说的核心只是基于skynet开发一套方便构建服务的脚手架,像web服务,集群RPC,还有一些封装,日志分割等等都是附加功能。
可以认为学会使用脚手架的学习使用skynet_fly的必要知识
其他都是附加知识,只需要用的时候来取就行,不需要一股作气全部学完。

文档的食用流程

  1. 基础篇
    介绍skynet_fly如何安装编译skynet_fly、开发流程推荐、如何构建skynet_fly服务、开发规范等等,学习完基础篇,可以说就是入门了。新手流程已经走完了,后续都是刷怪捡装备提升实力了,简直轻轻松松。

  2. 进阶篇
    学习核心功能模块,主要是RPC,远程RPC调用。

  3. 强化篇
    附加功能模块的使用文档,放心食用。


前言
https://huahua132.github.io/2023/02/25/skynet_fly_word/word_1/A_home/
作者
huahua132
发布于
2023年2月25日
许可协议