CN101789012B - 基于j2ee的web动态页面静态化解决方法 - Google Patents

基于j2ee的web动态页面静态化解决方法 Download PDF

Info

Publication number
CN101789012B
CN101789012B CN 201010105969 CN201010105969A CN101789012B CN 101789012 B CN101789012 B CN 101789012B CN 201010105969 CN201010105969 CN 201010105969 CN 201010105969 A CN201010105969 A CN 201010105969A CN 101789012 B CN101789012 B CN 101789012B
Authority
CN
China
Prior art keywords
page
static
dynamic
dynamic page
web
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 201010105969
Other languages
English (en)
Other versions
CN101789012A (zh
Inventor
马荣海
沈鹏程
兰清
余志刚
刘树权
孙力斌
庞海东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NANJING CITY LINKAGE SYSTEM INTEGRATION CO Ltd
Original Assignee
NANJING CITY LINKAGE SYSTEM INTEGRATION CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NANJING CITY LINKAGE SYSTEM INTEGRATION CO Ltd filed Critical NANJING CITY LINKAGE SYSTEM INTEGRATION CO Ltd
Priority to CN 201010105969 priority Critical patent/CN101789012B/zh
Publication of CN101789012A publication Critical patent/CN101789012A/zh
Application granted granted Critical
Publication of CN101789012B publication Critical patent/CN101789012B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于J2EE的WEB动态页面静态化解决方法,步骤包括:1)由静态页面生成应用模拟客户端请求,发送请求到原有的动态页面,并将响应对象里的输出流指向到本地文件;2)WEB应用读取由“静态页面生成应用”生成的静态页面;静态页面生成好以后,用户对WEB应用的动态页面地址的访问就会重定向响应的静态页面。本方法采用基于J2EE的动态页面静态化解决方案,程序上不做修改,就能够很好的减少应用服务器的压力和数据库连接资源的竞争。相比原来的直接访问WEB应用的动态页面,WEB服务器的高峰期的cpu使用率由原来的100%降到了60%。相关功能对数据库连接资源的竞争由原来的80%降到了0%,因为这时没有数据库连接。高并发环境下响应速度快。

Description

