Linux下的非阻塞IO库epoll

今天看到一篇文章,对于epoll讲解的非常生动清晰,转载收藏一下,原文请点击here。生活中的一个例子假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面。如果你使用的阻塞IO模型来处理这个问题,那么你就只能一直守候在A号楼门口等待朋友的到来,在这段时间里你不能做别的事情,不难知道,这种方式的效率是低下的。进一步解释selec

- 阅读全文 -

WebSocket协议及Go中的用法

本文主要介绍WebSocket以及Websocket在Golang中的实现和使用。1. WebSocket是什么?这里先列两篇文章:《WebSocket 是什么原理?为什么可以实现持久连接?》,这个是知乎上的一篇文章,对于WebSocket讲的通俗易懂,建议先看一下。The WebSocket Protocol RFC6455,这个是WebSocket的RFC文档,所以内容非常全面(当然只涉及协议

- 阅读全文 -

Go网络编程——Socket

以前主要使用的是Linux C网络编程,现在学习了Golang,就总结一下Go中的socket编程,本文基于Go 1.7.4,和socket相关的代码在go/src/net/net.go文件中。网络协议模型回顾我们先来简单回顾一下网络写协模型。说到网络协议一般就两个模型:概念意义上的OSI(Open Systems Interconnect)的七层协议和实际中使用的TCP/IP四层协议。OSI七层

- 阅读全文 -

Nginx学习

《每周学习一门新技术》第一周——Nginx。1. Nginx是什么Nginx(发音为“engine x”)是一个高性能、轻量级的web服务器,反向代理服务器,邮件服务器。我们也可以用它作为代理服务器,实现负载均衡(LB,Load Balance)和高可用性(HA,High Availability)。它最初由俄罗斯人Igor Sysoev开发,发布于BSD许可证下。现在也有商业版Nginx Plu

- 阅读全文 -

TCP状态变迁图

TCP的状态变迁图囊括了TCP的所有状态,这里我们详细学习一下。在此之前,我们先简单回顾一下TCP的三步握手和“四步分手”。1. TCP的三步握手因为TCP是全双工的(即数据可以在两个方向上同时传递),所以建立一个TCP连接需要三步握手。如下图,是TCP三步握手的状态图:服务器端通过调用一系列接口(通常是socket、bind、listen)准备好接受外来的连接,我们称之为被动打开(passive

- 阅读全文 -

tcpdump使用技巧

之前写网络程序,使用过wireshark,不过发现在Linux平台,特别是服务器上面,tcpdump这个工具使用的更多一些,所以学习一下。网上的例子大多比较冗余,我觉得对于这种强大的工具,大多数人大多数场景中只要掌握最常用的一些语法和使用技巧即可。需要研究某个细节的,直接去看man文档最好。偶然的机会,发现潜水大叔的一篇文章我觉得总结的很清楚明了,收藏学习一下(高级部分暂未转载,有兴趣的可以去看原

- 阅读全文 -

TCP协议头

1. TCP的服务TCP处于传输层,提供了一种面向连接的、可靠的字节流(byte stream)服务。第一个特性面向连接是指两个TCP应用(通常是一个客户端和一个服务端)在彼此交换数据之前必须先建立一条连接。在一个TCP连接中,仅有两方进行彼此通信。第二个特性可靠性是通过下列方式来提供的:应用数据被分割成TCP认为最适合发送的数据库(这和UDP完全不同,在UDP中,应用程序产生的数据报长度保持不变

- 阅读全文 -

TCP Keepalive基本知识

TCP keepalive在很多场景下都不是必须的,但是在某些特定的场景下,这个特性却会是非常有用。从TCP keepalive(后面称为keepalive)这个名字就可以大概理解这个特性的作用:keep tcp alive。我们可以通过检查我们的socket(TCP sockets)来判断网络连接是不是正常的(running or broken)。1. 什么是TCP Keepalivekeepa

- 阅读全文 -

微信公众号

公众号文章说明

随机文章

最近回复

  • 马旭鹏: 路过
  • lukez: 比如ignore_older参数比clean_inactive长...
  • QwQ: 按照教程配置IIS8.5主机环境Typecho伪静态问题终于解决...
  • W_Z_C: 果然可以,看了半天文档竟然没有发现这个插件,也是醉了……
  • xiongjunkun: hi, 你好, 能够详细解释一下导致filebeat重传的第二种...
  • Aidan: 博主您的博客写的非常好,相见恨晚 ps: 不好意思,有点激...
  • Aidan: 博客您的博客写的非常好
  • Aidan: 非常好的网站
  • repostone: 非技术的路过。
  • 一方: 但是我的action队列抢占了资源,导致action不能并行,难...

分类

标签

归档