Vincent Partington, (曾在参与过
Apache JServ
, the PostgreSQL
JDBC driver, MySQL mm.mysql
jdbc driver.的开发) , 最近写了一系列的Blog,每篇都探讨了一个可能影响
Java EE application性能的问题.
.他注意到,大多数性能问题的起因都是因为错误的使用技术,起因于开发人员没有完全的掌握如何去使用一种技术, Partington这样写道:
Java开发人员应该把性能当作他们的应用软件中的一个重要的质量需求来对待,在项目的从始至终都应该对这个问题保持注意. Java开发人员应该和相关人员一起工作,例如服务器和数据库的管理员,这样能对提高他们的应用的性能很有好处...
Partington在他的性能相关的系列主题文章中
不乏至理名言,下面是他写的将近10篇Blog的每篇的中心思想,由
外刊IT评论
提供.
10. 过多的事件记录
当你做事件记录时有两件事情发生. 首先是大量的字符串操作被执行...然后是把结果写入一个文件...
9. 错误的application server配置
J2EE specification麻痹了开发人员,让他们有了虚假的安全感,想一想??只要我的代码和J2EE兼容,它能正确的运行??... 开发人员不应该只是把它们的EAR文件丢给运行系统;开发人员应该和application server管理员一起工作来处理这.....
8. 错误的Java EE用法
这个问题在一些老的应用中特别流行,因为几年前POJO/轻量级的解决方案还没有出现.... 像Spring这样的轻量级框架允许开发人员挑选一些必须的基础服务(transactions, security, distributed objects). Java EE... offers all of them all of the time.
7. 不必要的使用XML
XML有很多有意思的属性,这导致一般的企业Java应用的功能领域几乎都用到了它.... 不幸的是XML操作是一个很耗CPU和内存的过程.
6. 不适当的缓存使用
正确的缓存可以极大的提高你的Enterprise Java application的性能,它甚至是达到可接受的性能水平所必须的.但有时缓存过程本身却导致的你的性能问题.
5. 过度的内存使用
过度的内存使用表现的两个方面:大量的地址分配(给短生命周期的对象使用)和每秒钟都有大量的对象.
4. 糟糕的执行库
一些开发组很愿意往他们的WEB-INF/lib目录下或者是POM文件里堆砌JAR文件,不管它们是否真的需要这些(也不考虑所需要的功能是否已经被现 有的类库提供了),也不检查这些类库是否能提供很好的性能,也不考虑是否有一种更高效的替代类库,不去研究文档来学会如何正确的使用它们,不明了自己的应 用是如果使用这些类库的.
3. 不正确的并发实现
一个主要的原因是竞争锁定,如果有多个线程调用发生这只能会成为一个问题..... 应用程序在执行轻量级的任务时运行的很好,而重负荷是却慢的近乎停止.....
2. 不必要的远程操作
一些案例中系统架构被设计成为内置了能够适用某些预期的将来可能出现的功能的功能,可这些预期的功能从来就没有实现...... 因为需要调用其他的系统和程序,Enterprise Java applications往往会使用远程操作,不必要的远程操作是伤害Enterprise Java applications效率的重要原因.
1. 错误的数据库用法
许多的企业Java项目里,数据库只是被当作一个简单的装字节的容器,DBA被当作一个只是在产品机器前执行SQL语句的人. 这种对数据库以及数据库专家的轻视导致了恶劣的应用程序执行效率.....
What's the source of your
#1 enterprise Java performance problem?
分享到:
相关推荐
### Java企业级应用开发指南知识点概述 #### 一、引言 随着Java技术的发展与成熟,它已经成为构建大型企业级应用程序的重要平台之一。本书《Java企业级应用开发指南》为开发者提供了一个全面深入地了解如何利用Java...
《Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)》是一份全面深入讲解Java企业级应用开发的教程,重点聚焦于Spring、Spring MVC和MyBatis这三个核心框架。这些技术在现代Java开发中占据着举足轻重的地位...
《Java企业级开发项目实践》是一本专注于Java在企业级应用中的实践经验的书籍。它涵盖了从项目规划、设计到实施的全过程,旨在帮助开发者更好地理解和掌握在大型企业环境中使用Java进行软件开发的关键技术和最佳实践...
Java EE,全称为Java Platform, Enterprise Edition,是Java平台针对企业级应用开发的标准和框架集合。这个平台由Sun Microsystems(现已被Oracle收购)发起,并由Java社区进程(JCP)进行管理和更新。Java EE旨在...
《Java EE企业级应用开发教程Spring+Spring MVC+MyBatis》是一本深入探讨Java企业级应用程序开发的书籍,源代码包含多个章节的实例,旨在帮助读者理解和掌握使用Spring、Spring MVC和MyBatis框架进行实际开发的关键...
《Java EE企业级应用开发教程(Spring Spring MVC MyBatis)》是一本专注于Java后端开发的实战型教材,特别适合于对Java EE感兴趣并希望深入学习的企业级开发者。本书结合了Spring框架、Spring MVC以及MyBatis这三大...
Java J2EE(Java 2 Platform, Enterprise Edition)是Java平台的一个版本,专门设计用于构建企业级应用程序。这个平台提供了一套丰富的API和服务,支持分布式、多层架构的应用开发,包括Web服务、数据库连接、事务...
Java EE 7与HTML5是现代企业级应用开发中的关键技术,它们的结合使得开发者能够构建出既适应桌面环境又能无缝支持移动设备的高性能应用程序。本文将深入探讨这两个技术领域,以及如何利用它们来创建动态且高效的企业...
总的来说,“Java企业级开发课程设计”是一个综合性的实践项目,涵盖了Java基础、Spring框架、数据库交互等多个重要知识点,旨在培养开发者解决实际问题的能力,为将来从事企业级应用开发打下坚实的基础。...
在当今快速发展的信息技术领域中,Java作为一种广泛使用的编程语言,在企业级应用开发中占据着举足轻重的地位。本文将根据所提供的标题、描述及标签等信息,深入探讨与Java企业级开发项目实践相关的知识点。 #### ...
本文的主论点是:通过遵循一系列最佳实践,包括代码规范、架构设计和性能优化,Java语言能在企业级应用开发中实现更高的效率和稳定性。本文通过对多个企业级项目的案例分析,揭示了这些最佳实践在实际应用中的具体...
在“Java企业级开发与实践-实验报告-信管1606-2016012226-刘云霄.doc”中,我们可以期待看到学生在完成项目后对整个开发过程的总结和反思,包括遇到的问题、解决方案以及所学的关键知识点。这份报告将提供一个宝贵的...
在IT行业中,开发Java企业级应用程序是一项复杂而关键的任务,涉及到多层架构、高可用性、可扩展性和安全性。在这个过程中,J2EE(Java Platform, Enterprise Edition)和UML(Unified Modeling Language)是两个至...
课程全程高能,直击超一线JAVA架构师的最前沿高级架构技术,课程内容包括了RPC核心框架剖析,注册中心深入剖析,消息队列企业级应用及原理剖析,分布式架构整体概括,企业级百万并发高性能网关设计实践,分布式架构...
该项目是一个基于Java语言的高性能企业级应用框架设计源码,包含116个文件,其中99个Java源文件、13个XML配置文件、1个Git忽略文件、1个文本文件、1个JSON文件和1个YAML文件。该框架设计旨在满足企业级应用的高性能...
《用J2EE和UML开发Java企业级应用程序》是一本深入探讨如何将J2EE(Java 2 Platform, Enterprise Edition)与统一建模语言(Unified Modeling Language, UML)结合,以高效构建大型企业级应用程序的专业书籍。...
《JAVA企业级代码生成器3.0》是一款专为Java开发者设计的企业级工具,它极大地提高了开发效率,降低了代码重复编写的工作量。该工具的核心功能是自动生成符合企业级规范的代码,使得开发者能够快速构建出稳定、高效...