网站循环加载监控-C#
背景:
公司有一个报表的网站,服务器或系统不太稳定,导致客户有时候查看报表网址的时候网站打不开或者打开时间过长,影响用户体验
需求:
通过程序循环打开网址了解加载情况,使用谷歌浏览器内核、,程序开发不限平台,不限语言
分析:
首先网上随便找找看看有没有类似的工具等,寻找思路。开始的时候如果是监控一个网址,完全可以用谷歌浏览器,通过F12工具可以监控Network相关参数,能达到一次主动分析的需求。但是跟上级沟通后,想要程序自动去加载和刷新,从这点看就需要客制化程序开发。然后在网上找方法,也找到一些工具,但是是商业的要钱。主要是从谷歌浏览器嵌入Winfrom着手,监控网络包。既然是Windows平台使用谷歌浏览器打开网址。自己优先选自己比较熟悉的C#进行开发。虽然中间遇到很多很多问题,我就不一 一说明,我们现在就看结果,过程大家如果想交流可以评论留下联系方式沟通。
价值:
可在一台服务器或电脑上运行,比如一个小时或半个小时,了解重复加载一个网站的时间,能够对环境网络和网站加载性能做一个初步的掌握,省去了使用谷歌浏览器通过F12平凡刷新来主动查看
下载:
https://pan.baidu.com/s/1QtL0b0pVwZUxvU_mvDRZBQ
程序逻辑:
页面1:负责监听网络数据包情况
页面2:谷歌浏览器加载对应的网页 (页面2会通过加载的情况,回调页面1,显示相应的加载数据,页面最终加载时间通过最后一次加载的时间减去开始运行的时间)
程序主要界面:

找到对应的网站的IP:

设置网站的网址:

查看监控详情:

前提条件
.netframework需要是4.5.2版本及以上

如果程序不能正常运行,请安装以下组件:



需要原代码请先使用并评论留下您的邮箱
网站循环加载监控-C#的更多相关文章
- 实现LoaderCallbacks接口动态循环加载网上图片并展示在手机屏幕上 ...
1.布局xml文件 activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/re ...
- 关于ES6的module的循环加载
今天写js时,碰到了一个模块循环加载的错误,下面时例子: // testa.mjs import testb from './testb.mjs'; const {b} = testb; const ...
- vue 循环加载动态组件以及传值
今天遇到一个需求,某个页面是个动态页面,由多个子组件构成. 之前我们的做法是将N个需要的组件import进主页面,然后引用一下即可.但是现在遇到的问题是, 这个动态页面存在多个业务,有的业务需要某几个 ...
- 表单配置项写法,表单写成JSON数组套对象,一行是一个数组单位,一列是一个对象单位,然后再写一个公共组件读取这个配置,循环加载slot,外层载入slot的自定义部分,比如input select等,这种写法就是把组件嵌套改为配置方式
表单配置项写法,表单写成JSON数组套对象,一行是一个数组单位,一列是一个对象单位,然后再写一个公共组件读取这个配置,循环加载slot,外层载入slot的自定义部分,比如input select等,这 ...
- Vue 网站首页加载优化
Vue 网站首页加载优化 本篇主要讲解 Vue项目打包后 vendor.js 文件很大 如何对它进行优化 以及开启Vue的压缩 和 nginx gzip 压缩的使用, 其他就是对接口优化等 1. v ...
- JavaScript 模块的循环加载(循环依赖问题分析)
简介 "循环加载"(circular dependency)指的是,a 脚本的执行依赖 b 脚本,而 b 脚本的执行又依赖 a 脚本. 分析 使用 madge 工具进行循环加载分析 ...
- ES6 import 循环加载
1.示例 (1)a.js import {bar} from './b'; console.log('a.mjs'); console.log(bar); export let foo = 'foo' ...
- 关于解决 https 网站无法加载 http 脚本
前几天刚配置好https网站 然后今天浏览发现自己网站的地图插件不见了 然后看了一下报错显示 然后百度搜索一番找到了解决办法 <meta http-equiv="Content-Sec ...
- Github网站css加载不出来的处理方法(转,亲测有效)
转载链接:https://blog.csdn.net/qq_36589706/article/details/80573008因为工作需求,自己会经常使用到github,但是突然有一天打开github ...
随机推荐
- springboot的@Configuration文件读取static静态文件
错误 正确
- 获取link后的参数值
getQueryString:function(name){ var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i ...
- IntelliJ IDEA 创建 Git 分支并且 Push 到远程
在 IntelliJ 的右下角,你可以看到当前的 Git 分支,然后你可以单击这个分支后,在弹出的界面的最上方有一个新建分支的选项. 然后再弹出的界面中,输入你要创建的分支名称后回车输入. 然后从项目 ...
- x86—EFLAGS寄存器详解[转]
鉴于EFLAGS寄存器的重要性,所以将这一部分内容从处理器体系结构及寻址模式一文中单独抽出另成一文,这部分内容主要来自Intel Developer Mannual,在后续的内核系列中遇到的许多和EF ...
- 早停!? earlystopping for keras
为了获得性能良好的神经网络,网络定型过程中需要进行许多关于所用设置(超参数)的决策.超参数之一是定型周期(epoch)的数量:亦即应当完整遍历数据集多少次(一次为一个epoch)?如果epoch数量太 ...
- Makefile(三)
在平时使用中,可以使用以下的makefile来编译单独的代码 src = $(wildcard *.c) obj = $(patsubst %.c, %.o, $(src)) CC = gcc CFL ...
- 剑指offer35----复制复杂链表
题目: 请实现一个cloneNode方法,复制一个复杂链表. 在复杂链表中,每个结点除了有一个next指针指向下一个结点之外,还有一个random指向链表中的任意结点或者NULL. 结点的定义如下: ...
- ArcGIS Python获得一个图层所有线长
import arcpy # Create an empty Geometry object # g = arcpy.Geometry() # Run the CopyFeatures tool, s ...
- 【VMWare】虚拟机启动遇到黑屏,在命令行窗口输入netsh winsock reset并不管用 重新启动客户机就好了
现象:虚拟机启动后是莫名其妙的黑屏,而且它上面安装的MySql也无法访问了. 处置:上网百度方案,看到大多数网文推荐:“以管理员身份打开cmd,输入netsh winsock reset,然后重启机器 ...
- vue 动态组件,传递参数
<template> <div class="top"> <div class='nav'> <ul class='navHader'&g ...