Spring Insight – Web应用程序分析

您是否正在使用Spring Framework编写Web应用程序? 您是否曾经想过引擎盖下发生了什么? 为什么您的应用程序响应如此缓慢? 在您仍然等待应用程序响应的同时,为什么窗外的蜗牛如此之快地消失在远处? 您应该:), Spring Insight在此任务上会非常有帮助。

您应该从tc Server Developer Edition开始,它实际上是在类固醇上众所周知的Apache Tomcat 6.0;)。 然后,您应该看一下Spring Insight –该工具作为普通的Web应用程序安装在tc Server中,可以让您踏入自己的应用程序;)

我仅将一些Spring Insight的屏幕截图付诸实践,有关在Spring Source网页上找到与安装和使用tc Server以及Spring Insight的详细信息。

开始吧 ;)

单击图表上的条形图之一时,您将看到请求处理的详细信息:

如您在屏幕上看到的,请求处理花费了316毫秒。 跟踪详细信息部分包含在请求处理期间执行的所有方法以及已执行的所有数据库查询。

对于每个方法/数据库调用,您可以看到详细信息,例如输入参数,执行的SQL查询或返回的值(仅方法)。 选择请求详细信息将为您显示快速的请求摘要以及请求和响应标头。

您可能想知道为什么在视图渲染期间看到数据库查询? 如您所知,JPA的延迟加载延迟了从数据库加载实体,直到首次使用它们为止,并且这种情况发生在视图渲染期间。 如您在上面的示例中看到的,存在潜在的改进地方(考虑删除延迟使用,在获取延迟实体时使用批处理读取而不是一个接一个地读取)。

Spring Insight还为您提供了有关已用应用程序资源的一些统计信息–请参阅页面顶部的浏览资源。

当然,您可以看到每个资源的详细信息:

总结一下这个卡通文章:) –对于所有对Spring Framework迷上瘾的开发人员来说是一个非常有趣的工具–但实际上不仅对他们来说– Spring Insight的某些部分也应适用于普通Servlet或使用其他框架编写的应用程序。 也有可能编写您自己的Spring Insight插件,所以不要犹豫;)使用它并扩展;)–这是值得的。

参考: Web应用程序概要分析-来自我们JCG合作伙伴 Warlock的Spring Insight , 网址为“ Warlock's Thoughts”博客 。

相关文章 :
  • jqGrid,REST,AJAX和Spring MVC集成
  • SpringMVC 3 Tiles 2.2.2集成教程
  • Spring MVC3 Hibernate CRUD示例应用程序
  • Spring MVC开发–快速教程
  • Spring,Quartz和JavaMail集成教程

翻译自: https://www.javacodegeeks.com/2011/10/spring-insight-web-application.html

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

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

相关文章

创建动态链接库时设置导出函数的方法

有两种方法1.使用模块定义文件, 2.在要导出的函数前加上 __declspec(dllexport) 我们用VS2008新建个DLL工程,工程名为“TestDLL” 把默认的源文件后缀 .CPP改为.C(C文件) int _stdcall MyFunction(int iVariant){return 0; } 1. 使用传统的模…

javascript的浏览器Bom详解,window、location、history对象

BOM(BrowserObjectModel)也叫浏览器对象模型,描述与浏览器进行交互的方法和接口。BOM由多个对象组成, 其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象。 JavaScript由三部分组成:ECMAScript,BOM&…

python右斜杠_Python中的左斜杠、右斜杠(正斜杠和反斜杠)

首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows(一)目录中的斜杠们python读文件需要输入的目录参…

重用生成的JAXB类

在本文中,我将演示如何利用– XJC扩展来重用以前从XML模式生成的类。 当其他XML架构导入XML架构并且您不想每次都生成相同的类时,这很有用。 导入的架构(Product.xsd) 以下XML模式代表有关产品的基本信息。 产品是此示例域中的常…

MySQL的Master/Slave群集安装和配置

本文介绍MySQL的Master/Slave群集安装和配置,版本号安装最新的稳定版GA 5.6.19。 为了支持有限HA。我们用Master/Slave读写简单孤立的集群。有限HA这是当Master不可用,数据不会丢失。但在Master写的,必须手工处理故障。假设要支持更高的可用性…

动态申请二维数组

以下是动态申请a[m][n]的源代码 代码一&#xff1a; /* 编译器&#xff1a;DEV C */ #include<stdio.h> #include<stdlib.h> int main() {int **a;int i,j,m,n;scanf("%d%d",&m,&n); a (int **)malloc(sizeof(int *)*m);for (i0;i<m; i){a[i…

判断线段和直线相交 POJ 3304

