Linux下的非阻塞IO库epoll

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

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四层协议。OS...

Nginx学习

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

TCP状态变迁图

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

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 Keepaliveke...
站点总览
  • 文章总数:278篇
  • 分类总数:15个
  • 评论总数:447条
  • 运行时间:6年288天
最近评论
徐小鹏小米手环5的睡眠监测确实不行,
Gordon那写入ES 只能单条写入加routing了? 不能bulk批量加吧? 会影响写入效率么?
Gordon有弊端的吧? 例如以用户ID作为routing 只适合按用户的搜索 没有传用户ID的就无...
多多非常好的文章,学习到了👍
窗外一叶我认为这本书里吹嘘的成分比较多,没有多少干货。移动通信网络(5G6G)和WiFi的界限会越来越...
aa懵逼
yhm流痞
马旭鹏路过
lukez比如ignore_older参数比clean_inactive长..其中逻辑请参考官方文档
QwQ按照教程配置IIS8.5主机环境Typecho伪静态问题终于解决了,救活了我的垃圾小站。