Python小工具之httpstat网络分析

news2024/11/15 20:50:56

一、简介

Python httpstat是一个基于Python的命令行工具,用于测量HTTP请求的性能和状态信息。它能够向目标服务器发送HTTP请求,并显示详细的统计信息,包括DNS解析时间、建立连接时间、TLS/SSL握手时间、首字节时间、总时间等。这些信息对于排查网络问题、优化Web应用程序以及监控HTTP请求的性能非常有帮助。

httpstat通过封装curl命令,将整个连接过程每个阶段耗时可视化统计出来,就如README所述:"httpstat visualizes curl(1) statistics in a way of beauty and clarity。"

主要功能:

显示HTTP请求的详细性能统计信息。
支持HTTP和HTTPS协议。
提供对不同阶段的时间度量,如DNS解析、连接建立、TLS/SSL握手等。
支持自定义HTTP请求头和参数。
支持跟踪重定向。
支持IPv6。

二、安装使用

1、离线下载安装

wget https://raw.githubusercontent.com/reorx/httpstat/master/httpstat.py
mv httpstat.py /usr/bin/httpstat 
chmod +x /usrbin/httpstat

2、在线pip安装 

pip install httpstat

3、使用案例

httpstat https://www.baidu.com

httpstat将向指定URL发送HTTP请求,并显示详细的性能统计信息,如DNS解析时间、连接建立时间、TLS/SSL握手时间、首字节时间、总时间等。

从这个测试来看,dns这个环节耗时较长,指定新的dns服务器后,再去监测,明显响应时间得到提升。

三、展开使用 

在实际应用中,可能需要定期监测你的网站或Web应用程序的性能。使用Python httpstat,可以编写一个脚本,定期测试关键URL,并将性能数据记录下来,以便进行性能分析和长期趋势分析。

import subprocess
import time

# 要监控的URL列表
urls = ["https://www.example.com", "https://www.example2.com"]

while True:
    for url in urls:
        # 运行httpstat命令并捕获输出
        command = f"httpstat {url}"
        result = subprocess.run(command, shell=True, capture_output=True, text=True)

        # 将性能数据记录到日志文件
        with open("performance.log", "a") as log_file:
            log_file.write(result.stdout)

    # 每隔一段时间执行一次测试
    time.sleep(3600)  # 每小时执行一次

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1956660.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI写作有用?未成年不准看巴黎奥运会!——早读(逆天打工人爬取热门微信文章解读)

早上动力AI该作的念头,发觉改完,狗屁不是 引言Python 代码第一篇 洞见 最残忍的社会现实:你能挣多少钱,都是被设计好的第二篇 啦啦啦 开剪辑啦结尾 引言 呀 我们正年轻着 最近觉得有点烦 因为自己有点堕怠 但是呢 越烦越急躁 导致…

网络协议一 : 搭建tomacat,intellij IDEA Ultimate 的下载,安装,配置,启动, 访问

需要搭建的环境 1.客户端--服务器开发环境 客户端:浏览器(HTMLCSSJS) 服务器:JAVA 1.安装JDK,配置JAVA_HOME 和 PATH 2.安装Tomcat 3.安装IDE--intellij IDEA Ultimate 是旗舰版的意思。 2.TOMCAT 的下载和解…

基于嵌入-对比学习的联邦知识图谱补全

1 引言 1.1 现存问题 在联邦学习中,跨客户端的数据异质性(即非相同分布的数据)是主要挑战,因为当数据异质性存在时,本地目标可能与全局目标不同。 如图所示,School KG中的三元组表示Bob和Jack的学术信息,而ecommerc…

Redis与缓存

文章目录 Redis与缓存一致性问题大Key问题缓存穿透缓存击穿缓存雪崩 Redis与缓存 Redis作为缓存具有高性能、丰富的数据结构和灵活的过期机制等优点。由于Redis将数据存储在内存中,它能提供极低的延迟和高吞吐量,适合用于缓存数据库查询结果、会话数据和…

集成测试:确保软件模块协同工作的关键步骤

目录 前言1. 集成测试的概念1.1 增量集成测试1.2 大爆炸集成测试 2. 集成测试的主要作用2.1 确保模块间正确交互2.2 发现设计缺陷2.3 提高系统稳定性 3. 集成测试在整个测试过程中的地位3.1 从单元测试到集成测试3.2 从集成测试到系统测试 4. 常用的集成测试工具4.1 JUnit4.2 T…

嵌入式开发测试实训室解决方案

一、建设背景 随着物联网、人工智能等技术的飞速发展,嵌入式系统作为这些技术的重要载体,其重要性日益凸显。为了满足市场对嵌入式技术人才的需求,培养具有扎实理论基础、熟练实践技能及创新能力的嵌入式开发工程师,设计并建设一…

3. 类的生命周期

