Loading [MathJax]/jax/element/mml/optable/BasicLatin.js
上一页 1 2 3 4 5 6 7 ··· 13 下一页

bash里的[[与[

摘要: 你好。 你写bash的时候,喜欢这样么? if [[ "0" == "1" ]] then; echo "True" else echo "False" fi 还是这样? if [ "0" == "1" ] then; echo "True" else echo "False" fi 现在,讲一下区 阅读全文
posted @ 2021-03-26 14:48 toong 阅读(240) 评论(0) 推荐(0)

bash逐行读取变量

摘要: 如题,从变量中逐行读取的方法 该方法由于使用了管道,在循环内给变量的赋值无法传输到外部。 a=123 echo "result" | while read line do echo line echo "xxxxxxxxxxx" a=456 # 赋值无效 done 下面的方法功能相同,但是可以对 阅读全文
posted @ 2021-03-19 18:07 toong 阅读(160) 评论(0) 推荐(0)

[openssl] 内存泄露及越界分析方法整理

摘要: 前言 [classic_tong: https://www.cnblogs.com/hugetong/p/14386531.html] 围绕着 [openssl] openssl asynch_mode 使用libasan时的OOM问题 以及 https://github.com/intel/QAT 阅读全文
posted @ 2021-02-08 18:08 toong 阅读(1748) 评论(0) 推荐(0)

[openssl] openssl async模块框架分析

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14379347.html] 这一部分内容的前面还有个第一部分,可以作为接下来内容的前提或者背景进行阅读:[openssl] intel qat场景下的openssl框架 引言 openssl1.1. 阅读全文
posted @ 2021-02-05 19:51 toong 阅读(3494) 评论(0) 推荐(0)

[openssl] intel qat场景下的openssl框架

摘要: 源代码 [classic_tong:https://www.cnblogs.com/hugetong/p/14363775.html] 我们使用openssl版本1.1.1的源代码进行安装与实验. 目前已经有了3.0.0的alpha版本. 源码下载在这里: https://www.openssl.o 阅读全文
posted @ 2021-02-05 18:49 toong 阅读(3150) 评论(0) 推荐(0)

[openssl] openssl与协程

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14378526.html] Golang就用了协程,一直没有想过是怎么实现的。今天读openssl的源码,读到这个地方:https://github.com/openssl/openssl/blob 阅读全文
posted @ 2021-02-05 16:33 toong 阅读(1094) 评论(0) 推荐(0)

进程coredump的elf debug信息补全方法

摘要: 背景 我的一个运行CentOS上的进程由于bug crash掉了, 并留下了coredump文件, 使用gdb查看coredump文件时, 发现crash在了一个动态库上, 但是该动态库没有debug信息, 因为不是'-g'编译的. 如下: # gdb /usr/sbin/nginx /export 阅读全文
posted @ 2021-01-06 22:07 toong 阅读(1089) 评论(0) 推荐(0)

[openssl] openssl asynch_mode 使用libasan时的OOM问题

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14231782.html] 概述 openssl支持async mode. 在定位越界问题时,我使用了libasan, 之后就OOM了, 能够看见在这个地方: 原因是因为, memset的size参 阅读全文
posted @ 2021-01-04 19:26 toong 阅读(962) 评论(0) 推荐(0)

[debug] 使用rpmbuild时gdb怎么找到debuginfo

摘要: 用rpm进行源码编译和release的时候,会生成两个包,一个正常的rpm 另一个是带debuginfo后缀的包. 正常包里的二进制会被strip出来放在debuginfo包中.用于后续的debug 详见下面的两个文档: https://gnu.wildebeest.org/blog/mjw/201 阅读全文
posted @ 2020-12-14 16:14 toong 阅读(573) 评论(0) 推荐(0)

[optimize]使用systemtap调试用户态程序

摘要: 用户态调试 classic_tong:[optimize]使用systemtap调试用户态程序 摘要 systemtap既能调试内核,也能调试用户态. 然后有if有判断有循环.可编程就代表什么都行,那么给我一个用gdb的理由? 另外,世界之大,请不要忘记DTrace,linux 4.9之后支持. 新 阅读全文
posted @ 2020-12-09 16:54 toong 阅读(961) 评论(0) 推荐(0)

rpmbuild之后二进制文件的MD5不一样

摘要: 使用rpmbuild工具用如下命令,生成rpm包. rpmbuild -bb qatengine.spec 我们知道,rpmbuild的目录里,一部分是用来build的,一部分使用release的, 我们分别找到我们感兴趣的二进制文件,算一下md5, 发现,竟然不一样: [root@T9 SPECS 阅读全文
posted @ 2020-11-03 16:47 toong 阅读(492) 评论(0) 推荐(0)

[nginx] 如何设置proxy到upstream的长连接

摘要: 前言 1. 如下内容将讨论nginx做proxy代理client访问http server的过程。 2. 这里的长连接是指keepalive,指的是http的keepalive,区别与tcp的keepalive。 问题框架 从client经过作为proxy的nginx访问http server时,涉 阅读全文
posted @ 2020-09-10 21:57 toong 阅读(2197) 评论(0) 推荐(0)

[http] 从http1到http3

摘要: 引言 cloudflare说他们跟google和firefox在开发实现http3。并且tls1.3也是他们推的。 [https://www.cnblogs.com/hugetong/p/13442633.html] 1.0 96年开始http1.0的时代。他有很多缺点.# 因为是tcp+ssl承载 阅读全文
posted @ 2020-08-05 20:55 toong 阅读(352) 评论(0) 推荐(0)

[http] http版本的选择/http2的启动

摘要: 前言 http2可以承载在TCP上或者TLS上,分别简称h2和h2c 当访问一个服务的时候,到底用http1.1还是http2,client和server是可以协商的。 [https://www.cnblogs.com/hugetong/p/13410276.html] TLS承载HTTP2 RFC 阅读全文
posted @ 2020-07-31 16:09 toong 阅读(3762) 评论(0) 推荐(2)

tcpdump按进出方向抓包

摘要: tcpdump抓取进入网卡的包,或者出网卡的包。 tcpdump分进出方向抓包。 可以使用如下filter ┬─[tong@T7:~/VM/t9]─[03:19:32 PM] ╰─>$ man pcap-filter |grep inbound -A 7 inbound Packet was rec 阅读全文
posted @ 2020-06-30 15:23 toong 阅读(4092) 评论(0) 推荐(0)

[tcp/ip] tcp delayed ack

摘要: 触发机制 被delay的ack包,什么时候发送出来? 到达500ms (这个值根据实现的不同而不同,RFC要求最多不能超过500,linux的实现是200) 每两个数据包回一个ack 由反向数据包发送带回。 优点 delayed ack可以提供一个机会给应用程序。让三个回应报合并成一个回应包。 三个 阅读全文
posted @ 2020-06-29 16:53 toong 阅读(953) 评论(0) 推荐(0)

[archlinux] 清理缓存包

摘要: archlinux的缓存包会占用大量的硬盘,可以用paccache命令清理: # paccache -r ┬─[tong@T7:~]─[05:04:04 PM] ╰─>$ sudo du -sh /var/cache/pacman/pkg/ 56G /var/cache/pacman/pkg/ ┬─ 阅读全文
posted @ 2020-06-08 17:11 toong 阅读(2345) 评论(0) 推荐(0)

[emacs] emacs批量缩进

摘要: 1. 使用CTRL+SPACE选择目标文本块。 2. 使用命令 indent-rigidly 。 3. 使用左右方向键或shift加左右方向键进行块的缩进移动。方向键每次移动一个字符,SHIFT每次移动4个字符。 参考: https://wolfsonliu.github.io/archive/20 阅读全文
posted @ 2020-05-13 15:53 toong 阅读(847) 评论(0) 推荐(0)

[http] http HSTS

摘要: 一 介绍 HSTS是 HTTP Strict Transport Security的全称。 就是强制浏览器必须使用HTTPS链接进行通讯的意思。如果浏览器不支持TLS访问,那么它就不能访问网站。为了防止中间人攻击。 这里,应该理解成浏览器,也就是客户端软件对用户进行的约束。 HSTS机制,在TLS层 阅读全文
posted @ 2020-04-20 15:35 toong 阅读(472) 评论(0) 推荐(0)

[nginx][http] nginx关于http header的设置

摘要: nginx关于http header有以下三个配置。 1 proxy_set_header https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header 配置命令proxy_set_header,是在ngx_ht 阅读全文
posted @ 2020-04-20 12:27 toong 阅读(3497) 评论(0) 推荐(0)

[http] 有关http2的主要知识点整理

摘要: 一 介绍 [classic_tong @ https://www.cnblogs.com/hugetong/p/12694322.html] 为了解决HTTP1的性能问题,HTTP2出现了。 http1有什么问题 1. 半双工的。请求与回应一来一回,彼此等待对方到底。 2. 不能并发,一个TCP隧道 阅读全文
posted @ 2020-04-14 11:41 toong 阅读(492) 评论(0) 推荐(0)

[python] python函数定义里后边那个箭头是干嘛的

摘要: 如题又如图 def add(x:int, y:int) -> int: return x + y 答: 是注释。前边的:int也是。见: https://python3-cookbook.readthedocs.io/zh_CN/latest/c07/p03_attach_informatinal_ 阅读全文
posted @ 2020-04-04 17:39 toong 阅读(4813) 评论(0) 推荐(0)

[nginx][curl]使用curl对nginx进行的小测试

摘要: 使用curl命令,模拟一个客户端的访问。有时候我们需要为hostname正确的赋值, 可以使用以下方便的技巧,而不用修改/etct/resovle.conf文件的内容。 curl -k -v https://www.classic-tong15.com/path17 --resolve www.cl 阅读全文
posted @ 2020-04-04 17:35 toong 阅读(5369) 评论(0) 推荐(0)

[core dump] 纯干货版core dump使用

摘要: 总结了好几次,每次还是会卡住,要查一下。核心问题只有这三个。 1. 怎么打开core dump ? [root@T9 sbin]# ulimit -c unlimited 2. core dump文件存到哪了 ? [root@T9 sbin]# cat /proc/sys/kernel/core_p 阅读全文
posted @ 2020-03-30 19:26 toong 阅读(583) 评论(0) 推荐(0)

[redis] redis在线系统热迁移的方案与记录

摘要: 一 前言 如图,是我的环境。 这里边有三个系统,1 业务系统。2 redis cluster集群。3 redis cluster集群的管理系统。 系统1,会对redis中进行秒级的数据添加,读取,删除操作。系统3,是redis集群的增加节点减少节点,节点failover功能进行管理。 如图目前,我的 阅读全文
posted @ 2020-03-27 20:25 toong 阅读(2193) 评论(0) 推荐(0)

[golang] go get无法安装官方软件包

摘要: 作为一个小白,困惑了快半个小时,一直以为是自己的环境搭建有问题。 后来我终于知道了,原来golang.org与godoc.org是墙外的网站。 所以,装软件的时候,会有下面的错误 /home/tong/go/src/local/test [tong@TStation] [12:24] > proxy 阅读全文
posted @ 2020-02-17 12:54 toong 阅读(1669) 评论(0) 推荐(0)

我有关编程语言的一点理解

摘要: 副标题:[golang] 当用到一知半解的Go丢掉了大半年之后如何又能快速捡起 零 如题。 在这之后 [dev][go] 入门Golang都需要了解什么 便再没有接触过Go语言,以致今日便忘得一干二净。 现在要用,那么接下来的问题就是。我应该以一种怎么样的思路,将它拾起来。 [classic_ton 阅读全文
posted @ 2020-02-12 22:52 toong 阅读(314) 评论(0) 推荐(0)

[nginx] nginx源码分析--健康检查模块锁分析

摘要: 健康检查模块 见前文:[nginx] nginx源码分析--健康检查模块 其中有一张框架图, 接下来的内容,将会利用到这个图中的内容。 [classic_tong @ https:////www.cnblogs.com/hugetong/p/12274125.html ] 描述 我们知道nginx是 阅读全文
posted @ 2020-02-07 20:12 toong 阅读(699) 评论(0) 推荐(0)

[nginx] nginx的hash与bucket size分析

摘要: 问题描述 我们已知有一个map命令,可以用在http block和stream block中。 用于定义个新的变量,变量的取值由map里边的key和value定义。 如我在前文有个SNI的使用中,便用到了这个方式。[nginx][tls] nginx配置https与ssl/tls的sni的方法 ma 阅读全文
posted @ 2020-02-05 19:49 toong 阅读(2338) 评论(0) 推荐(0)

[daily][linux] dmesg格式里的时间为什么不准

摘要: 我们能看见dmesg的日志带有时间,用dmesg -T参数 [root@tong ~]# dmesg -T |tail -n 4 [Tue Jan 21 22:05:11 2020] nginx[7607]: segfault at 8 ip 00007f5323cf77a1 sp 00007fff 阅读全文
posted @ 2020-01-21 17:17 toong 阅读(2981) 评论(0) 推荐(0)

[daily] 查看linux程序或操作的kernel内核调用栈

摘要: 一 [classic_tong @ https://www.cnblogs.com/hugetong/p/12198122.html] 查看一个命令或程序,都调用了什么系统API的方法, 可以是用strace [root@T9 OUTPUT_nginx]# strace echo execve("/ 阅读全文
posted @ 2020-01-15 18:14 toong 阅读(1680) 评论(0) 推荐(0)

[go] 像gdb一样使用dlv debug golang程序

摘要: gdb也可以debug golang程序,但是没有办法很好的处理协程。(或者我不太擅长) golang本身,提供了更好的工具。 delve:https://github.com/go-delve/delve/tree/master/Documentation/installation 现在以gobe 阅读全文
posted @ 2020-01-15 14:29 toong 阅读(924) 评论(0) 推荐(0)

[tls][https][nginx] https的client session cache与session ticket机制分析

摘要: more title tls的客户端会话恢复与会话票证机制分析 golang fasthttp库关于会话恢复与会话票证的源码分析 前言 https握一次手是很艰辛的,计算量很大。所以如果连续两次短连接通信的话,完全可以 复用上一次的会话。这样可以压缩通信,节省计算。 TLS提供了两个机制来做这个事。 阅读全文
posted @ 2020-01-14 18:38 toong 阅读(5381) 评论(0) 推荐(0)

[性能优化] CPU电源管理pstate cstate

摘要: CPU的电源管理是会影响性能的。 pstate指CPU忙时的电源管理,为了省电会调节主频和电压。cstate是cpu闲时的电压管理。 详细资料见: https://software.intel.com/en-us/blogs/2008/05/29/what-exactly-is-a-p-state- 阅读全文
posted @ 2020-01-10 16:08 toong 阅读(8937) 评论(0) 推荐(0)

[https][tls][crypto][性能优化] Intel QAT卡初涉

摘要: 硬件加密卡,硬件加解密卡。 用于把加密解密,数据压缩等,从CPU卸载到加速卡上。 所有文档汇总:https://01.org/intel-quickassist-technology 性能调优手册:https://01.org/sites/default/files/downloads//33068 阅读全文
posted @ 2020-01-10 15:13 toong 阅读(1938) 评论(0) 推荐(0)

[python] 像gdb一样用pdb debug python程序

摘要: 如题,我们希望像gdb C程序一样。对python程序就行debug 可以使用pdb来实现这样的功能。 见:https://docs.python.org/3/library/pdb.html 最简单的方法,我们以 longest_substring.py 为例。 使用如下方式执行它,便进入了deb 阅读全文
posted @ 2020-01-06 11:40 toong 阅读(348) 评论(0) 推荐(0)

[redis] 又见redis

摘要: 前言 说起来,我是刚刚一搜才回忆起以前便花时间学习过一次redis,读过几个小册子留下了大量的笔记。 [redis] redis [redis] 与redis cluster有关的学习笔记 [redis] <<The little Redis book>>的读书笔记 结果却印象淡薄,可见当时的学习收 阅读全文
posted @ 2019-12-27 14:31 toong 阅读(252) 评论(0) 推荐(0)

[centos][docker][logrotate][nginx] 为docker内的程序配置logrotate的方法

摘要: 情景 一般情况下,我们都会映射一个外部目录到docker里边,docker里边的程序会将数据,包括 日志写在这个目录里,这个时候,日志是docker内外都可见的。例如常用的ngingx部署方法。 [class_tong @ https://www.cnblogs.com/hugetong/] 背景 阅读全文
posted @ 2019-12-24 11:11 toong 阅读(1832) 评论(0) 推荐(0)

[daily]使用iptables配置NAT的命令速查

摘要: 时常,快速的配置一个临时的NAT环境是很常用需求。 但是,每次我都要读iptables的手册,才能配出来。所以,备忘一个速查。 DNAT: iptables -t nat -A PREROUTING -i eth1 -d 1.1.1.2 -j DNAT --to-destination 10.0.1 阅读全文
posted @ 2019-12-23 16:09 toong 阅读(732) 评论(0) 推荐(0)

[转]函数式程序设计为什么至关重要

摘要: haskell的推荐文章之一,如下是台版译文。 译文的原文链接:https://www.byvoid.com/zhs/blog/why-functional-programming 作者: John Hughes 原文地址:http://wiht.link/functional-prog 此论文作于 阅读全文
posted @ 2019-12-20 18:53 toong 阅读(709) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 ··· 13 下一页
点击右上角即可分享
微信分享提示