- 博客(853)
- 资源 (135)
- 收藏
- 关注
原创 记一次差点通宵的bug(内网没bug,外网有bug)
那么问题定位了,组队这个进程,内网只开了一个,外网开了8个,这是问题的关键。其次调试奇怪bug应该第一想到代码内网外是否一致,虽然遇到奇怪问题没花时间去研究直接问了同事,也快速解决了,但是自己也要快速定位外码一致性问题,是否提交后忘了更新。那么掉线后,为什么就进入到其他进程了,玩家点击准备这个包是在网管转发的,网管转发的时候会根据队伍id发到对应的进程,断线后玩家的队伍id为0,于是就随便发给了一个进程。2.第二个奇怪的bug.队员断线重连后,点击准备找不到队伍,打印队伍列表长度,发现是0,根本没有队伍。
2025-04-03 10:56:14
282
原创 改bug制造bug...
故事背景,我看打印输出有报错,于是加了一个容错。然后出现bug了,一个副本的机器人没了。反思问题所在,当我们去改别人的任何代码,都可能会出现bug,因为确实不知道别人的设计。引出了另外一个奇怪的问题,就是他的代码在别人的电脑或其他环境是不会报错的。我当然是看到报错才去修改的,这代码在我这里确实报错了。怎么说呢,这样改并不能完全避免产生新的bug,比如本来别人只是报错了,属于正常报错。这个确实是处理了容错,即使上面空也不会报错,我做过实验。bug肯定是我改出来的了,我们应该怎么避免这种情况。
2025-03-26 11:06:32
343
1
原创 通过deepseek学习lua写网页
HTML表单通过POST方法提交数据到服务器。服务器端使用Lua处理POST请求并返回响应。需要一个支持Lua的Web服务器(如OpenResty)来处理请求。这种方式适用于需要在Web应用中嵌入Lua逻辑的场景。提问2:content_by_lua_block 改 content_by_lua_file如果你想将 Lua 代码从改为,可以将 Lua 代码提取到一个单独的.lua文件中,然后在 Nginx 配置中引用该文件。适用于直接在 Nginx 配置中嵌入少量 Lua 代码。
2025-03-13 11:51:36
1248
原创 lua写网页(OpenResty)
OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。简单地说OpenResty 的目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模。一般呢,我也没看这个lua写的网页的代码,但是现在要求另外一个项目也要这个,于是研究了下,发现是OpenResty框架。故事背景,公司有一个项目居然是用lua写的网页,我是真第一次遇到用lua写网页的,以前遇到的都是php.
2025-03-12 14:56:17
439
原创 分享一个skynet包大小的bug
故事背景,一个同事接手了一个项目,写mysql的时候,数据小可以写。16M一个字段写不了。开始是怀疑数据库的设置问题。或者是操作数据库封装的接口限制了。最后是skynet的包限制了。一个数据包最大16m,skynet框架没有对数据包拆包粘包。
2025-03-12 11:00:39
86
原创 vscode自定义背景色
故事背景,vscode默认的是黑色,windows默认的是白色,白色看久了,看黑色看不清楚。以前写C++灰色习惯了。"editor.background": "#C0C0C0", // 银灰色的十六进制代码。"activityBar.background": "#C0C0C0" // 活动栏背景色。"statusBar.background": "#C0C0C0", // 状态栏背景色。"sideBar.background": "#C0C0C0", // 侧边栏背景色。按下 Ctrl + , 打开设置。
2025-03-12 10:35:46
445
原创 ssh无法使用22端口没监听
故事背景,装了一个windows商店的ubunto子系统,但是ssh无法使用,22端口一直没开启。如果输出是 init 或其他内容(如 upstart),说明系统没有使用 systemd。如果输出是 systemd,说明系统使用了 systemd,问题可能出在其他地方。
2025-03-12 10:10:18
148
原创 skynet-src/atomic.h:25:23: 致命错误:stdatomic.h:没有那个文件或目录
故事背景,又接了一个新项目,要搞开发环境啊。skyent的框架。ubuntu已经跑起来了,但是内网是centos的跑不起来。只能怀疑是环境问题了,想重新编译源码重新生成文件。skynet-src/atomic.h:25:23: 致命错误:stdatomic.h:没有那个文件或目录。skynet-src/atomic.h:25:23: 致命错误:stdatomic.h:没有那个文件或目录。fatal error: stdatomic.h: 没有那个文件或目录。看了下资料是gcc版本太低了。
2025-02-08 15:40:22
289
原创 centos虚拟机迁移没有ip的问题
故事背景,我们的centos虚拟机本来是好好的,但是拷贝到其他电脑上就不能分配ip,我个人觉得这个vmware他们软件应该搞定这个啊,因为这个问题是每次都会出现的。到此并不一定完全解决。只是命名能用了,但是主机和虚拟机不一定能ping通。
2025-02-07 10:25:16
457
2
原创 lua下标是可以从0开始
故事背景,策划搞了一个功能配置表,我看居然是0开始的,功能也正常。于是测试了下,还真的可以。网上看了资料确实可以,但是也有需要注意的问题。
2025-01-15 10:32:00
471
原创 lua除法bug
故事背景,新来了一个数值,要改公式。神奇的一幕出现了,公式算出一个非常大的数。排查是lua有一个除法bug,1除以大数得到一个非常大的数。需要用lua的除法,建议封装一下函数,不然出现神奇的bug。
2024-11-25 18:05:29
459
原创 lua判断子串,字符串替换,字符串分割
故事背景,需要在聊天做一个gm命名,如果输入的字符串带有'@',则根据后面的参数调用函数。匹配函数的时候需要去掉"@"。字符串还需要切割成函数名和参数。
2024-11-08 15:03:59
467
原创 宝塔反向代理wss
项目skynet目前是ws的,微信小程序必须要求wss.方案1,skynet本身支持wss,方案2,skynet还是ws,用反向代理。添加站点,域名是wss代理用的域名,目录就default测试网站就好。最好先不要设置端口,用默认80端口,为什么呢,因为有端口申请证书申请不到。我用的方案1,方案2具体正确的配置是怎样的要各位自己尝试。宝塔是支持反向代理的。宝塔的反向代理也有2个方案。证书申请过了,添加端口,然后设置反向代理。直接点击方向代理设置。
2024-10-31 10:23:08
423
原创 php二维数组,尾部插入
故事背景,要根据账号知道玩家在哪些服有角色,需要在数据库账号表查询角色列表返回给前端。需要处理二点,第一前端可能要角色等级,但是账号表没有角色等级,那么需要查询两个表返回给前端;第二前端要的字段命名和数据库的不一致,需要二次处理。
2024-10-29 10:01:12
175
原创 根据 *.proto文件生成 *.pb文件。
故事背景,根据 *.proto文件生成 *.pb文件。需要批处理遍历文件夹下的所有文件,需要获得所有文件名。%%i 获得文件名,包括扩展名。%%~ni 获得文件名,不包括扩展名。
2024-10-23 10:15:08
261
1
原创 xshell 免费版本
3.ssh工具一般是 SecureCRT 和xshell,两款都是收费软件,下破解版经常被骗。同事给了正规免费版本的xshell。故事背景是这样的,没错又换工作了,不过应该是一个靠谱的公司,靠谱的团队。开发环境是 ubuntu子系统+skynet+xshell+vscode。4.xshell装好了,还是连不上ubuntu.要设置密码改下配置。1.装子系统的时候遇到勾选重启失效,解决方案是重装了一个系统。xshell 左边的会话管理器不见怎么办?5.新装的看不见回话管理器,这个简单。ubuntu配置ssh。
2024-10-21 15:06:02
622
原创 游戏中的唯一id生成,防止合服id重复
故事背景,接手了一个烂代码,合服的时候大量id重复。比如道具id重复,你把道具表的id改了,但是其他表用了道具id,其他表你也要改。如果其他表用的道具id不是单独一个字段,是一个复杂的数据呢,你怎么改。我奇怪的是他用了长度19位,float都装不下这么长的数据,居然重复的。生成出来大概是这样的 7293710237208084482,这么TM的大,lua的float都装不下.难受的是不同服生成出来的id,肉眼可见的回重复。服务器id4位,进程id 1位,时间10位,一共长度15位。
2024-09-13 11:51:08
1244
3
原创 mysql开启远程访问
如果步骤3报错 1045 - Access denied for user 'root'@'192.168.0.109' (using password: YES)我的解决方案,是直接上宝塔新增一个账户,然后给权限。个人建议mysql可以用宝塔自动下载安装。3.本地先连上去命令行修改远程访问权限。2.ping端口确定数据库能ping通。1.关闭防火墙,确保ip能ping通。
2024-09-05 14:46:00
795
原创 宝塔管理面板里防火墙开关无法打开 ERROR: Couldn‘t determine iptables version
新版的宝塔不开防火墙,不能开端口,很恶心。
2024-09-04 20:32:25
411
原创 shell脚本定时重启游戏服务器
背景故事:入职了一套烂代码。内存泄露很严重,改不动,解决方案就是每天凌晨4点重启一次,技术上是共享内存,实时修改的,重启不会丢数据。3.重启本机所有服脚本 sg_all.sh。2.重启服务器脚本 new_sg.sh。1.启动服务器脚本 start.sh。4.定时重启脚本 keep.sh。
2024-09-04 15:26:29
505
原创 一个数据库查询的结果,作为另一个数据库查询的条件
最好是log表查询的用户uid结果,作为用户表查询where的条件。目前log表和用户表不是同一个数据库。通过实践证明是可行都,下面是操作语句。事情是这样的一个误操作,给一个用户发邮件发成了所有用户。第一步是把还没领取的邮件删除,第二步是已经领取了都要扣除。比较笨的方法是去log表查询到用户uid, 然后用uid一次次的去用户表查,这样处理效率太低,数据量大无法处理。领取邮件是有log表,先要从log表查询领取邮件的用户uid,然后用uid去用户表修改数据。把两条不同数据库的查询语句合并成一条。
2024-08-17 12:25:36
286
原创 protobuf2.5升级protobuf3.14.0
这个升级搞得心力憔悴,我VS2010升级到了VS2017,所有的库都要编译一下,想着顺便把其他的三方库也升级了。搞了好几天,才升级完,因为不仅要搞windows还要搞linux版本各种库的升级。hpsocket的升级,jsoncpp的升级,lua的升级等最近也有更新,打算升级VS的可以顺便看看。
2024-07-28 05:27:00
399
原创 Makefile 如何将生成的 .o 文件放到指定文件夹
研究了不少文章,我行通了一个,但是也不全,目前只能适用当前文件夹,如果源文件有子文件夹处理不了,还得继续研究。很多人说编译完把O文件移动走或者直接删掉。我想说的是不符合我的要求,移走或者删除O文件,每次都要全部重新编译。linux Makefile 如何将生成的 .o 文件放到指定文件夹。makefile 替换文件扩展名 patsubst。makefile 隐藏文件扩展名 basename。去掉window字符 dos2unix。3、patsubst :替换通配符。2、notdir : 去除路径。
2024-07-27 22:09:39
887
原创 C++编译jsoncpp库
(1).工程(Project)->属性(Properties)->配置属性(Configuration Properties)->c/c++->代码生成(Code Generation)->运行时库(Use run-time library)->多线程调试DLL(/MDd)(Multithreaded DLL/Debug Multithreaded DLL)如果出现 error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”。
2024-07-26 23:47:12
802
原创 判断国内ip
{"code":200,"msg":"success","data":{"address":"中国 重庆 重庆 电信","ip":"183.69.129.158"}}'
2024-07-02 09:49:46
466
1
原创 /lib64/libstdc++.so.6: version `CXXABI_1.3.8‘ not found (required by zl/MonitorServer)
如果你gcc版本确实太低,参考连接升级。电脑上有正常的版本,重新链接以下就ok。
2024-05-24 16:29:01
522
原创 不定长int的读写
if ((data_first & 128) == 128 ) // 10000000 判断最高位是否是1。// 01111111 第一个字节只取6bit。//第一个字节的最后一位是1表示-1。
2024-04-29 15:12:44
311
dpqServer.zip
2020-10-25
dlsSqlDb2020-10-25.zip
2020-10-25
dlmServer2020-10-25.zip
2020-10-25
Websocket.zip
2020-10-19
libco文档以及代码.zip
2020-10-17
curlpp-0.8&&curl7.6.zip
2019-12-05
VSCodeUserSetup-x64-1.40.0-insider.zip
2019-11-09
babun-1.2.0.zip
2019-11-08
C++写的高效率排行榜功能 rank.zip
2019-08-29
封装后的C++读取json库
2019-08-20
Navicat Premium 12.zip
2019-07-10
HP-Socket网络通信框架开发指南.zip
2019-01-22
HP-Socket-master.zip
2019-01-22
intech二面:(全是选择题)
2019-01-17
md5加密解密 string Md5Encode::Encode
2017-09-28
yum_rpm....
2017-06-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人