类的生命周期是指一个类被加载,使用,卸载的一个过程,如下图: 类的加载阶段: 加载(Loading)阶段第一步是类加载器根据类的**全限定名(也就是类路径)**通过不同的渠道以二进制流的方式获取字节码…

ClkLog:开源用户行为分析框架,让数据分析更轻松

ClkLog:开源用户行为分析框架,让数据分析更轻松 在数据驱动的时代,找到一个好用的用户行为分析工具真是难上加难。但是今天你有福了,开源免费的 ClkLog 就是你的不二选择!本文将为你详细介绍 ClkLog 的功能特点、技术架…

OpenCV 彩色直方图

彩色直方图 (1)直方图是图像中像素强度分布。 (2)直方图统计了每一个强度值所具有的像素个数。 (3)cv2.calcHist(images, channels, mask, histSize, ranges) import cv2 import matplotlib.pyplot as …

2023年系统架构设计师考试总结

原文链接:https://www.cnblogs.com/zhaotianff/p/17812187.html 上周六参加了2023年系统架构设计师考试,这次考试与以前有点区别,是第一次采用电子化考试,也是教材改版后的第一次考试。 说说考前准备:为了准备这次考试…

cadence SPB17.4 - allegro - DRC error “Line to SMD Pin Same Net Spaing“

文章目录 cadence SPB17.4 - allegro - DRC error "Line to SMD Pin Same Net Spaing"概述笔记END cadence SPB17.4 - allegro - DRC error “Line to SMD Pin Same Net Spaing” 概述 铺铜前DRC正确。 铺铜后,报错 DRC error “Line to SMD Pin Same …

Squeeze-and-Excitation Networks

1、引言 论文链接:Squeeze-and-Excitation Networks (thecvf.com) 为了提高 CNN(convolutional neural network) 的表示能力,最近的几种方法已经显示出增强空间编码的好处。而 Jie Hu[1] 等专注于通道关系并提出了 SE(Squeeze and Excitation) 块&#x…

uniapp 使用css实现大转盘

思路: 1.一个原型的外壳包裹 2.使用要分配的个数,计算出角度,利用正切函数tan计算出角度对应对边长度 3.使用clip-path画出一个扇形 4.使用v-for循环出对应的份数,依次使用transform rotate旋转对应的角度。 注意&#xff1a…

DM集群的高可用的配置方式(多语言)

一、介绍 强调以下:dm_svc.conf必须放置到应用服务器上才行,放到其他服务器上识别不到。 文章中有的框架可能没写到并不代表不支持,有没提到的可文章下方留言。 1.dm_svc.conf的作用: dm_svc.conf文件主要是为了当DM数据库集群…

ES(ElasticSearch)倒排索引

目录 正排与倒排索引 1.正排索引 作用: 优点: 缺点: 2.倒排索引 原理: 倒排索引的构建流程: 倒排索引的搜索流程: 优点: 缺点: 3. 应用场景 倒排索引中有几个非常重要的概念…

Skyeye云智能制造企业版源代码全部开放

智能制造一体化管理系统 [SpringBoot2 - 快速开发平台],适用于制造业、建筑业、汽车行业、互联网、教育、政府机关等机构的管理。包含文件在线操作、工作日志、多班次考勤、CRM、ERP 进销存、项目管理、EHR、拖拽式生成问卷、日程、笔记、工作计划、行政办公、薪资模…

【图文详解】Spring是如何解决循环依赖的?

Spring是如何解决循环依赖的呢? 很多小伙伴在面试时都被问到过这个问题,刷到过这个题的同学马上就能回答出来:“利用三级缓存”。面试官接着追问:“哪三级缓存呢?用两级行不行呢?” 这时候如果没有深入研究…

AI副业赚钱免费资源大汇总

在当今数字化时代,人工智能(AI)的热潮无处不在,许多人对于如何利用AI技术来创造收入机会感到好奇。本文将介绍一个名为aimoneyhunter的开源项目,这是一个专注于AI副业赚钱的资源汇总,旨在帮助人们在AI时代找…

技术干货 | 针对Spring-Boot 框架漏洞的初探

0x1 前言 这篇文章主要是给师傅们介绍下Spring-Boot 框架漏洞的打法以及主要对于Spring-Boot漏洞的接口泄露信息进行一个分析,后面使用了曾哥的Spring-Boot漏洞扫描工具,可以很大减轻我们对于这个漏洞接口的分析。 0x2 Spring框架简述 Spring是一个ja…

Ollama 在Windows Server 2019中部署 qwen:4b

1、环境 1.1、Ollama 1.2、Windows Server 2019 1.3、qwen:4b 1.4、nginx-1.27.0 2、部署后效果如下。 3、环境安装包下载链接包含本文所有的配置内容。 https://download.csdn.net/download/xingchengaiwei/89571623 4、安装ollama,官网下载地址Download Ollama…