huahua132 blog
  • 首页
  • 归档
  • 分类
  • 标签

orm表

ormtable function M:new(tab_name)描述 新建表对象参数 tab_name string 作用与数据库的表名 返回值 table obj function M:___FIELD_TYPE(field_name)描述 设置字段 FIELD_TYPE对应字段类型 有 int8|int16|int32|int64|uint8|uint16|uint32|string
2024-06-29
skynet_fly API 文档 > 数据库相关
#skynet_fly_api

orm mongo适配器

ormadapter_mongo function M:new(db_name, db)描述 新建适配器对象参数 db_name? string 对应share_config_m 中写的key为mongo表的名为db_name的连接配置 db? table 可选自己传入连接对象 返回值 table obj function M:set_batch_insert_num(num)描述 设置单
2024-06-29
skynet_fly API 文档 > 数据库相关
#skynet_fly_api

orm mysql适配器

ormadapter_mysql function M:new(db_name, db)描述 新建适配器对象参数 db_name? string 对应share_config_m 中写的key为mysql表的名为db_name的连接配置 db? table 可选自己传入连接对象 返回值 table obj function M:set_batch_insert_num(num)描述 设置单
2024-06-29
skynet_fly API 文档 > 数据库相关
#skynet_fly_api

为skynet_fly新增远程调用方式

前言目前skynet_fly的远程调用方式,是采用了封装skynet的cluster 集群方式,每个连接都会有一个服务端有一个clusteragent 接收代理,客户端有一个sender 发送代理服务。再加上我封装的cluster_server和cluster_client,这样发送端和接收端就分别存在了2个代理服务。也就是说调用一个rpc请求会经过非常多次的打包解包流程。 发送者->clu
2024-05-03
一些想法
#一些想法

详解skynet 频发的重入问题

例子说明我们假设有2个服务,1个用户。银行服务 提供转账。风控服务 对用户进行风控,提供阻止转账取款功能。用户一 用手机转账。 bank_service.lua 1234567891011121314151617181920local account_amonut_map = {} --账户余额local CMD = {}--转账function CMD
2024-03-24
skynet
#skynet_frame

关于skynet_fly_demo的架构设计

架构图 简介skynet_fly_demo是基于skynet_fly框架,开发对战类游戏架构,适用于moba、棋牌类游戏架构。 各服务职责center server 中心服 记录用户账户信息,比如账号,密码,手机号,注册渠道,设备号,平台等等信息。 记录用户创角信息,比如玩家ID,归属大厅服ID等等。 可以记录一些全局唯一的信息,比如登录的公告信息等等。 验证登录服登录。 login serve
2024-02-17
一些想法
#一些想法

关于监听同步模块的封装

为啥需要封装一个监听同步模块?使用skynet开发功能,由于是actor模型,难免会遇到一个服务需要依赖另一个服务的数据的情况,解决这个问题常见的方案有: 封装一个c模块,用于共享数据 优点: API使用简单,get set 即可。 节省内存。 缺点: 编码难度大,风险高,需要处理好多线程编码问题。 需要加读写锁,读取性能不一定高。 lua调用c,没有直接访问lua快。 要用的时候去
2024-01-28
skynet_fly实现思路历程
#skynet_fly实现思路历程

orm

ormentry.lua单条数据条目对象。 常用方法 M:get(filed_name) 函数作用域:M:new 对象的成员函数 函数名称:get 描述: 获得对象指定字段的值 参数: - filed_name (string): 字段名 返回值: value(number or string): 值 M:set(filed_name, filed_value) 函数作用域:
2024-01-28
skynet_fly_api
#skynet_fly_api

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
1…56789…15

搜索

Hexo Fluid
总访问量 次 总访客数 人