网站循环加载监控-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 ...
随机推荐
- FtpHelper.cs
网上找了好多,感觉还是自己这个使用起来方便点,记录一下! using System; using System.Collections; using System.IO; using System.L ...
- 下载 OllyDbg
http://www.ollydbg.de/
- Linux下MongoDB非正常关闭启动异常解决方法
1.将配置信息写入一个文件中 vim mongo.conf 里面写如下内容: dbpath=/usr/local/mongodb/data/ logpath=/usr/local/mongodb/lo ...
- 牛券Cow Coupons
USACO12FEB 久违的奶牛题. 题意: FJ准备买一些新奶牛,市场上有 $ N $ 头奶牛 $ (1 \leq N \leq 50000) $ ,第i头奶牛价格为 $ P_i (1 \leq P ...
- nginx关于uri的变量
在nginx中有几个关于uri的变量,包括$uri $request_uri $document_uri,下面看一下他们的区别 : $request_uri: /stat.php?id=1585378 ...
- zookeeper系列(九)zookeeper的会话详解
作者:leesf 掌控之中,才会成功:掌控之外,注定失败. 出处:http://www.cnblogs.com/leesf456/p/6103870.html尊重原创,大家共同学习: 一.前言 ...
- 代码bug管理工具bugfree与禅道
禅道官网有一键安装包,一键安装即可用 bugfree 搭建lnmp环境 详情参考zabbix 解压bugfree包 到nginx的html里 unzip bugfree3.0.4.zip mv b ...
- hibernate中session的管理方式
package loaderman.c_session; import loaderman.b_second_cache.Dept; import loaderman.b_second_cache.E ...
- flutter AnimatedPositioned
Positioned 的动画版. 只有是 Stack 的 child 时才能工作. 如果 child 的 size 在动画过程会改变,则 AnimatedPositioned 是很好的选择 doubl ...
- Qt编写数据可视化大屏界面电子看板3-新建布局
一.前言 能够新建布局,也是数据可视化大屏界面电子看板系统中的必备功能之一,新建布局这样的功能一般做到右键菜单中,单击新建布局菜单,弹出输入框要求输入新的布局的名称,为了更符合国情,直接支持中文名称, ...