watch_syn.lua 监听同步机制 watch_syn.luasever M.new_server(CMD) 函数作用域:M 对象的成员函数 描述: 创建一个发布者对象,需要在代码load中创建好。 参数: - CMD (table): 模块的CMDtable 返回值: server_obj(table): 发布者对象 为什么需要传递CMD,因为发布者需要创建watch和unwatch两个接口,还有如果是热更服务还 2024-01-28 skynet_fly_api #skynet_fly_api
定时器的使用 timer.lua对skynet的定时器做了基础封装,提供了注销,延时,循环次数,获得下次触发的剩余时间等等功能。 注册 new(expire,times,callback,…) 函数作用域:M 对象的成员函数 函数名称:new 描述: 创建一个定时器对象 参数: - expire (number): 过期时间 100等于1秒 - times (number): 次数,0表示循环触发 2024-01-21 skynet_fly_api #skynet_fly_api
关于skynet_fly 决定web路由工具使用的测试 测试对象 lua-rax lua-radix-router 测试结果lua-radix-router TEST CASE Router number nanoseconds / op QPS RSS static-paths 100000 0.352315 ns 2838369 74.60 MB simple-variable 100000 1.403398 ns 712 2024-01-14 skynet_fly实现思路历程 #skynet_fly实现思路历程
可热更模块的启动配置项 共享配置share_config_m mongo mongo 连接配置 mysql mysql 连接配置 redis redis 连接配置 frpc_server frpc_server 连接配置 server_cfg 服务环境配置 svr_id 集群服务唯一ID(同类服务唯一) 默认1 thread 使用线程数 默认 8 logpath 日志存放路径 默认 ./logs/ l 2024-01-14 skynet_fly_api #skynet_fly_api
季度更新日志2025-1 2025-3 最终还原perl环境 pb 打包sharedata数据应注意先copy perl没用还原,会影响到系统其他软件正常工作。 pb打包用sharedata共享的table时,数据打包不进去。怀疑是因为sharedata是skynet封装的c object,pb底层无法识别访问,通过先深拷贝sharedata表,再传入pb打包可以规避此问题。 优化sharedata_service 热更支持加载新的文 2024-01-09 季度更新日志 > 2025 #季度更新日志
远程rpc调用 关联文件 frpc_client.lua 最常用API M:new(svr_name,module_name,instance_name) 创建调用对象。 参数: * svr_name(string) 访问节点名称。 * module_name(string) 模块名称,需要send或者call通信的模块名称(相当于一级索引)。 * instance_name(string) 实例名称 2024-01-07 skynet_fly_api #skynet_fly_api
内部rpc调用 关联文件 contriner_client.lua 最常用API M:register(…) 注册访问。(没有注册访问的,去创建对象访问都会报错),这个服务start之后就不能再调用。 参数:module_name列表。 M:new(module_name,instance_name,can_switch_func) 创建调用对象。 参数: * module_name(string) 2024-01-07 skynet_fly_api #skynet_fly_api
关于增加skynet_fly orm_table_m 可热更服务 前言因为orm在多个服务持有的时候,没法保证一致性,所有需要把orm封装到独立服务中,其他服务通过rpc调用,为了使用便利性,封装了通用的orm可热更服务orm_table_m.lua和rpc调用模块orm_table_client.lua。 orm_table_m.lua转入的config需要提供一个配置项orm_plug,它是lua模块文件。需要提供init,call两个方法。 init() 2023-12-24 skynet_fly实现思路历程 #skynet_fly实现思路历程
关于增加skynet_fly orm数据关系映射 ORM简介ORM(Object-Relational Mapping,对象关系映射)是一种编程技术,用于在不同类型的系统之间转换数据。在关系数据库和面向对象编程语言之间,ORM 为数据的转换提供了一个桥梁。这种技术允许我们使用编程语言中的对象表示和操作数据库中的数据,而不必编写底层的SQL代码。 ORM 的核心优势在于抽象化和自动化数据存储的细节,使开发者可以专注于业务逻辑,而无需关心数据库操作的 2023-12-24 skynet_fly实现思路历程 #skynet_fly实现思路历程
新增可热更服务 规范统一写在module的文件夹,好处就是review代码时能比较清晰的分清那个文件是可热更服务,还是lua模块文件,还是skynet的普通服务(skynet普通服务建议都放在sevice文件夹下)。 示例1234567891011121314151617181920212223242526272829local CMD = {}function CMD.start(confi 2023-12-17 skynet_fly_api #skynet_fly_api