https://www.cnblogs.com/zhengah/p/5889340.html
socat做Unix socket转发并抓包,不错
DevOps
https://www.cnblogs.com/zhengah/p/5889340.html
socat做Unix socket转发并抓包,不错
Hello world:
解说:
表索引情况如下:
我们发现,buss_no 开头的索引就有三个,从名字上来看,是个类似于唯一号的字段,从buss_no 的索引类型来看,不是唯一索引,很可能就是不唯一的;但是,直觉判断,不能看像类型、状态之类的字段有超大的重复度。实际分析发现,每个buss_no 不会超过10条记录;对于这种情况,下面的两个buss_no开头的联合索引就是非常多余的,因为后面的两个联合索引总是先定位buss_no,在定位其他字段的;由于buss_no已经把结果集缩小到10条记录一下了,对于10条记录集的数据量完全可以自己在程序中进行排序、查找等处理,大可不必再创建联合索引,这样会导致索引很大,现在这个表的索引数据情况为:
不难发现,索引空间比表数据空间都大很多了
注意: 有些情况下,使用的覆盖索引和这种情况有些许类似,但不可等而视之
如: 类型、状态字段,值往往只有很少的几个,创建索引的意义不大
面对已经存在了大量索引,如何验证使用索引和不使用索引的执行效率差别的大小呢?
直接删掉不想用的索引自然是个办法,但是我们的操作可能是线上的,随意删除和创建索引太不专业了;幸好mysql早就帮我们想好了,我们可以在sql语句中指定是否启用和禁用指定的索引:https://www.cnblogs.com/lcngu/p/6023179.html
参考:
stat一个目录时卡死:
(这个错误和十年前遇到的执行du就卡死的问题,如出一辙)
dmesg 错误信息:
这个机器早被下线了,看来是下线时清理的不够好,现在还有一个机器挂载这死去的机器的nfs呢:(3年了)
https://www.makeuseof.com/tag/upscaling-how-does-it-work-and-is-it-worth-it/
关于4k电视看2k视频的问题,有些电视可以将2k视频转成4k视频来播放的(这样会更耗电的吧?)
抽帧命令:
1 |
ffmpeg -i HPIM0002IMP.MP4 -r 15 HP2.mp4 |
原因:
MP4有3种编码,mpg4(xdiv),,mpg4(xvid),avc(h264);
原本是h264编码,抽帧后变成了mpeg4了
抽帧前:
抽帧后:
解决办法:
转码为 h264格式; 问题,转码后,文件体积增大到原始文件的3倍(这个好不地道)
参考:
错误信息:
查看卷列表时,dashboard提示: 无法获取连接信息 ; 英文提示应该是: Unable to retrieve attachment information.
查看日志:
发现一个卷是挂在某个实例上的,但是实例早被删掉了,所以“无法获取连接信息”;
实例ID: a95f316f-aeb7-40ce-8887-9145499518fc
卷ID: 7f75f270-17a9-4694-aff3-70c950f9c9b5
解决办法:
直接从cinder数据库中修改该卷的相关信息,然后删掉,相关表:
volume_attachment
volumes
sql 语句:
1 |
update volume_attachment set attach_status='detached' where instance_uuid='a95f316f-aeb7-40ce-8887-9145499518fc'\G |
1 |
update volumes set status='available', attach_status='detached' where id='7f75f270-17a9-4694-aff3-70c950f9c9b5'\G |
相关代码:
/usr/share/openstack-dashboard/openstack_dashboard/dashboards/project/volumes/tables.py 598 行
https://blog.csdn.net/zgy621101/article/details/79298777
https://blog.csdn.net/qiyuanxiong/article/details/77943578
简单的校验办法如下: ff d9 结尾就可以认为图片是完整的
1 2 |
#tail -c 2 IMG_2806.jpg|od -tx1 -An|xargs printf '%s%s' ffd9 |
问题:
1 2 |
# curl https://github.com curl: (35) SSL connect error |
分析:
tcpdump 抓包、wireshark分析:
基本是由于ssl版本导致的:
client想使用TLS 1.0 , server说,不行,太低
解决办法:
1 |
curl --tlsv1.2 https://github.com |
每次都带上个选项多不方便,使用 .curlrc ; linux上的程序一般都这个套路,在用户目录下写个配置文件:
1 2 |
# cat ~/.curlrc --tlsv1.2 |
配置文件格式就是直接写curl的命令行选项,简单粗暴高效。
有些curl -v 就能看到握手的ssl版本号
1 2 3 4 5 6 7 8 9 10 11 12 |
$ curl -v https://github.com * Rebuilt URL to: https://github.com/ * Trying 172.16.20.14... * Connected to github.com (172.16.20.14) port 443 (#0) * TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 * Server certificate: github.com * Server certificate: DigiCert SHA2 Extended Validation Server CA * Server certificate: DigiCert High Assurance EV Root CA > GET / HTTP/1.1 > Host: github.com > User-Agent: curl/7.49.1 > Accept: */* |