Andrew's Blog

Stay hungry, Stay foolish.


  • Home

  • About

  • Tags

  • Categories

  • Archives

Thrift序列化协议浅析

Posted on 2019-02-24
一、什么是Thrift ?Thrift整体架构图: Thrift是一套包含序列化功能和支持服务通信的RPC框架,主要包含三大部分:代码生成、序列化框架、RPC框架,大致相当于protoc + protobuffer + grpc,并且支持大量语言,保证常用功能在跨语言间功能一致,是一套全栈式的RPC ...
Read more »

gcc/g++常用编译选项和gdb常用调试命令

Posted on 2018-11-25 | In C/C++
gcc/g++编译器是我们写编译C/C++程序时离不开的编译工具,而gdb又是调试C/C++程序的利器,这一篇文章我们记录一下它们的惯常用法。 gcc/g++常用编译选项 选项 作用 -c 生成可目标文件,但不进行链接 -o 指定生成文件的文件名 -g 在目标文件中添加调试信息, ...
Read more »

io多路复用的边缘触发模式和水平触发模式

Posted on 2018-11-25 | In OS
io多路复用是内核同时监控多个文件描述符,当文件描述符上某事件(比如读和写)就绪,就会向调用进程发送通知的机制。io多路复用有两种触发通知的机制—边缘触发(Edge Triggered)和水平触发(Level Triggered)。这一篇文章就讲一讲这两种触发机制。 水平触发如果文件描述符上可以非阻 ...
Read more »

linux进程组、会话以及任务管理

Posted on 2018-10-31 | In OS
进程组当我们在终端中敲下一条命令,然后按下回车的时候,Shell会开启一个新进程来执行这条命令。如果这条命令是由管道连接起来的多个命令组成的话,Shell便会开启多个进程来执行这一组任务。无论是单独的一条命令,还是由管道连接的多条命令,都会被放入到一个新的进程组(任务)中。只包含一条命令的时候,就会 ...
Read more »

聊聊Python内存管理

Posted on 2018-10-08 | In Python
python作为一门解释型语言,以代码简洁易懂著称。我们可以直接对名称赋值,而不必声明类型。名称类型的确定、内存空间的分配与释放都是由python解释器在运行时自动进行的。python这一自动管理内存功能极大的减小了程序员负担,这也是成就python自身的重要原因之一。所以,这一篇文章我们就聊一聊 ...
Read more »

Linux虚拟内存

Posted on 2018-08-19 | In OS
为了更有效的管理内存并且少出错,现代操作系统提供了一种对主存的抽象概念,叫做虚拟内存(VM)。虚拟内存提供了三个重要的能力:1.它将主存(物理内存)看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保留活动区域,并且根据需要在磁盘和主存之间来回交换数据。通过这种方式它高效的使用了主存。2.他为每 ...
Read more »

一起来记Linux命令(不定期更新).

Posted on 2018-07-27
ls下面介绍几个关于ls命令没怎么用到过的option option description -h 与-l选项合用,可以显示带单位的文件夹或文件大小 -t 以文件修改时间排序 cd回到家目录: 1$ cd ~ 回到最近一次所在的位置: 1$ cd - mkdir 参数 描 ...
Read more »

TCP流量控制与拥塞控制

Posted on 2018-07-21 | In Network
追求高速的传输速率是当今网络的永恒主题,但有时候我们也需要对发送方进行控制以提供流量控制服务和拥塞控制服务。这一片文章就介绍一下TCP的流量控制服务和拥塞控制服务。 流量控制流量控制的定义前面讲过,一条TCP连接每一侧主机都为该连接设置了接收缓存。当该TCP连接收到了正确的、按序的字节后,他就将数据 ...
Read more »

TCP的流水线机制

Posted on 2018-07-20 | In Network
流水线机制在前面我们我们介绍TCP数据传输的过程中,讲到发送方发送一个报文段,然后等待接收方的确认报文,当确认无误之后,发送方接着发送下一个报文段。这样一种发送接收的过程是一种停等的(Stop-and-wait operation)。显然,它的传输性能是一个问题,特别是在今天的高速网络中更是如此。 ...
Read more »

TCP连接的建立与断开

Posted on 2018-07-17 | In Network
TCP是面向连接的。“三次握手、四次挥手”形象的描述了TCP连接和建立的过程,这一篇文章我们就讲一讲TCP连接的建立与断开。 TCP连接的建立假设运行在一台主机上的进程相与另一台主机上的一个进程建立一条连接。客户应用进程首先通知客户TCP,它想建立一个与服务器上的某个进程之间的连接。客户中的TCP会 ...
Read more »
123…6

Andrew

All In

60 posts
13 categories
67 tags
Creative Commons
© 2017 — 2020 Andrew