`

实战系统性能优化之静态数据的使用

阅读更多

最近一个小项目中,要在页面上显示省市信息,作为查询的一个选择条件。

 

设计思路非常简单,大家不要笑话。

1. 功能需求

这个项目中,有很多的jsp页面上都需要显示省市信息。现在DB中有个关于省市信息的字典表,如果每个jsp初始化时都到数据库中查询,功能是可以实现,但大家肯定都知道,这种做法是不合理的。

 

缺点:

加载每个jsp页面时,都要读一次字典表。如果系统有100个类似的jsp页面,就要读100DB。性能很差,对系统的资源是一种很大的浪费。

 

2. 解决办法:
之1:

第一个用户访问时,查询一次省市信息的字典表,然后将查询结果保存到一个静态的集合中,之后的每个jsp显示省市信息时,先去读这个静态的集合。如果有数据,就显示;如果没有数据,再到字典表中读取一次,之后将结果也保存到那个静态的集合中,以备初始化下个jsp页面时调用。

 

之2:

系统启动时,在一个servlet中查询字典表,然后保存到一个静态的集合中。

 

其实哪种方法都可以,根本上就是利用了java中静态数据的一个特点:
静态数据保存在内存中,在应用的整个生命周期中都有效。这样每次读取内存,比每次都读取DB,性能上要好很多。

 

优点:

正常情况下只读取一次DB,节省了对系统资源的消耗,减轻了对DB的压力。

1
0
分享到:
评论
2 楼 charles751 2008-09-08  
你说的application是指jsp中的内置关键字吧?
本质上咱俩说的是一个意思,呵呵
1 楼 hifun 2008-09-07  
确实是一个方法,其实放在application中也成吧?

相关推荐

    集群好书《高性能Linux服务器构建实战》 试读章节下载

    由国内著名技术社区联合推荐的2012年IT技术力作:《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》,即将上架发行,此书从Web应用、数据备份与恢复、网络存储应用、运维监控与性能优化、集群高级应用等...

    JAVA高并发高性能高可用高扩展架构视频教程

    Mysql性能优化之索引优化 写实现Tomcat服务器 移动后台端框架设计 公司级框架原理解析 解密公司内部框架开发(打造属于自己的专属框架) 手写Tomca之深度解析动态资源请求原理 深度解析springMVC实现原理(手写...

    亮剑.NET深入体验与实战精要3

    第15章 大型网站的性能优化与安全 525 15.1 高效C#编码优化 526 15.2 页面(HTML)优化的方法 534 15.3 ASP.NET开发性能优化 540 15.3.1 如没必要,尽量使用静态HTML页面 540 15.3.2 避免不必要的回送操作 541 ...

    EasyJWeb服务调度和自定义邮件引擎技术的CRM系统实战开发

    这个主意是针对于性能优化的方案,其核心是一种分布式的架构思想,具体的实现手段有很多种,在本课程我们使用了RMI技术来完成。通常我们会将一个完成的程序包运行在Web容器(tomcat或其他)中,容器除了要负责接受...

    亮剑.NET深入体验与实战精要2

    第15章 大型网站的性能优化与安全 525 15.1 高效C#编码优化 526 15.2 页面(HTML)优化的方法 534 15.3 ASP.NET开发性能优化 540 15.3.1 如没必要,尽量使用静态HTML页面 540 15.3.2 避免不必要的回送操作 541 ...

    Java思维导图xmind文件+导出图片

    redis使用常见问题及性能优化思路 redis高可用及高并发实战 缓存击穿、缓存雪崩预防策略 Redis批量查询优化 Redis高性能集群之Twemproxy of Redis 数据存储 MongoDB NOSQL简介及MongoDB支持的数据类型分析 ...

    开涛高可用高并发-亿级流量核心技术

    19 应用数据静态化架构高性能单页Web应用 377 19.1 整体架构 378 19.1.1 CMS系统 379 19.1.2 前端展示系统 380 19.1.3 控制系统 380 19.2 数据和模板动态化 381 19.3 多版本机制 381 19.4 异常问题 382 20 使用...

    Eclipse开发分布式商城系统+完整视频代码及文档

    │ │ │ MySql5.6性能优化.docx │ │ │ │ │ ├─Redis集群 │ │ │ redis-3.0.2.tar.gz │ │ │ redis-3.2.1.gem │ │ │ Redis集群.docx │ │ │ 集群架构.eddx │ │ │ │ │ └─Tomcat7优化 │ │ ...

    我记录网站综合系统 1.9.rar

    •可以生成 html 静态页面,提高网站性能,优化搜索引擎收录; •可发布文章、视频(Flash)、图片、附件、投票、幻灯等,同时可以无限扩展; •除了直接发布,也可以聚合论坛、博客、微博等其他数据源(包括外站的...

    asp.net知识库

    使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法 制作一个简单的多页Tab功能 一完美的关于请求的目录不存在而需要url重写的解决方案! 在C#中实现MSN消息框的功能 XmlHttp实现无刷新三联动ListBox 鼠标...

    深入解析OracleDBA入门进阶与诊断案例 4/4

     4.4 静态数据字典视图   4.5 动态性能视图   4.6 最后的验证  第5章 内存管理   5.1 PGA管理   5.2 SGA管理   5.3 Oracle的内存分配和使用  第6章 Buffer Cache与Shared Pool原理   6.1 ...

    深入解析OracleDBA入门进阶与诊断案例 3/4

     4.4 静态数据字典视图   4.5 动态性能视图   4.6 最后的验证  第5章 内存管理   5.1 PGA管理   5.2 SGA管理   5.3 Oracle的内存分配和使用  第6章 Buffer Cache与Shared Pool原理   6.1 ...

    深入解析OracleDBA入门进阶与诊断案例 2/4

     4.4 静态数据字典视图   4.5 动态性能视图   4.6 最后的验证  第5章 内存管理   5.1 PGA管理   5.2 SGA管理   5.3 Oracle的内存分配和使用  第6章 Buffer Cache与Shared Pool原理   6.1 ...

    深入解析Oracle.DBA入门进阶与诊断案例

    针对数据库的启动和关闭、控制文件与数据库初始化、参数及参数文件、数据字典、内存管理、Buffer Cache与Shared Pool原理、重做、回滚与撤销、等待事件、性能诊断与SQL优化等几大Oracle热点主题,本书从基础知识入手...

    Java Web程序设计教程

    第10章hibernate性能优化 208 10.1hibernate事务与并发 208 10.1.1什么是事务 208 10.1.2hibernate中的事务处理 209 10.1.3在hibernate中使用jta事务 210 10.1.4并发控制 211 10.2hibernate缓存 213 10.2.1...

    JiveJdon v4.6.1.zip

    良好扩展性:性能优异快速,可伸缩性强,可拓展至内存云计算机平台,依赖JdonFramework的内存优化策略能够应付高并发负载访问,按这里查看没有考虑性能优化的案例。   JiveJdon拥有良好的可拓展性,采取完全分离...

    Java版水果管理系统源码-react-course:React教学资料

    性能优化 不可变对象 最后会安排一个完整的实战项目,覆盖React绝大部分知识点。 FAQ 关于作者 作者谦谦君子,网名,2010年毕业于北大,获信息管理学士学位和计算机软件学士学位,毕业之后先后在酷我音乐,人人游戏...

    jQuery权威指南-源代码

    书名:jQuery权威指南(系统介绍jQuery方方面面,囊括118个实例和2个综合案例,实战性强) 作者:陶国荣 著 书号:978-7-111-32543-7 定价:59.00元 出版社:机械工业出版社华章公司 出版时间:2011年1月 编辑推荐:...

Global site tag (gtag.js) - Google Analytics