E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
skynet
游戏服务器为什么选用Actor模型,《百万在线》给你答案
Actor模型是一种常用的游戏服务端架构模型,在选用
Skynet
、Erlang方案的公司中广泛应用。
hzbooks
·
2023-08-18 17:04
游戏
java
编程语言
人工智能
大数据
【
skynet
】服务调度实验
写在前面
skynet
是一个多线程框架,功能按服务划分,正确区分各个名词十分重要。
tissar
·
2023-08-18 17:04
skynet
skynet
【Mysql 连接报错】
文章目录遇到问题查看用户信息修改加密规则成功连入mysql遇到问题socket:authfailed…/…/lualib/
skynet
/socketchannel.lua:482:errno:1251,
ღCauchyོꦿ࿐
·
2023-08-18 11:41
Mysql
mysql
lua
数据库
【
skynet
】
skynet
之 snax
local
skynet
=require"
skynet
"localsnax=require"snax"localp_calc=nil--初始化函数functioninit()localseed=math.floor
tissar
·
2023-08-17 21:49
skynet
skynet
【
skynet
】
skynet
下载编译
写在前面
skynet
是相当有水准的一个系统框架,但是目前多数资料都是默认读者有一定的经验,对于从零开始的小伙伴来说比较心累。所以看能不能自己做一个从零开始的笔记,不是帮助别人,主要还是帮助自己。
tissar
·
2023-08-17 21:19
skynet
skynet
【
skynet
】
skynet
入门代码
写在前面本文将从零开始,写第一个
skynet
程序HelloWorld。通过HelloWorld可以熟悉
skynet
的运作方式,和了解其api。
tissar
·
2023-08-17 21:19
skynet
skynet
【
skynet
】
skynet
服务间通信
写在前面
skynet
服务之间有自己的一套高效通信API。本文给出简单的示例。文章目录写在前面准备工作编写代码运行结果准备工作首先要有一个编译好,而且工作正常的
skynet
。
tissar
·
2023-08-17 20:47
skynet
skynet
lua5.3中luaL_setfunc设置upvalue的用法示例
www.cnblogs.com/cheerupforyou/p/7192307.html缘起luaL_setfuncs这个函数可以注册c函数到lua,另外还可以设置闭包函数使用的变量upvalue.我没有用过,在云风的
skynet
Aska偶阵雨
·
2023-08-14 15:11
skynet
学习笔记之源代码文件总览
做为核心功能,
Skynet
仅解决一个问题:把一个符合规范的C模块,从动态库(so文件)中启动起来,绑定一个永不重复(即使模块退出)的数字id做为其handle。
tobybo
·
2023-08-12 16:26
skynet
学习
c语言
linux
lua
skynet
网络模块解析
网络模块管理会话管理器的生命周期管理工作模式总结技术点原子数据管道描述符自定义锁epollhalfclose状态SO_REUSEADDRdup(1)opaque前言本文简要拆解和分析
skynet
网络模块的实现
tobybo
·
2023-08-12 16:55
C
skynet
c语言
linux
网络
服务器
skynet
lua业务逻辑的启动--
skynet
.start()
上两篇
skynet
主体流程,
skynet
怎么启动lua文件介绍了
skynet
代码的主体流程,还有怎么启动lua逻辑.我们知道
skynet
业务逻辑都是在lua里写的,这样大大提高了开发效率,而且使热更新成为可能
哈罗_aae9
·
2023-08-12 10:04
2009年fast大会的best paper:《CA-NFS:A Congestion-Aware Network File System》
ACongestion-AwareNetworkFileSystemAlexandrosBatsakisNetAppJohnsHopkinsUniversityRandalBurnsJohnsHopkinsUniversityArkadyKanev
skyNet
AppJamesLentiniNetAppThomasTalpeyNetAppAbstractWedevelopaholist
a7758526
·
2023-08-12 08:45
论文
system
network
file
asynchronous
resources
server
[
skynet
]关于cluster.send没反应
问题代码如下:localcluster=require"cluster"
skynet
.start(function()cluster.send("my_cluster_server","@my_server
吃豆腐不吐豆腐皮
·
2023-06-17 00:54
C++静态库与动态库理解、创建、使用(超详细版本)
本文转自:作者:吴秦出处:http://www.cnblogs.com/
skynet
/目录什么是库静态库Linux下创建与使用静态库Linux静态库命名规则创建静态库(.a)使用静态库Windows下创建与使用静态库创建静态库
X.Dragon
·
2023-06-15 13:58
C+
Linux
c++
开发语言
linux
【从零开始学
Skynet
】实战篇《球球大作战》(七):gateway代码设计(下)
代码如下所示:s.resp.sure_agent=function(source,fd,playerid,agent)localconn=conns[fd]ifnotconnthen--登陆过程中已经下线
skynet
.call
寻水的鱼、、
·
2023-04-19 19:33
从零开始学Skynet
Skynet
linux
服务器开发
lua
【从零开始学
Skynet
】实战篇《球球大作战》(十五):项目问题和改进
1、问题:在客户端发起登录协议后,在登录协议返回之前客户端下线。由于此时agentmgr记录的是“登录中”状态,下线请求不会被执行,除非再次登录踢下线,否则agent会一直存在。这种情况不常出现。解决:方法是让gateway和agent之间偶尔发送心跳协议,若检测到客户端连接已断开,则请求下线。2、问题:agentmgr是个单点,有可能成为系统瓶颈。解决:可以开启多个agentmgr,以玩家id为
寻水的鱼、、
·
2023-04-18 23:22
从零开始学Skynet
skynet
lua
服务器开发
【从零开始学
Skynet
】基础篇(六):MySql数据库安装操作
游戏服务端的另一项重要功能是保存玩家数据,
Skynet
提供了操作MySQL数据库、MongoDB数据库的模块。
寻水的鱼、、
·
2023-04-18 17:28
从零开始学Skynet
mysql
数据库
skynet
服务器
【从零开始学
Skynet
】基础篇(五):简易聊天室
1、功能需求客户端发送一条消息,经由服务端转发,所有在线客户端都能收到,如下图所示:2、代码实现在
skynet
/examples目录下创建main_chat.lua文件,然后把main_echo.lua
寻水的鱼、、
·
2023-04-18 11:11
从零开始学Skynet
lua
Skynet
服务器开发
【从零开始学
Skynet
】基础篇(三):服务模块常用API
1、服务模块
Skynet
提供了开启服务和发送消息的API,必须要先掌握它们。列出了
Skynet
中8个最重要的API,PingPong程序会用到它们。
寻水的鱼、、
·
2023-04-18 09:16
从零开始学Skynet
lua
skynet
服务器
Linux
【从零开始学
Skynet
】实战篇《球球大作战》(十四):agent跨服务器版
至此,我们已完成了《球球大作战》的绝大部分功能,只剩下完善agent,让它和scene服务联动了。1、多个模块一般而言,代理服务会承载很多系统,比如邮件、成就等,此处涉及的代码较多,容易混乱,需划分模块。之前实现的service模块能让服务带有分模块的潜力。新建service/agent/scene.lua用于处理agent的战斗逻辑,只需在init.lua中引入(require)新增的文件,即可
寻水的鱼、、
·
2023-04-18 09:16
从零开始学Skynet
lua
服务器开发
skynet
【从零开始学
Skynet
】基础篇(四):网络模块常用API
游戏服务端要处理客户端请求,作为服务端引擎,网络编程也是
Skynet
的核心功能。
寻水的鱼、、
·
2023-04-18 09:15
从零开始学Skynet
lua
Skynet
linux
服务器
【从零开始学
Skynet
】实战篇《球球大作战》(十二):场景代码设计(上)
场景服务会处理绝大部分的游戏逻辑。新建service/scene/init.lua,开始编写相关代码。1、Ball类场景中包含小球和食物这两种对象,先看看小球的实现。代码如下所示:--球localballs={}--[playerid]=ballfunctionball()localm={playerid=nil,node=nil,agent=nil,x=math.random(0,100),y=
寻水的鱼、、
·
2023-04-18 09:03
从零开始学Skynet
skynet
服务器开发
lua
【从零开始学
Skynet
】实战篇《球球大作战》(十三):场景代码设计(下)
1、主循环《球球大作战》是一款服务端运算的游戏,一般会使用主循环程序结构,让服务端处理战斗逻辑。如下图所示,图中的balls和foods代表服务端的状态,在循环中执行“食物生成”“位置更新”和“碰撞检测”等功能,从而改变服务端的状态。scene启动后,会开启定时器,每隔一段时间(0.2秒)执行一次循环,在循环中会处理食物生成、位置更新等功能。service/scene/init.lua中新增的内容
寻水的鱼、、
·
2023-04-18 09:03
从零开始学Skynet
skynet
服务器开发
lua
【从零开始学
Skynet
】基础篇(九):调试控制台服务
Skynet
自带了一个调试控制台服务debug_console,启动它之后,可以查看节点的内部状态。
寻水的鱼、、
·
2023-04-18 09:31
lua
Skynet
服务器开发
【从零开始学
Skynet
】实战篇《球球大作战》(十一):战斗场景设计
现在的服务端框架有支撑数万玩家的能力,且支持横向拓展(即增加物理机数量),理论上具有无上限的负载能力。下面以《球球大作战》为例,说明怎样使用这套框架。1、战斗流程玩家登录后,玩家可以做些非战斗操作(仿照work示例,可以实现成就、背包、邮件、好友等功能),如下图所示:当点击“开始比赛”按钮时,客户端会发生“进入战斗”的协议。战斗流程如下图所示:服务端会开启很多scene服务,每个服务处理一场战斗。
寻水的鱼、、
·
2023-04-17 15:41
从零开始学Skynet
服务器
Skynet
lua
【从零开始学
Skynet
】实战篇《球球大作战》(十一):测试登录流程
如下代码所示:local
skynet
=require"
skynet
"local
skynet
_manager=require"
skynet
.manager"localrunconfig=require"runconfig"localcluster
寻水的鱼、、
·
2023-04-17 15:41
从零开始学Skynet
skynet
服务器
lua
【从零开始学
Skynet
】实战篇《球球大作战》(九):agentmgr和nodemgr代码设计
agentmgr是管理agent的服务,它是登录过程的仲裁服务,控制着登录流程。agentmgr中含有一个列表players,里面保存着所有玩家的在线状态。首先,在service/agentmgr目录下新建init.lua,然后开始编写它。1、玩家类根据登录流程可知,玩家会有“登录中”“游戏中”和“登出中”这三种状态,代码如下所示:--状态STATUS={LOGIN=2,GAME=3,LOGOUT
寻水的鱼、、
·
2023-04-17 15:40
从零开始学Skynet
lua
skynet
服务器开发
【从零开始学
Skynet
】实战篇《球球大作战》(十):agent代码设计
现在开发登录流程涉及的最后一个服务agent,完成后就可以真正地把框架运行起来了。还会演示agent的单机功能,做个“打工”小游戏。1、消息分发玩家登录后,gateway会将客户端协议转发给agent(流程图的阶段⑨)。新建service/agent/init.lua文件,代码如下所示:s.resp.client=function(source,cmd,msg)s.gate=sourceifs.c
寻水的鱼、、
·
2023-04-17 15:36
从零开始学Skynet
lua
Skynet
服务器开发
【从零开始学
Skynet
】实战篇《球球大作战》(四):分布式登录系统
处理玩家的登录,是服务端框架的主要功能之一。分布式系统涉及多个服务,让它们相互配合不产生冲突是一大难点。1、登录流程分布式服务端的登录功能要处理好如下两个问题:问题一:完成角色对象的构建和销毁。如下图所示:当客户端连接、发起登录时,服务端要创建一个对应角色的程序对象,用以加载角色数据。当客户端掉线时,服务端要保存角色数据,并销毁程序对象。这套框架会为每个客户端创建一个agent服务。如何解决:需要
寻水的鱼、、
·
2023-04-16 11:14
从零开始学Skynet
分布式
skynet
服务器开发
lua
【从零开始学
Skynet
】实战篇《球球大作战》(五):gateway代码设计(中)
1、编码和解码我们来实现两个辅助方法str_unpack和str_pack,用于消息的解码和编码。(1)str_unpack代码localstr_unpack=function(msgstr)localmsg={}whiletruedolocalarg,rest=string.match(msgstr,"(.-),(.*)")ifargthenmsgstr=resttable.insert(msg
寻水的鱼、、
·
2023-04-16 11:14
从零开始学Skynet
skynet
服务器
linux
lua
【从零开始学
Skynet
】实战篇《球球大作战》(三):封装常用的API
1、定义属性新建文件lualib/service.lua,定义模块的属性,service模块是对
Skynet
服务的一种封装,代码如下所示:local
skynet
=require"
skynet
"localcluster
寻水的鱼、、
·
2023-04-16 11:44
从零开始学Skynet
lua
Skynet
服务器开发
【从零开始学
Skynet
】实战篇《球球大作战》(五):gateway代码设计(上)
1、协议格式在写代码之前,我们要先了解什么是协议,协议就是“客户端向服务端发起的登录请求”,那么登录请求是什么样子的呢?这得先从TCP数据流说起,客户端发起的请求,就是一些二进制数据。(1)TCP粘包现象TCP协议是一种基于数据流的协议,举例来说,如果客户端分两次发送“1234”和“5678”这两条消息。服务端可能一次性接收到“12345678”;也可能先只收到“12”,过一会儿才收到“34567
寻水的鱼、、
·
2023-04-16 11:40
从零开始学Skynet
Skynet
服务器开发
lua
如果这篇文章说不清epoll的本质,那就过来掐死我吧!
epoll作为linux下高性能网络服务器的必备技术至关重要,nginx、redis、
skynet
和大部分游戏服务器都使用到这一多路复用技术。
碧俐千仞
·
2023-04-15 11:14
安装支持
skynet
的protobuf
一.下载和安装参考http://blog.csdn.net/linshuhe1/article/details/70186603https://www.owent.net/2017/1470.html使用云风自己写的c版本pbchttps://github.com/cloudwu/pbc.git但是不支持protbuf3.0以上版本使用楼上pbc改版https://github.com/owent
云上听风
·
2023-04-11 14:45
Creator+
skynet
开发棋牌
skynet
虽然是用c写的底层,但是开发过程中,用到c的机会少之又少,完全用lua开发即可。wx15829550992
漂泊的树叶hx
·
2023-04-09 09:41
2019-11-13
Skynet
、Airpark、Abx、GDEX、POSLAJU、NinjaVan、中税率低,价格优惠,时效快!
dpetony
·
2023-04-07 06:31
设计模式-代理模式
代理模式遵循的模式设计原则3.要点a.远程代理(隐藏⼀个对象存在不同的地址空间的事实),虚代理(延迟加载lazyload),保护代理(在代理前后做额外操作,权限管理,引⽤计数等);b.在分布式系统中,actor模型(
skynet
18189298828
·
2023-04-07 02:51
设计模式
代理模式
skynet
设计原理
skynet
设计原理多核并发编程的模型
skynet
Actor创建Actor运行Actor消息定时消息消息是如何推送到ActorActor的调度工作线程流程工作线程权重这个权重的作用是什么?
我也要当昏君
·
2023-04-06 14:45
零声学院Linux
c++
面试简历
笔记
数据结构
【转】HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等
内牛满面~(┬_┬)http://www.cnblogs.com/
skynet
/archive/2010/05/18/1738301.html引言HTTP协议我想任何IT人士都耳熟能详了,大家都能说出个所以然来
weixin_34342578
·
2023-04-04 05:54
c#
网络
操作系统
skynet
原理解析
一、消息队列上图摘自Actor模型解析,每个Actor都有一个专用的MailBox来接收消息,这也是Actor实现异步的基础。当一个Actor实例向另外一个Actor发消息的时候,并非直接调用Actor的方法,而是把消息传递到对应的MailBox里,就好像邮递员,并不是把邮件直接送到收信人手里,而是放进每家的邮箱,这样邮递员就可以快速的进行下一项工作。所以在Actor系统里,Actor发送一条消息
钟离惜
·
2023-04-03 19:47
总结:那些热门的开源游戏服务器框架,还不看你就out了
###
skynet
云风大神的框架这个基
Clank的游戏栈
·
2023-04-01 23:27
游戏开发
laya
游戏服务器
游戏
java
github
区块链
编程语言
2022年4月9日记:Linux服务器开发,Mark,
skynet
重要组件以及手撕游戏项目
────────────────────────────────────┌————————————┐│▉▉♥♥♥♥♥♥♥♥99%│♥❤鱼沈雁杳天涯路,始信人间别离苦。└————————————┘对你的感情正在充电中,请稍侯…────────────────────────────────────推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,
屯门山鸡叫我小鸡
·
2023-04-01 11:32
c++
linux
c++
linux
skynet
框架学习,踩坑。
1、服务器下搭建
Skynet
框架首先,安装必要的编译环境以及git。
无名君丶
·
2023-03-30 21:58
成长史
服务器
Skynet
Skynet
服务器框架系列教程,
Skynet
框架之菜鸟手册.pdf
Skynet
框架之菜鸟手册.pdf/cloudwu/
skynet
Skynet
框架之菜鸟手册一个轻量级的网络游戏服务器Ver0.1.1wangdali2014-041/27/cloudwu/
skynet
2
漫姐
·
2023-03-30 21:18
Skynet服务器框架系列教程
skynet
初探
skynet
是云风团队发布的一个开源的服务器框架。底层采用C编写,逻辑层通常用lua。非常适合作为游戏的服务器框架。
weixin_30375427
·
2023-03-30 21:15
lua
git
c/c++
手把手教你从零跑一个
Skynet
一、前言最近,我在搞服务端的
skynet
框架,看看以后自己做些作品(
skynet
框架服务端+Unity客户端)。
此时一位网友路过
·
2023-03-30 21:44
csdn
其他
c++游戏服务器框架
c++游戏服务器框架
skynet
是一个开源的,轻量级的,为在线游戏服务器打造的框架
skynet
muduo是一个基于Reactor模式的C++网络库muduoboostasio是一个异步的网络框架官网:http
lucky九年
·
2023-03-30 20:30
c++
服务器
c++
游戏
skynet
入门笔记
入门观看博客笔记:博客笔记:第五篇关于服务别名别名注册与查询接口:在
skynet
中,服务别名可以分为两种:一种是本地别名,本地别名只能在当前
skynet
节点使用,本地别名必须使用.开头,例如:.testalias
原来只是一阵风
·
2023-03-30 20:17
lua
开发语言
游戏
接触
skynet
框架7个月
不知不觉用了
skynet
框架7个月了,对于
skynet
的掌握程度,自我评估在80%,于我来构建以
skynet
框架为平台的应用,问题不大,这个评估来源于近7个月736次git提交,以及从业多年的经验。
HERO_1
·
2023-03-30 20:47
skynet
lua
c语言
基于
skynet
设计游戏服务端框架
skynet
并不是一个开箱即用的服务端框架,游戏后端在开展业务时,需要根据自身业务特点,合理设计相应的服务端框架。在这里我根据自身的设计目标,写下各方面的选择与取舍。
蓝-萧
·
2023-03-30 20:40
服务器开发
游戏
数据库
架构
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他