Apache HttpComponents简介

介绍

Apache HttpComponents™项目负责创建和维护一个专注于HTTP和相关协议的低级Java组件工具集。
该项目在Apache软件基金会( http://www.apache.org )下运行,并且是很大的开发人员和用户社区的一部分。

超文本传输协议(HTTP)可能是当今Internet上使用的最重要的协议。 Web服务,支持网络的设备和网络计算的发展继续将HTTP协议的作用扩展到用户驱动的Web浏览器之外,同时增加了需要HTTP支持的应用程序的数量。

HttpComponents专为扩展而设计,同时为基本HTTP协议提供强大支持。对于构建支持HTTP的客户端和服务器应用程序(如Web浏览器,Web spiders,HTTP代理,Web服务传输库,或者,利用或扩展HTTP协议以进行分布式通信的系统)都可能对HttpComponents感兴趣。


结构

Apache HttpComponents包括HttpCore、HttpClient和Asynch HttpClient三部分。

HttpComponents Core

HttpCore是一组低级HTTP传输组件,可用于以最小的占用空间构建自定义客户端和服务器端HTTP服务。 HttpCore支持两种I / O模型:基于经典Java I / O的阻塞I / O模型和基于Java NIO的事件驱动的非阻塞I / O模型
阻塞I / O模型更适合于数据密集型,低延迟场景中。而非阻塞模式可能更适合于高延迟场景,在那里原始数据吞吐量与处理数千个并发的HTTP连接的能力相比,不太重要。

HttpCore不是

  • HttpClient的替代品
  • Servlet APIs的替代品

HttpComponents Client

HttpClient是一个基于HttpCore的HTTP/1.1兼容的HTTP代理实现。 它还为客户端身份验证,HTTP状态管理和HTTP连接管理提供可重用的组件。 HttpComponents Client是Commons HttpClient 3.x的继承者和替代品。 强烈建议Commons HttpClient的用户升级。

HttpClient不是

  • HttpClient不是浏览器。它是一个客户端的HTTP通信库。HttpClient的目的是传输和接收HTTP消息。HttpClient不会尝试处理内容、执行嵌入在HTML页面中的javascript、猜测内容类型(如果没有显式设置)、重新格式化请求/重写位置uri、或其他与HTTP传输无关的功能。

HttpComponents AsyncClient

Asynch HttpClient是一个基于HttpCore NIO和HttpClient组件的HTTP/1.1兼容的HTTP代理实现。它是Apache HttpClient的一个补充模块,适用于处理大量并发的能力比原始数据吞吐量的性能更重要的特殊情况。

参考:HttpComponents官方介绍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值