基于J2EE的WEB动态页面静态化解决方法
1、技术领域
本技术发明方案应用于基于J2EE的WEB应用,用于解决用户使用***的性能要求。
2、背景技术
目前现有的WEB应用大部分都是采用动态页面,客户端访问时动态生成返回响应信息,当由于刚性原因,某些动态页面响应时间超长时,WEB应用就无法满足海量用户高并发和数据调用的性能要求。传统的动态页面访问数据库的操作太多,导致数据库连接竞争激励,所以响应缓慢,但数据库连接又不能开太多,否则数据库压力会很高。
3、发明内容
(1)发明目的:
本发明方案的目的是解决传统基于J2EE的WEB应用存在的,由于全部动态页面数据都是实时生成导致的性能问题,针对海量用户,高并发和数据调用的性能需求,提出一种基于J2EE的WEB动态页面静态化的解决方案,减少数据库资源的竞争和对数据库读的压力。
(2)技术方案:
本发明技术方案是基于由数据库服务器组、应用服务器组、客户端三部分组成***。
一种基于J2EE的WEB动态页面静态化解决方法,步骤包括:
1)由静态页面生成应用模拟客户端请求,发送请求到原有的动态页面例如JSP,并将响应对象里的输出流指向到本地文件;
2)WEB应用读取由“静态页面生成应用”生成的静态页面。
静态页面生成好以后,用户对WEB应用(如移动的BOSS***、电信的营销支撑***)的动态页面地址的访问就会重定向响应的静态页面。
具体来说,首先,从配置文件config.xml中读取生成静态页面的相关参数;
例如:
Figure GDA00001977244200011
Figure GDA00001977244200021
上面的配置中,每一个page元素,表示一个需要静态化的页面;name元素,用来说明这个页面的主要用途;type元素用来描述这个是全页面静态化(ALL),还是部分页面静态化(PART),另外这个参数将决定,页面将来存储的位置;url标签就是动态页面所在的地址;parameters元素是一个集合,下面的parameter元素表示需要传入到url所指定的动态页面需要的参数。
然后,“静态页面生成应用”在实现javax.servlet.Filter接口的过滤器中发送请求到动态页面,动态页面将结果响应给静态页面生成应用的过滤器;当过滤器接收到动态页面响应时,将数据流指向到配置好的静态文件中,即将动态页面的处理结果输出到静态页面。
动态页面静态化的粒度可以通参数来灵活选择。
在config.xml中type元素用来描述这个是全页面静态化(ALL),还是部分页面静态化(PART),另外这个参数将决定,页面将来存储的位置。所述过滤器将从配置文件中读取type参数,并根据type参数,将文件流指向到不同的存储空间。比如,全页面静态化的文件放在/data/pages/all下,而部分页面静态化的文件放在/data/pages/parts下。
所述的静态化策略包括:
1)对每个需要静态化的动态页面,每天凌晨,在用户上班前生成好一套静态页面;
2)对个别需要静态化的动态页面,在策略1)的基础上,还支持客户手动更新,更新完毕后,重定向到新生成的静态页面。
上述的手动更新,举例来说,步骤如下:
首先在crontab中配置好启动时间,在程序启动后,Main.java先读取config.xml中的配置信息。Main.java发送请求到config.xml中配置的url地址。在url地址所在的web应用程序中,存在一个实现了javax.servlet.Filter接口的过滤器类,以下统称过滤器,在过滤器中,也会加载config.xml中的信息,并将response的输出流改成指向到本地文件的文件流,静态页面文件存储的位置由config.xml中的type属性来判断,从而决定是放在/data/pages/all下还是/data/pages/parts下。这样,当处理完请求以后,就会将结果输出到指定的文件中。
然后,当客户访问这个原有应用的某个配置好的地址时,就将访问某个生成好的静态页面。当需要更新页面上的数据时,点击页面上的“刷新数据”按钮,将访问动态页面的url地址(以下与上一步基本相同)再由过滤器将response的输出流指向到web服务器的指定文件中,当动态页面将数据从数据库中捞出来,并生成好响应流以后,就会把输出写到指定的文件中。当文件生成好以后,过滤器再将请求重定向到新的静态页面,再有服务器响应到客户端,这时客户就可以访问新的页面(数据)了。
本方法的有益效果是,采用基于J2EE的动态页面静态化解决方案,程序上不做修改,就能够很好的减少应用服务器的压力和数据库连接资源的竞争。相比原来的直接访问WEB应用的动态页面,WEB服务器的高峰期的cpu使用率由原来的100%降到了60%。相关功能对数据库连接资源的竞争由原来的80%降到了0%,因为这时没有数据库连接。高并发环境下响应速度快。
4、附图说明
图1.***架构图;
图2.动态页面静态化实施流程图。
5、具体实施方式
下面结合附图和具体实施方式对本发明进一步说明。
本方法是基于由数据库服务器组、应用服务器组、客户端三部分组成的***。
Figure GDA00001977244200031
***架构
***架构示意图如图1所示;
1.数据库服务器组:
应用服务器组上数据库实例,如ORACLE等。
2.应用服务器组:
应用服务器组上部署WEB中间件,如WEBLOGIC等,WEB应用和生成静态页面应用。
3.客户端:
客户端使用WEB浏览器访问***。
Figure GDA00001977244200032
静态页面生成策略
策略一:
对每个需要静态化的动态页面,每天凌晨,在用户上班前生成好一套静态页面。
策略二:
对个别需要静态化的动态页面,在策略一的基础上,还支持客户手动更新,更新完毕后,重定向到新生成的静态页面。
动态页面生成静态页面的方法:1、模拟客户端请求,发送请求到原来的动态页面例如JSP,并将响应对象里的输出流指向到本地文件。2、WEB应用读取由静态页面生成应用生成的静态页面。
首先,读取配置文件获取生成静态页面的相关参数;然后,静态页面生成应用,在过滤器中发送请求到动态页面,动态页面将结果响应给静态页面生成应用的过滤器;当过滤器接收到动态页面响应时,将数据流指向到配置好的静态文件中,即将动态页面的处理结果输出到静态页面。静态页面生成好以后,用户对WEB应用的动态页面地址的访问就会重定向响应的静态页面。
本例中,动态页面静态化具体的实施步骤:
自主实现部分:通过过滤器截获请求,然后重定向数据流到指点文件。实现核心细节:
Figure GDA00001977244200051
在应用服务器组上部署静态页面生成应用;先部署WEB应用,再部署静态页面生成应用,让后配置NFS映射。
对于不同的动态页面配置不同的静态化策略;由于两种策略的不动点就是是否支持手工刷新,那么就对需要手工刷新的页面上加上主动刷新按钮即可。采取策略的依据主要是根据用户的需求。其次,就是将对应的动态页面生成静态页面对***资源的占用情况。
针对动态化对象选择静态化页面的粒度;当动态页面中只有部分数据响应慢时,就对这块数据静态化,粒度可以定位单个或者部分数据。当大部分数据响应比较慢时,可以对整个页面静态化,粒度可以定位这个页面。

