github.com/lxzan/gws 在 v1.8.0-rc2 更新中, gws 实现了上下文接管和可配置的滑动窗口大小, 至此 WebSocket RFC 7692 全部特性都得到了实现. 连续发送相似内容的场景,...
仓库地址 github.com/lxzan/memorycache 简介 极简的内存 KV 存储, 由hashmap和heap实现, 没有做GC优化.它的读取效率为 O(1), 写入效率为 O(logN).缓存淘汰策略: Set 方...
前言 go项目常用viper进行配置管理,本文记录一下在读取配置文件时踩得坑。 踩坑 正常启动项目,和在dao层做单元测试,都使用同样的初始化函数,但是在单元测试调用初始...
分享一个个人开发的websocket压测工具: wsbench提供IOPS, P50, P90, P99等指标支持导出压测结果到JSON文件, 配合脚本生成图表 语言环境 gonodejs 安装依赖 npm install p...
花了小半年开发了一个 AI 套壳 APP ,这是我本人第一次尝试开发 APP ,现学现做,投入了大量的时间和精力,然而大势已过,加上国家对 AIGC 类 APP 的管控越来越严格,APP...
[图片] Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,基于 ISO/IEC 29500、ECMA-376 国际标准。可以使用它来读取、写入由 Microsoft Excel、WPS、Ap...
命令 含义 ./main.exe 直接启动 ./main.exe -d 守护进程启动 ./main.exe stop 停止进程 ./main.exe restart 重启进程 ./main.exe reload 平滑重启
在Go语言中,实现计数器可以通过使用不同的机制和数据结构来实现。以下是几种常见的计数器实现方法: 1 基于原子操作的计数器:Go的sync/atomic包提供了原子操作,可以用...
[TOC] 代码地址:github.com/buexplain/netsvr netsvr网关进程,是websocket服务器,运行在Linux虚拟机内,启动后的初始内存:19KiBbusiness业务进程,是模拟业务逻辑的...
仅引入 golang.org/x/net/proxy, 无其它依赖, 代码示例如下: package main import ( "crypto/tls" "github.com/lxzan/gws" "golang.org/x/net/proxy" "l...
目前 Go 圈有很多款异步的网络框架: github.com/tidwall/eviogithub.com/lesismal/nbiogithub.com/panjf2000/gnetgithub.com/cloudwego/netpoll……. 排名不分先后。 这里...
很多普通开发者, 甚至库的作者, 没有意识到 flate 压缩算法内存占用过高的问题, 一个压缩器, 占用内存超过了 640KB !!! package main import ( "compress/flate"...
这里websocket package用的是 gws , 只需要构造标准库的*http.Request和http.ResponseWriter并实现http.Hijacker, 便能复用代码升级websocket协议, 完整代码如下: packa...
[图片] Go版本1.18 Go1.18有一个新函数TryLock(作为对互斥锁sunc.Mutex与读写锁sync.RWMutex的补充),它允许开发者在非阻塞模式下获取锁。如果锁已被获取,该函数将简单...
前言 最近项目开发和网卡等内容做了一些交道。遇到了一些常见的操作。比如 IP/CIDR 与 ip和netmask的相互转换,IP/CIDR 转换为IP段形式以及转换回来,判断某IP是否在一个...
社交账号:
我要举报该,理由是: