人员、任务、进度、工时、周期、依赖关系 一目了然。无论项目大小、简单复杂都能轻松管理
一、Log4j2 Maven配置
Log4j2的性能高于log4j与logback,在项目中建议使用Log4j2,其依赖如下<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.6.2</version>
</de
IOC:(Inversion of Control)控制反转
IOC(Inversion of Control)控制反转
这是spring的核心,贯穿始终。所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。
这是什么意思呢,举个简单的例子:
我们是如何找女朋友的?常见的情况是,我们到处去看哪里有长得漂亮身材又好的mm,然后打听她们的兴趣爱好、qq号、电话号、ip号、iq号………,想办法认识她们,投其所好送其所要,然后嘿嘿……这个过
对xml文件的读取和解析,本文以对系统pom.xml文件的读取和解析为例。
private static Map<String,String> getAllProperties() throws DocumentException {
String filePath = D:\\work_intel\\new_common\\basic-pom\\pom.xml;
SAXReader reader = new SAXReader(
依赖范围控制哪些依赖在哪些classpath 中可用,哪些依赖包含在一个应用中。让我们详细看一下每一种范围:
compile (编译范围)
compile是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范围。编译范围依赖在所有的classpath 中可用,同时它们也会被打包。
provided (已提供范围)
provided 依赖只有在当JDK 或者一个容器已提供该依赖之后才使用。例如, 如果你开发了一个web 应用,你可能在编译 classpath 中需要可用的
最近,公司网站频繁报警,JVM_OLD占用过高,线上访问超时严重,针对这个问题着实头疼了一把,不过最终还是解决了,下面说下解决的过程。
1,首先 登到线上机器上去,top命令,查看当前机器的负载,查看当前哪个进程在消耗资源。top找到CPU或者内存占用过高的那个进程。发现有一个进程,CPU居高不下,保留进程id
2,top命令,继续跟踪该进程里的所有线程,找到占用CPU过高的线程。top -Hp [进程ID]
3,找到线程ID,正在消耗CPU,把线程ID转换为16进制,执行
Web性能优化包括哪些??
负载均衡??分布式??CDN??缓存??
web性能包含很多方面,不仅仅是以上几种。我们先看一张图:
从上图看可以总结出,页面的加载时间包括dom结构加载和页面的渲染。
用户响应时间分布:
10%~20%——从服务器端获取HTML文档上(后端数据)
80%~90%——下载页面中的所有组件上(页面渲染)
在web项目有一个性能测试原则:“二八原则”,也就是说:前端为八,后端为二。
所以性能优化,不仅仅在后端,前端的优化往往能起到立竿见影的效果。
Spring工作流程描述:
1.用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获;
2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回;
3. DispatcherSe