Claims (1)

1.一种基于J2EE的WEB动态页面静态化解决方法,其特征是步骤包括:
1)由静态页面生成应用模拟客户端请求,发送请求到原有的动态页面,并将响应对象里的输出流指向到本地文件;
2)WEB应用读取由“静态页面生成应用”生成的静态页面;
静态页面生成好以后,用户对WEB应用的动态页面地址的访问就会重定向响应的静态页面;
具体来说,首先,读取配置文件获取生成静态页面的相关参数;然后,然后静态页面生成应用在过滤器中发送请求到动态页面,动态页面将结果响应给“静态页面生成应用”的过滤器;当过滤器接收到动态页面响应时,将数据流指向到配置好的静态文件中,即将动态页面的处理结果输出到静态页面;
所述静态页面的生成策略即静态化的策略包括:
a)对每个需要静态化的动态页面,每天凌晨,在用户上班前生成好一套静态页面;
b)对个别需要静态化的动态页面,在策略a)的基础上,还支持客户手动更新,更新完毕后,重定向到新生成的静态页面;
手动更新方法,步骤如下:
b1)首先配置好启动时间,程序启动后,先读取配置文件中的配置信息:
先发送请求到配置文件中配置的url地址;在url地址所在的web应用程序中,存在实现了javax.servlet.Filter接口的过滤器类,在该过滤器中,也会加载配置文件中的信息,并将response的输出流改成指向到本地文件的文件流,静态页面存储的位置由配置文件来判断,当处理完请求以后,就会将结果输出到指定的文件中;
b2)然后,当这个原有应用的某个配置好的地址被访问时,就将访问生成好的静态页面;当需要更新页面上的数据时,则刷新数据来访问到动态页面的url地址,方法与步骤1)相同;再由过滤器将response的输出流指向到web服务器的指定文件中,当动态页面将数据从数据库中捞出来,并生成好响应流以后,就会把输出写到指定的文件中;当文件生成好以后,过滤器再将请求重定向到新的静态页面,再由服务器响应到客户端,这时就可以访问新的页面/数据了;
通过参数来灵活选择动态页面静态化的粒度。
CN 201010105969 2010-02-03 2010-02-03 基于j2ee的web动态页面静态化解决方法 Expired - Fee Related CN101789012B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010105969 CN101789012B (zh) 2010-02-03 2010-02-03 基于j2ee的web动态页面静态化解决方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010105969 CN101789012B (zh) 2010-02-03 2010-02-03 基于j2ee的web动态页面静态化解决方法

Publications (2)

Publication Number Publication Date
CN101789012A CN101789012A (zh) 2010-07-28
CN101789012B true CN101789012B (zh) 2013-03-20

Family

ID=42532226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010105969 Expired - Fee Related CN101789012B (zh) 2010-02-03 2010-02-03 基于j2ee的web动态页面静态化解决方法

Country Status (1)