1 // 判断线段和直线相交 POJ 33042 // 思路&#xff1a;3 // 如果存在一条直线和所有线段相交&#xff0c;那么平移该直线一定可以经过线段上任意两个点&#xff0c;并且和所有线段相交。4 5 #include <cstdio>6 #include <cstring>7 #include <iostream>8 …

JavaOne正在重建动力

在JavaOne上度过了一个非常忙碌的一周&#xff0c;今年的活动有很多让人喜欢的地方。 有很多惊喜的公告&#xff0c;很多很好的内容/会议&#xff0c;并且在场地和组织上都有很多改进。 对于一直耐心等待我发表我所有演讲的人们&#xff0c;我为您的延迟表示歉意……给4个演讲一…

tensorflow http调用_《TensorFlow 内核剖析》笔记——系统架构

3 系统架构系统整体组成&#xff1a;Tensorflow的系统结构以C API为界&#xff0c;将整个系统分为前端和后端两个子系统&#xff1a;前端构造计算图后端执行计算图&#xff0c;可再细分为&#xff1a;运行时&#xff1a;提供本地模式和分布式模式计算层&#xff1a;由kernal函数…

SGU 187.Twist and whirl - want to cheat( splay )

维护一个支持翻转次数M的长度N的序列..最后输出序列.1<N<130000, 1<M<2000splay裸题...-------------------------------------------------------------#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int ma…

练习一万小时成天才

随着畅销书《异类》的流行&#xff0c;“练习一万小时成天才”这个口号现在是尽人皆知。也许仍然有不少人相信那些不世出的天才必有天生的神秘能力&#xff0c;但科学家通过大量的调查研究已经达成共识&#xff0c;那就是所有顶级高手都是练出来的。不但如此&#xff0c;最近几…

(转)数据流图

转自:http://jingyan.baidu.com/article/4f34706eefdb04e387b56deb.html 数据流图4种图元 数据流图的实例 转载于:https://www.cnblogs.com/wrencai/p/5852389.html

从CLI监视OpenJDK

目前&#xff0c;我大部分时间在Java虚拟机 &#xff08;JVM&#xff09;内或周围进行大量工作&#xff0c;大部分时间是在Linux上。 当事情变得不对劲并且我试图确定原因时&#xff0c;我接触了Java性能分析工具。 这些工具有两种形式&#xff0c;一种是精美的GUI&#xff08;…

python数据库优化_python | Mysql性能优化一

对mysql优化是一个综合性的技术&#xff0c;主要包括表的设计合理化(符合3NF)添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]分表技术(水平分割、垂直分割)读写[写: update/delete/add]分离存储过程 [模块化编程&#xff0c;可以提高速度]对mysql配…

MySQL中文乱码问题

项目中用到MySQL数据库时中文出现乱码问题&#xff08;中文字符都变成了&#xff1f;&#xff09;解决&#xff1a; 1、统一项目与数据库的编码&#xff0c;项目中用的是UTF-8因此我的把数据库的编码统一成UTF-8 修改方式&#xff1a;修改 MySQL根目录中的 my.ini 文件替换d…

json与字符串互转

1 字符串转JSON var objeval((str"))var objJSON.parse(str)var objstr.parseJSON()2 JSON转字符串 var strobj.toJSONString()var strJSON.stringify(obj)转载于:https://www.cnblogs.com/liu-xia/p/5050878.html

使用RequestFactory API进行Spring GWT集成

从GWT 2.4开始&#xff0c;将RequestFactory API与后端的Spring服务集成很容易&#xff0c;您需要做的就是在服务器上创建一个自定义ServiceLocator&#xff0c;GWT将使用它来正确定位被调用的服务&#xff1a; public class SpringServiceLocator implements ServiceLocator {…

C++实例讲解Binder通信

binder是android里面的通信机制&#xff0c;这就不说它如何如何好了&#xff0c;Goog已经说过了&#xff0c;这里不多说。binder是一个面向对象的编程方法&#xff0c;大量使用虚函数类。最近研究binder看到一网友写的&#xff0c;就借鉴一下。这个例子很好的解释里binder通信关…

2014编程之美初赛第一场

题目1 : 焦距 时间限制:2000ms单点时限:1000ms内存限制:256MB描述 一般来说&#xff0c;我们采用针孔相机模型&#xff0c;也就是认为它用到的是小孔成像原理。 在相机坐标系下&#xff0c;一般来说&#xff0c;我们用到的单位长度&#xff0c;不是“米”这样的国际单位&#x…

高中python公开课怎么上好_如何上好高中英语公开课

谈如何上好高中英语公开课对青年教师来说&#xff0c;开一节公开课&#xff0c;如同完成一次蜕变&#xff0c;累掉一层皮&#xff0c;有着刻骨铭心的阵痛&#xff0c;但换来的是突飞猛进的专业成长。可以说&#xff0c;公开课是青年教师培训的有效途径&#xff0c;是名师培养的…