
服务器
文章平均质量分 57
zhenmu
这个作者很懒,什么都没留下…
展开
-
[IAP] 最近IOS内购伪造防刷单问题,bid(BundleID)能被伪造,
苹果WWDC23对verifyReceipt API 弃用,并提供了相应的兼容迁移建议,本文还介绍了receiptData 旧收据伪造问题和苹果新推出的 App Store Server Lib。这 2 个 API 获取的 receiptData 凭证,经过苹果 verifyReceipt API 解析后的格式是不同的。目前发现, iOS 7 之前的旧凭证 API,黑产能伪造票据中的 Bundle ID!苹果 App Store 支付弃用 API 接口兼容和解读 - 掘金。转载 2023-08-01 10:16:34 · 1499 阅读 · 0 评论 -
【C++】 linux内存分析工具对比小总结,valgrind、gperftools、ASAN
valgrind 外挂式,但大项目太慢不推荐,ASAN速度快但要单独编译版本, gperftools 可外挂式 分析cpu性能和内存性能比较方便。原创 2023-03-28 17:04:11 · 3513 阅读 · 3 评论 -
C#实现不规则图形分割成多个矩形组合可视化工具, 核心是一个找最大内切矩形的算法
有个项目,有些不规则区域,想转成尽可能少的小矩形。3.动态生成bitmap,绘制点和矩形,显示到pictureBox上。2.控制pitctureBox缩放(ctrl+滚轮)和移动。1.图片的加载和像素解析,绘制到pictureBox上。4.找出属于不同区域的相连的不规则图形对应的数据块。6.拆分剩余上下左右4个区域,递归找到更小的矩形。,并扩展了一下,把四周剩余区域切割递归找矩形。5.不规则图形数据查找最大内嵌矩形算法。...原创 2022-07-18 15:58:28 · 2201 阅读 · 2 评论 -
关于用编程 取本地时间时,会有夏令时的坑,
[zhenmu@zhenmu ~]$ TZ='GST-1'; export TZ[zhenmu@zhenmu ~]$ date +'%Y-%m-%d %H:%M:%S' -d @15837120002020-03-09 01:00:00[zhenmu@zhenmu ~]$ date +'%Y-%m-%d %H:%M:%S' -d @15923520002020-06-17 01:00:00[zhenmu@zhenmu ~]$ TZ='Europe/Berlin'; export TZ[zhe.原创 2020-06-04 16:25:58 · 1273 阅读 · 0 评论 -
linux下简单的 程序后台运行、查看、关闭、监控 的shell脚本, 记录一下
centos下,比较通用一点的几个shell脚本记录一下1. 后台运行:back_run.sh运行方式sh back_run.sh game_server会生成一个 xxx.pid文件exe=$1nohup ./${exe} 0 0 >> log/${exe}.clog 2>&1 &echo $! > "${exe}.pid"2. 查看运行情况, 查看对应进程的pidinfo.sh#!/bin/bashcur_...原创 2020-06-04 10:42:05 · 1298 阅读 · 0 评论 -
记录linux下 分析线上进程的函数开销情况 perf top -p xxxx
perf 工具的基本使用:http://blog.itpub.net/24585765/viewspace-2564885/几个关键的选项$perf top -h-p, --pid <pid> profile events on existing process id-g enables call-graph rec...转载 2019-11-07 10:56:12 · 1282 阅读 · 0 评论 -
lua里实现类似宏定义,动态生成代码
其实就是用了 lua 的 loadstring 功能。1.把需要动态生成的代码拼接成为一个字符串 存放到 str里,2. loadstring(str) (注:loadstring 这个只是解析了代码,需要执行一下才会生效)所以一般写成:或者:示例:自己封装一个类似宏的函数, 我这里是定义了一个 register_msg 用来处理接收到的 协议 统一打印出来。 code 内容 相当于一个xxxx.lua文件,文件内容为执行 loadstring(code)() 后相当于原创 2017-02-24 21:13:16 · 11764 阅读 · 2 评论 -
跟踪变量被哪段代码改掉,gdb watch 断点调试时,却无法watch
服务器实际运行时, 某个对象的某个变量不知道啥时候被改掉了。 用valgrind查了 ,没有内存越界, 那就是逻辑上有问题。这种情况 gdb 的 watch功能就非常好用。 它能检测内存中的值被改了,就会自动断点。现在能访问到这个变量的地方随便断个点, 断点后 watch一下这个变量地址中的内容。但实际使用中 watch m_sid原创 2017-01-09 11:51:12 · 4325 阅读 · 1 评论 -
jsoncpp 执行效率优化,非常规极限优化,适合linux下, 效率几乎提高50%以上
这是2年多前, 一个游戏服务器项目要上线了,协议消息处理和数据存放都基本用json的,用的是jsoncpp开源库主要逻辑处理部分是单线程处理,所以玩家一多cpu就吃不消了, 要优化,用gprof等工具找啊找研究发现是 主要json部分引起的一些内存开销占用cpu资源过多。(还有一些智能指针,按下不表)找了很多方法优化jsoncpp,1.比如 http://w原创 2016-08-04 10:51:03 · 4869 阅读 · 1 评论