10 codergeek

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 9k+

CLion使用技巧

Ctrl + 向左箭头 回退Ctrl + 向右箭头 前进ALT + 1 显隐工程栏Ctrl + / 添加或删除注释Ctrl + Alt + L 格式化代码Alt + F7 Find UsagesCtrl + R 替换Ctrl + B 在定义和申明之间跳转Ctrl + Shift + Backspace 回到最后编辑的地方Ctrl + N 查找类Ctrl + O 选取需要重写的方法Ctrl + F12 快速查看类成员Ctrl + Q 快速查看文档Ctrl + P 提示参数信息Ct

2020-07-29 08:01:41

Linux 虚拟内存管理(未完成)

slab分配器buddyglibcsize class、brk、mmap三种实现方式内存池伙伴系统tcmalloc的内存回收机制的研究各自的实现,以及他们之间是什么关系?用户态调用malloc或new来申请内存空间时,是如何来操作的?...

2020-07-14 08:23:08

基础工具学习(git和cmake file)

猴子都能看懂的git教程https://backlog.com/git-tutorial/cn/stepup/stepup2_6.htmlgit教程https://www.ruanyifeng.com/blog/2014/06/git_remote.htmlcmake的教程陶志江的博客有介绍cmake的文档,好好过一遍

2020-07-13 10:44:19

极客时间-linux性能优化 37.案例篇:DNS 解析时快时慢我该怎么办?

DNS域名解析服务以time.geekbang.org为例,org是顶级域名,中间的geekbang是二级域名,time是三级域名。每级的DNS服务器,都有最近解析记录的缓存。DNS的A记录,用来把域名转换成IP地址。DNS解析工具dig,可以递归展示域名查询的整个过程PTR反向地址解析的目的,是从IP地址反查处域名,并非所有IP地址都会定义PTR记录iptables -I INPUT -p udp --sport 53 -m string --string google..

2020-07-06 08:47:44

极客时间-linux性能优化 39.案例篇:怎么缓解 DDoS 攻击带来的性能下降问题?

ddos类型1、耗尽带宽带宽耗尽后,就会发生网络拥堵,无法收发报文2、耗尽系统资源CPU、内存等物理资源模拟ddos攻击工具:hping3实验步骤1、hping3模拟ddos攻击,syn flood类型攻击2、sar查看每秒接收的数据包数和数据包字节数,发现数据包数特别多,但是总字节数不大,说明是大量的小包3、tcpdump抓包分析使用tcpdump抓包进行分析,发现流量攻击类型是syn flood。大量的syn包,会导致大量的半开连接,从而消耗连接表资源。.

2020-07-04 17:26:17

极客时间-linux性能优化 38 怎么使用tcpdump和wireshark分析网络流量?

一、熟悉了tcpdump命令的用法过滤表达式如下:虽然实际使用时可以man,但是记住常规的参数有助于更快的排查问题我们平时工作中,在linux机器上用tcpdump抓取数据包,回传到windows机器上,然后使用wireshark打开pcap数据包更细的分析流和数据包最后使用wireshark简单看了http的全过程,从tcp三次握手建立连接,到中间传输数据,到最后的三次挥手断开连接只能说,都是基础的东西。...

2020-07-04 16:46:33

gdb调试多线程死锁

平时工作中,使用gdb调试多线程死锁,已经成为了常规操作,这块得总结下,下次就更熟练了。

2020-07-02 15:48:14

公司排查问题记录

SIG_PIPE:对端套接字已关闭,但是依旧往套接字中写入数据,会触发此信号handle SIGPIPE nostop noprintSIG_TERM:进程结束的信号

2020-06-30 09:12:22

敏捷思维指导学习和工作

公司推行敏捷开发已有时日,我也尝试将敏捷的思想应用到实际生活中敏捷的思想:将大的需求通过AC分解成多个规模略小的任务,并评估出每个任务的规模,需要投入的时间(以人天为单位)一、任务拆解以读书会为例:将极客时间的Linux性能优化实战的课程拆分成5个阶段阶段1:CPU篇阶段2:内存篇阶段3:文件系统和磁盘篇阶段4:网络篇阶段5:综合篇每一个阶段需要写笔记,并统计笔记完成情况,来总结和检验自己是否学会,以及对知识的掌握程度,是浮在表面上?还是理解了技术的原理?二、里程

2020-06-28 09:42:07

极客时间-linux性能优化 36 怎么评估系统的网络性能

网络性能指标:1、带宽 2、吞吐量 3、延时 4、pps网络基准测试根据公司业务场景不同,性能指标也不同,比如我们公司是网络协议解析和流量处理,更关心三个指标:吞吐量,会话数,每秒的数据包数各协议层的性能测试转发性能测试:pktgentcp/udp性能测试:iperf或netperfhttp/https服务器性能:ab应用负载性能:wrk,tcpcopy,jmeter,loadrunner...

2020-06-27 14:11:03

极客时间-linux性能优化 35 C10K到C1000K回顾

这节对我来说是比较容易的一节课,因为正是我平时的工作内容,所以心里很熟悉直接说下C10M,千万并发如何能达到?第一、优化IO模型使用非阻塞I/O和边缘触发机制,比如epollepoll内部使用红黑树管理文件描述符的集合,不需要应用程序每次操作时都传入、传出文件描述符集合。epoll使用事件驱动的机制,只关心有IO事件发生的文件描述符,不需要轮询扫描整个集合。由于边缘触发只在文件描述符可读或可写事件发生时才通知,所以应用程序需要尽可能多的执行IO,并处理更多的异常事件第二、使.

