httpstat 应该是一个 python 封装后的 curl 工具能够展现 一些客户端连接网站的时间消耗,最近在看tls 感觉挺有用处的 简单学习一下

1. centos7 安装python 和 pip

yum intall python -y
#安装python
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
#下载pip安装文件
python get-pip.py
#安装pip

2. 安装httpstat模块

pip install httpstat

3. 检测一下连接信息等

命令和结果分别为

httpstat www.ibm.com

Connected to 221.230.145.189: from 10.24.101.161:

HTTP/1.1  Moved Permanently
Server: GHost
Content-Length:
Location: https://www.ibm.com/
Date: Fri, Sep :: GMT
Connection: keep-alive
X-Content-Type-Options: nosniff
X-XSS-Protection: ; mode=block
Content-Security-Policy: upgrade-insecure-requests Body stored in: /tmp/tmpUz7t3D DNS Lookup TCP Connection Server Processing Content Transfer
[ 5515ms | 46ms | 51ms | 0ms ]
| | | |
namelookup:5515ms | | |
connect:5561ms | |
starttransfer:5612ms |
total:5612ms

百度的结果为:

httpstat www.baidu.com
Connected to 115.239.210.27: from 10.24.101.161: HTTP/1.1 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: Keep-Alive
Content-Length:
Content-Type: text/html
Date: Fri, Sep :: GMT
Etag: "58860504-94d"
Last-Modified: Mon, Jan :: GMT
Pragma: no-cache
Server: bfe/1.0.8.18
Set-Cookie: BDORZ=; max-age=; domain=.baidu.com; path=/ Body stored in: /tmp/tmpcavbBI DNS Lookup TCP Connection Server Processing Content Transfer
[ 28ms | 60ms | 60ms | 0ms ]
| | | |
namelookup:28ms | | |
connect:88ms | |
starttransfer:148ms |
total:148ms

需要指定是 https 还是 http 不然 走的貌似不是一个 如下面。

格式坏了 将就着看吧


[root@centos75master ~]# httpstat https://www.baidu.com
Connected to 115.239.210.27:443 from 10.24.101.161:50884

HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: Keep-Alive
Content-Length: 2443
Content-Type: text/html
Date: Fri, 21 Sep 2018 08:16:09 GMT
Etag: "58860429-98b"
Last-Modified: Mon, 23 Jan 2017 13:24:57 GMT
Pragma: no-cache
Server: bfe/1.0.8.18
Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/

Body stored in: /tmp/tmpkUm2PH

DNS Lookup TCP Connection TLS Handshake Server Processing Content Transfer
[ 4ms | 30ms | 125ms | 36ms | 0ms ]
| | | | |
namelookup:4ms | | | |
connect:34ms | | |
pretransfer:159ms | |
starttransfer:195ms |
total:195ms

[root@centos75master ~]# httpstat http://www.baidu.com
Connected to 115.239.211.112:80 from 10.24.101.161:44078

HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: Keep-Alive
Content-Length: 2381
Content-Type: text/html
Date: Fri, 21 Sep 2018 08:16:16 GMT
Etag: "588604fc-94d"
Last-Modified: Mon, 23 Jan 2017 13:28:28 GMT
Pragma: no-cache
Server: bfe/1.0.8.18
Set-Cookie: BDORZ=27315; max-age=86400; domain=.baidu.com; path=/

Body stored in: /tmp/tmpMV8IXt

DNS Lookup TCP Connection Server Processing Content Transfer
[ 4ms | 31ms | 39ms | 1ms ]
| | | |
namelookup:4ms | | |
connect:35ms | |
starttransfer:74ms |

 

网上一个其他命令

httpstat https://www.baidu.com -X POST --data-urlencode "a=b" -v

httpstat的简单使用的更多相关文章

  1. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  2. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  3. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  4. 哪种缓存效果高?开源一个简单的缓存组件j2cache

    背景 现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的.我在项目中也开始接触一些缓存的需求. 开始简单的就用jvm(java托管内存)来做缓存,这样对于单个应用服务 ...

  5. 在Openfire上弄一个简单的推送系统

    推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...

  6. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  7. 使用 Nodejs 搭建简单的Web服务器

    使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块.文件系统.url解析模块. ...

  8. ASP.NET Aries 入门开发教程2:配置出一个简单的列表页面

    前言: 朋友们都期待我稳定地工作,但创业公司若要躺下,也非意念可控. 若人生注定了风雨飘摇,那就雨中前行了. 最机开始看聊新的工作机会,欢迎推荐,创业公司也可! 同时,趁着自由时间,抓紧把这系列教程给 ...

  9. 简单入门canvas - 通过刮奖效果来学习

    一 .前言 一直在做PC端的前端开发,从互联网到行业软件.最近发现移动端已经成为前端必备技能了,真是不能停止学习.HTML5新增的一些东西,canvas是用的比较多也比较复杂的一个,简单的入门了一下, ...

随机推荐

  1. 【转载】用纯粹的C++编写COM组件

    原文:http://blog.csdn.net/ghj1976/article/details/3441 下载本文代码 本文提供一个完全用C++实现的进程内(DLL)COM服务器,不要ATL或MFC提 ...

  2. GPUImage每个类的作用

    28 #import "GPUImageBrightnessFilter.h"                //亮度 29 #import "GPUImageExpos ...

  3. 学生管理之Bootstrap初体验

    Bootstrap,来自 Twitter,是目前比较受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. Bootstra ...

  4. 动态权限<三>华为小米特殊机制

    动态权限对于谷歌来说从android6.0引入,对于国内的rom来说,这个题目不是好的选择题.因为大多数时候由于使用群众的层次不同,有些人在乎隐私的泄露,而更多的人却并不关心,使用了动态权限,增加了用 ...

  5. git 自己易忘的命令

    1. git 更新远程分支列表 git remote update origin --prune git remote update origin -p 2. 查看远程分支: git branch - ...

  6. C++实现从一个文件夹中读出所有txt文件

    前段时间做项目需要读取一个文件夹里面所有的txt文件,查询资料后得到以下实现方法:首先了解一下这个结构体struct _finddata_t {    unsigned    attrib;    t ...

  7. 初学者浅度剖析eShopOnContainers 里面用到的MediatR .

    一.介绍 简单了解下开源项目 MedatR, eShopOnContainers, MediatR作者Jimmy Bogard : Simple mediator implementation in ...

  8. 第1章 Linux命令行简介

    1.1 Linux命令行概述 1.2 在Linux命令行下查看命令帮助 1.3 Linux关机.重启.注销命令 1.4 老男孩的运维思想 1.1 Linux命令行概述 1.1.1 Linux命令行的作 ...

  9. Proe/Creo 零件库mnu文件制作批处理

    proe零件库自定义时需要菜单文件mnu,百度了下网上还没有人制作,偶然间Google时在PTC论坛上看到一德国人分享了自己制作的bat文件用于对文件夹(及子文件夹)产生mnu文件,我在将他的文件翻译 ...

  10. iOS分类Category探索

    什么是Category? Category是Objective-C 2.0之后添加的语言特性,Category的主要作用是为已经存在的类添加方法,一般称为分类,文件名格式是"NSObject ...