golang的gin就是快

最近闲得蛋疼的把公司没什么人用的内网查询系统改写了。

本来公司就是没有数据查询系统的,于是我为了自己方便,在IIS下用asp写了一个,今年年头时,学了点vue皮毛, 于是在没动用脚手架的情况下,直接引用vue等js, 又搞了一个vue + asp api的,返回的json格式是用asp字符拼接的,现在回看,可读性很差,不过vue的数据驱动模式非常不错,然后为了练习golang , 于是再次用golang的gin框架写了个json api ,踩了不少golang的坑, 前端的vue也没改什么,完成后,速度上比asp版本的api快了很多,而且也不用依赖IIS web系统.

写完vue + golang后,再次为了学习python的flask , 又重写了一篇api版本,当然这个版本不会拿去实际用,因为速度上证明是不够golang gin快的,但坑少很多,至少不用顾及golang的json结构体读取数据库时null的问题, 舒心很多.

一切都是为了学习,让脑子活动啊

发表在 一般生活 | 留下评论

optane memory傲腾内存的折腾raid0

optane memory傲腾内存的折腾raid0, 最近淘宝傲腾内存很便宜, 于是入手测试,因为傲腾内存的4k实在强悍,加上primocache,用作二级缓存,很快很爽, 用win7的带区卷(软raid0) , 买了10条傲腾16G(公司用), 1条32G的(自己用)

废话不说,上图,以下是 SY-B85-BTC主板上用nvme转接卡测试的, 带区卷,加上显卡槽,共6条,除了显卡的pcieX16可以满足傲腾全速外,其它的pcie速度都只能跑400M/S

以上是三条傲腾16G

以上是四条傲腾16G

以下是技嘉的B250M-D3H主板插傲腾内存测试,一个近cpu的nvme固定位,两条显卡槽, 一共可以插3条傲腾,都可以满足傲腾16G的全速。

以上是二条傲腾16G
以上是三条傲腾16G的
这是单条傲腾内存32G的。

在B250芯片主板上,两条傲腾16G的4k居然可以和32G的速度接近 , 而在B85芯片主板上,两条甚至三条,4K的速度都没有增加.

现在32G那条用Primocache来加速我的闪迪ssd系统盆(B250主板),本来的单纯ssd开机11秒,经过缓存后,开机8秒,爽.

公司的机器,全部都是机械硬盘的,我都用转接卡加傲腾16G来加速,爽,甚至775主板上都可以用,都是转接卡插显卡槽,简直比原来爽很多.

发表在 一般生活 | 留下评论

自编译的lede不能保存crontab任务的解决方案

自编译的lede不能保存crontab任务的解决方案, 首先多谢 https://github.com/coolsnowwolf/lede ,有这位大神的奉献,所以有了自己可以使用的编译版本的lede openwrt , 而且适用的机型超多

但还是有各种各样的问题,例如就是那个计划任务里的保存命令问题,提交保存后,机器重启之后的crontab的命令就没有了,到现在也找不到确切原因,在测试把 /etc/crontabs 复制到root目录后可以保存,于是就有了想法,就是提交任务时保存后的 /etc/crontabs/root复制到/root/crontabs/root下,开机时再复制到原位置

实现的代码要改动两个文件:

/etc/init.d/cron 改

cp -a /root/crontabs/root /etc/crontabs 

mkdir -p /var/spool/cron <-这行之上加上上述的

/usr/lib/lua/luci/model/cbi/admin_system/crontab.lua 改 

local cronfile = “/etc/crontabs/root”
local cronfile1 = “/root/crontabs/root” <-增加这一行

然后

fs.writefile(cronfile, data.crons:gsub(“\r\n”, “\n”))
fs.writefile(cronfile1, data.crons:gsub(“\r\n”, “\n”)) <-增加这一行

这样就行了, 好在还会一点lua语言 , 然后用greb rb “/etc/crontab” 这样在openwrt lede下找出lua的文件, 费了一晚时间搞定. 为什么在重启之后不能保存昵,反正到现在也不明白

发表在 技术生活 | 留下评论

cron和iptables的一个坑

cron和iptables的一个坑, 最近在搞udp2raw发现这个小坑,因为要用到动态域名,GitHub – wangyu上的issues上有人提及这个动态域名问题,但回复是不支持的,所以我就想出了用脚本解决,反正思路就是,cron定时每10分钟用ping获取域名ip,然后调用udp2raw命令行。

本以为很简单的,到执行时,发觉udp2raw执行不了,看写进后日志,发觉是iptables执行不了, iptables command not found , 应该执行命令详细路径,但问题iptables是udp2raw调用的,根本无法加路径

只能上网查,百度上根本没人解决,于是只能google去,啃了一堆英文网站(用翻译),原来就是cron里,path路径里根本没有iptables所在/sbin,写了个简单脚本( echo $PATH ), 放到cron里验证,确实是这样.

于是脚本最前加上以下这段, 为了判断执行环境的path是否存在iptables的执行路径

pathx=echo $PATH|grep "/sbin"
if [ “” = “$pathx” ]; then
   export PATH=$PATH:/sbin
   echo “no sbin”
fi

这样iptables调用就正常了,于是udp2raw也正常了,还有就是定时操作里,wireguard的执行如果要调用iptables,也是这样解决了。

还有就是加上udp2raw确认会比原来慢点,而且耗cpu。

发表在 一般生活 | 留下评论

入手4980hq魔改的转1150针cpu

入手4980hq魔改的转1150针cpu , 平时没事真的不要入图拉丁吧,一进去就中毒这个魔改cpu了,继771改775的华强强悍出品,淘宝770多入手,看了三天就忍不住下手了,我的华硕B85 pro主板果然开机报cpu电 压检测错误,按照网上说的,忽略丢就可以了,现在默频使用中,使用的是暴雪400大霜塔四管散热器,温度没传说中的凶悍高,可能是我默频使用吧,比我原来使用的I5 4460强很多,果然性价比很高,据说超频能超过I7 4790K呢.

继续阅读

发表在 技术生活 | 一条评论

最近在折腾solidworks

最近在折腾solidworks, 在bilibili和youtube看了很多教程,现在终于简单的会用一点,其实就是为了3d打印,为了打印一个充电盒子,电子线路已经接好,就是差个外壳,期间也折腾了sketchup草图大师,其实基础入门还是很简单的,就是画个矩形,拉高,然后偏移,然后再向下推,后来就是这个用这个观念去学习solidworks,  对比下,发觉solidworks更严谨, 但由于懒岩发作,到现在还停留再设计阶段,还没有实行打印。

那两个插口的距离还没有排好,反正就是未搞定.

现在一边看solidworks教程,也在看autocad教程,发觉看视频学习是不错,最近这方面的学习欲很强,当然是工作中需要了.

 

发表在 一般生活 | 一条评论