杂言碎语 > 哎
2022-02-09
心哀。
每个肆意妄为的中年人,其实都是有底气支撑。
只是有时候,失去了底气后,才能发现这一点。
而这时候,真不希望能意识到这一点。
振作。
负重前行。
已经没有再装作少年的本钱了。
人生苦短,
走好自己的路,为重要的人建好路,传承下去。
唯一能做,必须去做的事。
Linux > 还是用webdav解决qem/kvm跑Windows10的共享问题了
2022-01-12
一直在用virt-manager跑虚拟机
最近要用win10处理点东西,发现共享文件实在是不方便。
virtio-webdav实在不用好,P9的系统,也没有windows的驱动。
最后想通了,既然用webdav方案,为啥要用virtio那个不好用的……
整了个绿色的webdav服务
https://github.com/herbrhythm/herbwebdavd
win10用nat网络链接,指定固定ip
然后Nautilus里其他位置添加个本地ip
齐活,简单方便。
网络 > certbot还是比acme.sh好用
2022-01-06
其实已经发现几次了。
今天一张le更新的证书快过期了
火线升级
最后还是certbot一键搞定。
除了通配符域名还没用certbot搞过。
其他地方,似乎的确是certbot好用点。
亲儿子可能的确有亲儿子的优势吧。
工地 > 再一次重构站点
2021-12-13
由于github登陆方式的改变,需要重新编译,
再一次重构站点。
主要是用户系统和缓存。
感觉改变了不少,又感觉什么都没改变
接下去要一个一个重构代码了
希望没有过度设计
代码 > golang pprof记录
2021-07-07
mud 客户端有内存泄露,调试了一把,记录一下。
首先,引入 profile库
import "net/http/pprof"
然后合适的地方引入
runtime.SetBlockProfileRate(int(10 * time.Second))
runtime.SetMutexProfileFraction(int(10 * time.Second))
Router.Handle("/debug/pprof/").HandleFunc(pprof.Index)
Router.Handle("/debug/pprof/cmdline").HandleFunc(pprof.Cmdline)
Router.Handle("/debug/pprof/profile").HandleFunc(pprof.Profile)
Router.Handle("/debug/pprof/symbol").HandleFunc(pprof.Symbol)
Router.Handle("/debug/pprof/trace").HandleFunc(pprof.Trace)
SetBlockProfileRate是设置记录block的代码的值,单位是纳秒
SetMutexProfileFraction是设置记录锁起效代码的值。
然后打开debug/pprof页面
allocs 4 block 0 cmdline 17 goroutine 232 heap 0 mutex 0 profile 21 threadcreate 0 trace
其中重点关注的是 goroutine,heap,block几块
goroutine是看实时的goroutine数量和发起位置。如果不停增长,可能是泄露
heap是堆,数值是一直增长的。点入后看到的数据,建议加上gc=1参数强制gc一次
第一行的数字大概是
2: 58368 [2474: 8919408] @ heap/1048576
第二个数字58368是当前堆内存大小,最后一个数字1048576是最大使用的堆内存
然后是按当前使用内存大小的堆信息,大概是
1: 57344 [1: 57344]
第一个57344是当前使用的堆内存
方括号内的57344是最大使用过的堆内存。
网络 > [记录]aliyun vpc的坑
2021-02-25
今天给一台阿里云服务器换了vpc,踩了点坑
表现为网站无法打开,vnc链接后服务器无网络
总结如下
- 切换vpc需要改ecs的网络配置
- ecs的网络配置,用dhcp未必起效
- 手工设置ecs的网络配置时,可能需要设置网关
- 网关地址没找到说明,我是把网段最后几个保留ip按个ping,再倒数第三个能ping同,然后设为网关,通了。
另外吐槽下,阿里云的工单改版。
不能直接提交工单,出来个伪对话框,普通工单120分钟内回复,紧急工单90分钟内回复,付钱10分钟内回复。
很好,很强大。
网络 > 腾讯企业邮箱开始不干人事了
2021-02-19
收到了腾讯企业邮箱的邮件
贵公司正在使用基础版的企业邮箱,目前有 5 个成员使用容量已超过普通帐号的 2G 上限,当前为超容使用中。建议将贵公司的企业邮箱升级到专业版,并把这些成员账号升级为VIP账号,即可不受容量限制。同时,专业版提供更多便捷管理功能,让工作更高效。了解专业版及VIP账号 注意:5天后,若邮箱账号未及时升级到VIP账号,2月24日起,这些账号容量将降级为标准容量。超出容量限制的邮箱账号将无法收到新的邮件,请提醒成员及时清理历史邮件,以免影响邮箱的正常使用。
无力吐槽。
啥玩意?
你要收费正常,之前的用户你觉得给的容量太多也正常。
但提前一周不到给个这个邮件?
这是准备做商业客户的态度?
你微盘送的免费空间吃了吐也就算了。
做对公业务的,早点提醒会死么?
但凡遇到个付款要审批的,怎么搞?
代码 > [记录]踩了golang的defer/recover的坑
2021-01-18
今天写代码的时候完了个花活,想复用recover,结果炸了……
体现在recover没起效,直接panic出来了。
查了下,defer里一旦再调用函数,原有上下文就变了,recover就失效了。
想想也有道理。
改了个骚气代码,解决了
q.Recover = func() {
defer n.Recover()
if r := recover(); r != nil {
panic(r)
}
}