2020-06-27 13:41:47

如何有效的阅读开源代码

一、初步了解1.在下载源代码之后,先看下代码目录组织结构,如base代表基础库,net代表网络库等我2.开始阅读框架的源代码之前,先去google搜集下资料:这个框架是解决了什么问题?都是用了什么技术?分为多少个模块,每个模块之间有什么联系?尽量看官网英文的资料,因为中文技术博客的内容很多是错误的。3.试图将程序完整的跑起来,编译通过、修改配置文件,然后正常运行起来;这...

2020-06-25 08:26:55

极客时间-linux性能优化 34 关于 Linux 网络你必须知道这些(下)

衡量网络性能的指标有哪些呢?带宽吞吐量延迟 从发出网络请求,一直到收到远端响应,所需要的时间延迟。不同场景套接字信息netstat -nlp只查看监听套接字,显示数字地址和端口(而不是名字)显示进程信息其中接收队列(Recv-Q)和发送队列(Send-Q)需要特别关注,当他们的值不是0时,说明有网络包的堆积发生。在不同的套接字状态下,他们的含义不同当套接字处于Established状态时,Recv-Q表示套接字缓冲区还没有被应用程序取走的字节数Send-Q表.

2020-06-24 08:08:57

极客时间-linux性能优化 33 关于 Linux 网络你必须知道这些(上)

我的本职工作就是网络流量分析领域,所以网络这块的课程我很感兴趣物理链路上不能传输任意大小的数据包。网络接口配置的最大传输单元MTU,就是规定了最大的IP包大小。网络数据包超过MTU的大小,就会在网络层分片,以保证分片有的IP包不大于MTU。当一个网络帧到达网卡后,网卡会通过DMA将网络数据包放到环形收包队列中,然后通过硬中断,告诉中断处理程序已经收到网络包接着网卡中断处理程序会为网络帧分配skb_buff结构,并将其拷贝到skb_buff缓冲区中,然后再通过软中断,通知内核收到了..

2020-06-24 07:48:52

极客时间-linux性能优化 31.套路篇:磁盘 I O 性能优化的几个思路

31.套路篇:磁盘 I O 性能优化的几个思路一、磁盘和文件系统的基准测试首先,对磁盘和文件系统进行基准测试然后,根据公司对磁盘和文件系统的应用场景,评估出性能优化的指标是多少?推荐fio测试工具随机读,顺序读,随机写,顺序写direct:是否跳过系统缓存iodepth:表示使用异步io时,同时发出的io请求上限rw:io模式,顺序读写还是随机读写ioengine:io引擎bs:表示IO的大小filename:文件路径结果输出slat,clat,lat都是

2020-06-23 08:35:18

极客时间-linux性能优化 30 如何迅速分析出系统IO的瓶颈在哪里?

一、磁盘和文件系统的性能指标这节课主要是从不同的维度来整理下磁盘的性能指标和磁盘的性能工具工作排查问题都是在线上环境,希望能尽快分析出性能瓶颈,并做相应的优化或解决性能问题,那么如何能做到?首先要清楚知道哪些性能工具能提供哪些性能指标其次是需要获取某个性能指标时,知道什么工具能够获取最后,知其然知其所以然,每个性能指标间彼此有关联的,通过关联关系也能发现蛛丝马迹...

2020-06-23 07:45:48

极客时间-linux性能优化 29 Redis响应严重延迟如何解决?

今天终于把之前落下的课程都补齐了,心里好开心。学习之道,还是讲究持之以恒哈,每天坚持一点点,自己不觉得多累,然后技术上还有提高虽然今天的案例是redis,但是依旧还是锻炼那几个命令的熟练程度。我很喜欢每天提升技术的时间,redis这块的东西以前看过,但是很长时间不看,几乎都忘记了。...

2020-06-21 16:46:05

极客时间-linux性能优化 28 一个SQL查询要15秒这是怎么回事?

操作步骤top 整体分析下io性能,cpu性能,内存使用情况iostat -d -x 1命令,查看 I/O 性能IO请求都有哪些进程比较高呢?pidstat -d 1或iotop分析进程的数据读取,采用strace + lsof命令套路已经懂了,就是一点点分析,耐心点,慢慢找线索。...

2020-06-21 16:30:50

极客时间-linux性能优化 27 为什么我的磁盘IO延迟很高?

看到实验内容时,我会心一笑,感觉还是上次的流程pidstat查找到导致io性能的进程号然后strace查看到读写文件的系统调用write然后查看源代码就能定位到源代码行数然后,我就被打脸了,啪啪啪的iostat 已经证明磁盘 I/O有性能瓶颈,而 pidstat 也证明了某个进程引起的,但 strace 跟踪这个进程,却没有找到任何 write 系统调用。新工具filetop基于Linux内核的eBpf机制,主要跟踪内核中文件的读写情况,并输出线程id,读写大小,读写类型以.

2020-06-21 16:23:29

极客时间-linux性能优化 26 如何找出狂打日志的“内鬼”?

动手之前应该想清楚,要用哪些工具来做,以及工具的使用顺序又是怎么样的?初步想法:top->iostat->pidstat步骤1、top输出iowait很高,可能运行了io密集型应用查看内存使用,Buffer/cache的内存占用高达6G多,需要确认下缓存的使用是否合理?步骤2、iostat输出每秒写磁盘请求数是 64 ,写大小是 32 MB,写请求的响应时间为 7 秒, 而请求队列长度则达到了 1100。 超慢的响应时间和特长的请求队列长度,进一步验证了 I/O已经.

2020-06-21 16:08:21

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。