![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
skynet
文章平均质量分 90
攻城狮百里
学无止境
展开
-
skynet 框架snax源码分析----变量注入
skynet为了简化服务的编写,推出了snax框架,源码里也有一个例子pingserver。这是snax原创文章的第一篇,所以先就分析snax框架里的interface.lua源码,它的实现应用了一个闭包中的upvalue注入技巧。凡是框架都得遵循框架的约定,snax有两个大的约定,一是约定了一组预置的接口init/exit/hotfix;二是accept/response这两组用来编写服务的接口。本文,并不涉及这些,而是谈accept/response是如何注入给snax服务的。snax框架里new一原创 2021-01-08 16:50:56 · 503 阅读 · 1 评论 -
深度学习 skynet —— 总体架构
前言服务端高级架构—云风的skynet用skynet手撕一个万人同时在线游戏skynet是我们游戏服务端的底层框架,当初在技术选型的时候仔细阅读过它的源码,发现它是一个C语言的工程典范。大多数游戏服务端,要么使用C++,要么使用java,使用C是非常少见的。但是skynet通过C和Lua的结合,实现了一个高效的游戏框架,C层没有多余的一堆三方库,只有紧凑的核心结构,提供最核心的消息处理框架;Lua层用来写游戏逻辑,降低了开发门槛。目前skynet在阿里游戏大量使用,据我所闻风之大陆,时下很火的三国志原创 2021-01-06 16:16:45 · 1666 阅读 · 1 评论 -
skynet源码分析之网络层—Lua层
本篇主要介绍在Lua服务里调用skynet网络层底层接口的流程,Lua层的api主要在lualib/skynet/socket.lua,可参考官方wiki https://github.com/cloudwu/skynet/wiki/Socket。通过一个简单的例子说明Lua服务是如何最终调用到网络层底层接口的:local socket = require “socket” local skynet = require "skynet" local function loop(fd)原创 2020-12-25 20:00:06 · 541 阅读 · 1 评论