Magician 1.1.10 发布,http 支持 keep-alive 保活

标签: magician http keep | 发表时间:2021-05-09 12:58 | 作者:
出处:https://www.oschina.net/news/project

本次更新主要是对http解码器 加入了 keep-alive保活机制,让一个tcp连接可以被同一个http客户端复用,从而减少建立tcp连接的开销,在一定程度上提高了吞吐量。

如何使用

发起http请求的时候 加上这个请求头【connection:keep-alive】,一旦加了这个 服务端将会保持tcp连接,响应之后不再关闭。现在浏览器一般都是默认有的。

如果不想用这个机制,那么务必要传这个请求头【connection:close】 或者干脆不传connection请求头。

如何回收连接

目前是第一版,还不是特别完美,回收连接主要靠两个点

  1. 系统的tcp keepalive,这个是系统带的功能 如果tcp连接闲置过久 就会被回收
  2. 客户端主动断开,如果客户端断开了连接,那么服务端会收到一个read事件,读取数据的时候会返回-1,后端对这个-1做了判断,一旦发现返回-1就会关闭tcp连接

这个机制带来的吞吐量如何

在本机用wrk做了一轮测试,结果如下图所示

测试脚本如下

本机配置如下

想了解更多可以访问官网

http://magician-io.com

相关 [magician http keep] 推荐:

Magician 1.1.10 发布,http 支持 keep-alive 保活

- - 开源中国-软件更新资讯
本次更新主要是对http解码器 加入了 keep-alive保活机制,让一个tcp连接可以被同一个http客户端复用,从而减少建立tcp连接的开销,在一定程度上提高了吞吐量. 发起http请求的时候 加上这个请求头【connection:keep-alive】,一旦加了这个 服务端将会保持tcp连接,响应之后不再关闭.

java http长链接(keep-alive)导致的问题

- - 掘金后端
两种由http长链接(keep-alive)导致的问题,当然这两种问题都有多种原因导致,这里只分析针对keep-alive相关而产生的异常. at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:140) 复制代码.

用Keep替代OmniFocus作GTD时间管理

- - 极客公园-GeekPark
[核心提示]OmniFocus 和 Keep 是两款设计目的不同的产品,但利用 Keep 的颜色功能也能实现 GTD 时间管理的作用. OmniFocus 被称为 GTD 时间管理的神器,可惜除了昂贵的价格外,它只能在 Apple 的生态系统中工作. 这里我们介绍使用 Google Keep 替代它的方法.

HTTP Headers 入门

- johnny - Time Machine
非常感谢 @ytzong 同学在twitter上推荐这篇文章,原文在此. 本文系统的对HTTP Headers进行了简明易懂的阐述,我仅稍作笔记. 什么是HTTP Headers. HTTP是“Hypertext Transfer Protocol”的所写,整个万维网都在使用这种协议,几乎你在浏览器里看到的大部分内容都是通过http协议来传输的,比如这篇文章.

HTTP基础

- - ITeye博客
HTTP的结构主要包括下面几个要点:. HTTP的版本主要有1.0,1.1 和更高版本.    1.1 及以上版本允许在一个TCP连接上传送多个HTTP协议,1.0能 .    1.1 及以上版本多个请求和响应可以重叠,1.0不能.    1.1 增加了很多的请求头和响应头.     一个请求行,若干小心头,以及实体内容,其中的一些消息头和实体内容是可选的,消息头和实体内容需要空行隔开.

HTTP Header 详解

- - 博客园_Ruby's Louvre
HTTP(HyperTextTransferProtocol)即超文本传输协议,目前网页传输的的通用协议. HTTP协议采用了请求/响应模型,浏览器或其他客户端发出请求,服务器给与响应. 就整个网络资源传输而言,包括message-header和message-body两部分. 首先传递message- header,即 http header消息.

HTTP/2 in Netty

- -
Here, we created a context for the server with a JDK SSL provider, added a couple of ciphers, and configured the Application-Layer Protocol Negotiation for HTTP/2..

HTTP负载测试

- - 博客 - 伯乐在线
英文原文: ON HTTP LOAD TESTING 来源: oschina. 有很多人在谈论HTTP服务器软件的性能测试,也许是因为现在有太多的服务器选择. 这很好,但是我看到有人很多基本相同的问题,使得测试结果的推论值得怀疑. 在日常工作中花费了很多时间在高性能代理缓存和源站性能测试方面之后,这里有我认为比较重要的一些方面来分享.

HTTP断点续传

- - CSDN博客互联网推荐文章
要实现断点续传的功能,通常都需要客户端记录下当前的下载进度,并在需要续传的时候通知服务端本次需要下载的内容片段. HTTP1.1协议(RFC2616)中定义了断点续传相关的HTTP头 Range和Content-Range字段,一个最简单的断点续传实现大概如下:.   1.客户端下载一个1024K的文件,已经下载了其中512K.

http-kit 1.2 发布

- - 开源中国社区最新新闻
Http-kit 是主要由Java 和Clojure开发,为Clojure定制的零依赖的Http lib,包括异步的高性能HTTP Server 和 HTTP Client. 在普通的PC上进行性能测试时,http-kit server 每秒能处理数万个请求. 修复处理文件上传时,content-type没能正确处理.