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

关于skynet_fly的一键构建服务配置

为什么要做这个? skynet启动用的skynet_config新增一个目录都要去增加一个path并重启,我就想有没有办法不用手写path,用脚本写。 热更服务的path如果有新增模块引入,之前没有埋伏路径,增加了新路径,岂不是会找不到,很难受,这样。 新增一个服务模块每次都有手写一个config好麻烦。 热更服务需要通过curl连接 debug_console服务去执行热更。 所以这个事情必须
2023-06-30
skynet_fly实现思路历程
#skynet_fly实现思路历程

关于skynet做服务热更新

为什么要做热更新那当然是因为产品需要更新功能,但是服务功能模块又可以有用户在使用,又不想停止服务又想更新功能,就有了需要热更新的需求。无状态的服务非常好更新,例如查询服务,直接重启服务也可以,只是出现短暂的服务不可用。更新难的是有状态的服务,不能直接重启,重启就可能出现数据丢失了。 热更方式 在原本的lua虚拟机中更新这种方式通过重新加载读取_G.package.loaded中的文件,去覆盖旧_e
2023-05-22
一些想法
#一些想法

平衡二叉树的lua实现

特征 有序性 所有结点都是左子树比自己小,右子树比自己大。 平衡性 所有结点左右子树高度差绝对值小于等于一。 唯一性 结点key唯一,不能重复。 优势 适合有序性数据存储 二叉树的天然有序性 适合范围查找 基于有序的范围查找时间复杂度为o(log n) + m 缺点 内存地址分散 每个结点都是独立数据块,存储地址分散,操作速度非常依赖存储设备的寻址速度,基于机械硬盘运行将会非常慢。 操作时
2023-05-21
数据结构
#数据结构

链接记录

链接记录 床长人工智能教程https://captainbed.vip/login/ https://datuchat.com/
2023-05-21
#笔记

网络七层模型

7层 物理层,数据链路层,网络层,传输层,会话层,表示层,应用层 5层 物理层,数据链路层,网络层,传输层,应用层 4层 网络接口层,网络层,传输层,应用层 物理层 传输介质,网线,光纤数据链路层 保持数据的可靠传输网络层 数据路由,ip地址传输层 tcp,udp协议,数据打包会话层 建立与管理应用程序之间的通信表示层 解决不同系统的兼容问题应用层 h
2023-05-14
socket
#socket

select,poll,epoll 对比

最大链接数 select 有上限FD_SETSIZE设置 poll 链表实现,没有上限 epoll 没有上限 fd剧增带来的io效率问题 select 轮询机制, o(n)复杂度 poll 轮询机制,o(n)复杂度 epoll 事件通知机制,o(1)复杂度 消息传递方式 select 完整拷贝 poll 完整拷贝 epoll 通过内核与用户空间共享内存来实现 工作方式 select LT p
2023-05-14
socket
#socket

tcp知识整理

三次握手过程 第一次握手 客户端发送建立链接请求报文SYN携带(SYN = 1,seq = x)后,进入SYN_SENT状态。 第二次握手 服务端接收到SYN报文后回复SYN+ACK报文携带(ACK=x+1,SYN=1,seq=y),进入SYN_RECV状态。 第三次握手 客户端收到SYN+ACK报文后回复ACK报文携带(ACK=y+1,
2023-05-14
socket
#socket

redis 知识杂谈

redis有哪些好处? 数据类型丰富,提供了string,list,hash,set,zset五种基础类型,还提供了stream,geo,bitmap扩展类型string数据结构:简单动态字符串list数据结构:双向链表,压缩列表hash压缩列表,哈希表zset压缩列表,跳表set哈希表,整数数组 数据可以设置过期时间 支持事务 支持脚本化运行 哈希冲突解决 少量的冲突redis使用链式哈
2023-05-13
redis
#redis

skynet c层的整体架构

架构图上图是skynet框架的核心的架构图,看完整体我们再去细看内部实现细节,架构图就像一张完整的地图,我们需要由面到点深入到图中,才能真正的了解吃透skynet,使用中才知道要注意哪些细节。现实中了解地图中的一个地方自然是实地去走一走。了解代码框架的话当然是结合源码和文档(skynet github 上的wiki文档就写的非常不错)。源码不止看了一遍,所以基本上都是n探,探多了就清楚自己哪些地方
2023-05-13
skynet
#skynet_frame

actor模型在sknyet中的应用

简介Actor模型由状态(State)、行为(Behavior)和邮箱(MailBox,可以认为是一个消息队列)三部分组成: 状态Actor模型中的状态指Actor对象的变量信息,状态由Actor模型自己管理,避免了并发环境下的锁和内存原子性等问题。 行为Actor模型中的计算逻辑,通过Actor模型接收到的消息来改变Actor模型的状态。 邮箱邮箱是Actor和Actor之间的通信桥梁,邮箱内部
2023-05-07
skynet
#skynet_frame
1…910111213…15

搜索

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