Country Link
CN (1) CN101789012B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102411571A (zh) * 2010-09-21 2012-04-11 上海众融信息技术有限公司 一种动态网页的静态化信息处理方法及装置
CN102654882A (zh) * 2011-03-02 2012-09-05 北京千橡网景科技发展有限公司 用于加载页面的方法和设备
CN105094779A (zh) * 2014-05-14 2015-11-25 北大方正集团有限公司 一种页面设计方法
CN105391789B (zh) * 2015-11-26 2018-10-23 南京莱斯信息技术股份有限公司 一种基于jsp模板的动态服务实现方法
CN106372228A (zh) * 2016-09-08 2017-02-01 福建中金在线信息科技有限公司 一种移动端生成静态页的方法以及***
CN107357897A (zh) * 2017-07-13 2017-11-17 郑州云海信息技术有限公司 一种实现用户访问控制的方法、装置及计算机存储介质
CN107861771B (zh) * 2017-11-02 2022-05-06 深圳市雷鸟网络传媒有限公司 加载弹出页面数据的方法、装置及计算机可读存储介质
CN109032797A (zh) * 2018-07-18 2018-12-18 上海恺英网络科技有限公司 用于提供网页访问的方法及设备
CN110516185B (zh) * 2019-08-09 2022-04-22 济南浪潮数据技术有限公司 动态网站的处理方法及装置
CN112398736B (zh) * 2020-10-20 2023-02-21 南京欣网互联网络科技有限公司 一种根据业务参数实现服务路由的动态选择的方法及***
CN112667950A (zh) * 2021-01-07 2021-04-16 青海绿能数据有限公司 一种动态页面静态化***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998057276A1 (en) * 1997-06-12 1998-12-17 Yahoo, Inc. Dynamic page generator
US20030140100A1 (en) * 2002-01-18 2003-07-24 Sam Pullara System and method for URL response caching and filtering in servlets and application servers
CN101183395A (zh) * 2007-12-25 2008-05-21 北京中企开源信息技术有限公司 一种实现动态页面静态化的方法和***
CN101510220A (zh) * 2009-03-27 2009-08-19 阿里巴巴集团控股有限公司 一种向用户端推送浮出页面的方法、装置及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998057276A1 (en) * 1997-06-12 1998-12-17 Yahoo, Inc. Dynamic page generator
US20030140100A1 (en) * 2002-01-18 2003-07-24 Sam Pullara System and method for URL response caching and filtering in servlets and application servers
CN101183395A (zh) * 2007-12-25 2008-05-21 北京中企开源信息技术有限公司 一种实现动态页面静态化的方法和***
CN101510220A (zh) * 2009-03-27 2009-08-19 阿里巴巴集团控股有限公司 一种向用户端推送浮出页面的方法、装置及***

Also Published As

Publication number Publication date
CN101789012A (zh) 2010-07-28

Similar Documents

Publication Publication Date Title
CN101789012B (zh) 基于j2ee的web动态页面静态化解决方法
Dou et al. Misco: a mapreduce framework for mobile systems
CN102223398B (zh) 一种部署在云计算环境中部署服务的方法
Ou et al. An effective offloading middleware for pervasive services on mobile devices
CN101106578B (zh) 一种更换界面主题的方法和***
CN101997854B (zh) 一种提供数据服务的处理***及方法
US20030051001A1 (en) Method and system for delivering dynamic information in a network
KR100783679B1 (ko) 데이터 스트림에 기반하는 서비스의 개발, 배치, 제공을용이하게 하는 미들웨어 시스템
CN105094922A (zh) 应用程序免安装运行控制方法及其装置
CN109165050A (zh) 程序的运行方法、装置、计算设备以及存储介质
CN102938776A (zh) 基于ajax技术的动态页面处理***
WO2017167121A1 (zh) 确定及运用应用程序之间的关系关联的方法及装置
CN102088485A (zh) 数据获取方法和装置
CN103390018A (zh) 一种基于SDD的Web服务数据建模与搜索方法
CN100538650C (zh) 基于组件的网格中间件互交互方法
CN110764752A (zh) 基于微服务架构实现Restful服务图形化服务编排的***及其方法
CN101421719A (zh) 管理网络响应缓冲行为
JP2004529419A (ja) ソフトウェアアプリケーションローディング用のソフトウェアエンジンおよび方法
RajKumar et al. Integrated educational information systems for disabled schools via a service bus using SOA
CN101464863A (zh) 主从式架构的读取数据库以生成网页的***及方法
Tanaka et al. Meme media for clipping and combining web resources
CN114205233A (zh) 一种面向数据管控的智能合约自适应配置与执行框架
Kimbleton et al. A perspective on network operating systems
Tanaka et al. Low latency and resource-aware program composition for large-scale data analysis
CN113672579B (zh) 一种基于webservice的档案同步方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130320