`

java高并发-静态页面生成方案(3)

阅读更多

前面2章我们已经讲解了 java网页静态化的原理和最简单的实现,大家可以通过下面的文章链接进行查看
       java高并发-静态页面生成方案(1)

http://www.javady.com/index.php/87.html
       java高并发-静态页面生成方案(2)
       http://www.javady.com/index.php/95.html

 我们这章要讨论一下如何让用户遵守访问方式如何更新生成的html文件

如何让用户遵守访问方式
 
       在第二篇文章我们已经通过代码讲解,用户访问 xx_pageNumber_1.shtm,那么我们可以直接返回已经存在的html文件给用户,大大的减轻应用服务器的压力。可是如果客户直接访问 xx.do?pageNumber=1 呢?浏览器是客户的,如果他们要想恶意的请求你的网站你是没有办法控制的,难道我们要在页面上告诉访问者“请遵守访问方式,否则您将被如何如何”吗? 
       
       针对上面这种情况,我们需要在 index.do 中做点手脚。简单的说就是在我们自己转发请求的时候设置一个变量告诉被请求的地址我们是合法的,例如:xx.do?pageNumber=1后面追加一个 &my=true,这样的话就可以在被请求的action中检测是否有my这个变量,如果有说明合法,该怎么操作都行,如果没有就是违法的,直接跳转到错误页面。这样就能用最简单的方式控制用户的非法请求了.
   
接着我们讲解一下如何刷新这些html
 
   因为是一次性的生成Html,如果对应的数据发生变化,比如update或者delete情况,我们就应该更新相应的html文件,那如何对html文件进行更新呢?
   大体上有几个方式
 
   1、最笨的方式,手动刷新.
      例如:网站首页,当管理员更新一个功能之后,手动点击后台的一个按钮直接更新对应的html文件
   2、定时刷新。
      每隔一段指定的时间去更新所有已经存在的html文件,当然前提是你要先验证哪些已经生成了html文件.至于怎么验证?你可以在每生成一个文件的时候往内存的某个list或者某个文件,或者某个表写入当前生成的文件名..
   3、智能刷新
       先说一下,这个不好做,但是做好了很牛方便。
       管理员在后台的每个操作 增删改查,都进行监听,并在操作完成后去验证一下对应的文件是否存在,存在就更新,不存在就不操作. (要想实现这种方式,在进行框架设计的时候就要把这一模块考虑好,让后台的每一步操作都实现一个已经公共的被观察的对象.--可以查考一下观察者模式)

 

原创文章@www.javady.com  转载请标明出处 http://www.javady.com/index.php/98.html

3
0
分享到:
评论

相关推荐

    Java高并发:静态页面生成方案--UrlRewrite

    优点 一:提高安全性,可以有效的避免一些参数名、ID等完全暴露在用户面前,如果用户随便乱输的话,不符合规则的话直接会返回个404或错误页面. 二:美化URL,去除了那些比如*.do之类的后缀名、长长的参数串等,可以自己...

    java解决网站静态页面生成方案(源码)

    静态页面通常加载更快,对搜索引擎友好,且在高并发访问时能更好地处理负载。 生成静态页面的方法通常涉及将动态内容转换为HTML文件,这些文件可以在服务器上存储并直接发送给客户端,而无需执行服务器端的额外处理...

    静态页面生成方案

    然而,这种动态生成方式在高并发场景下会显著增加服务器压力,可能导致服务不稳定或崩溃。为了解决这一问题,通过预生成静态HTML文件(如`http://xyz.com/index.html`),可以极大地减轻服务器负担,因为静态文件的...

    动态页面静态化汇总--页面静态化方案

    然而,这种模式在高并发场景下可能会造成服务器性能瓶颈。 2. **Freemarker模板技术**: Freemarker是Java平台上的一个开源模板引擎,用于生成动态内容。它与JSP类似,但更专注于视图层,提供更简洁的模板语法,且...

    Java系统的高并发解决方法详解

    Java系统的高并发解决方法详解 ...Java系统的高并发解决方法可以通过静态化、图片服务器分离、数据库集群和库表散列、缓存等多种方法来实现,选择哪种方法需要根据实际情况进行选择和组合,以提高系统的性能和扩展性。

    java高并发解决方案

    【Java高并发解决方案】 在构建大型网站,尤其是门户网站时,面临的主要挑战之一是处理大量用户访问和高并发请求。为了应对这一挑战,通常会采取一系列技术措施,包括使用高性能服务器、数据库、编程语言以及Web...

    java JSP页面静态化总结_动态页面变为静态页面以减少访问数据库的次数提高速度.zip

    - 提升用户体验,尤其是对于高并发访问的场景,静态页面可以快速响应。 3. **实现JSP页面静态化的策略**: - **重写JspWriter**:JspWriter是JSP页面中负责输出内容的对象。通过自定义JspWriter,可以在页面渲染...

    有关Java页面静态化

    这种技术在高并发、大数据量的网站中尤其重要,因为它能显著降低数据库查询频率,提高系统响应速度。 Java页面静态化主要有两种方式:服务器端静态化和客户端静态化。 1. 服务器端静态化: - **预渲染...

    java 页面静态化

    Java页面静态化是一种提高网站性能的技术,它将动态生成的网页转换为静态HTML文件,以减少服务器处理和数据库查询的时间,提升用户体验。这种技术在高访问量、数据更新不频繁的网站中尤其适用。 首先,我们需要理解...

    Java 生成静态页

    这种技术可以显著减少服务器的负载,提高页面加载速度,尤其在高并发访问时效果更为明显。 在Java中实现动态页到静态页的转换,通常涉及以下几个核心概念和技术: 1. **模板引擎**:如FreeMarker、Thymeleaf或...

    JSP生成静态页面

    然而,每次用户访问时,服务器都需要执行这些代码,这可能导致性能下降,特别是在高并发的情况下。 **静态页面生成过程**: 1. **预处理**:当一个JSP页面首次被请求时,JSP容器(如Tomcat)会将其转换为一个...

    java高并发处理方法

    ### Java高并发处理方法 #### 一、HTML静态化 HTML静态化是一种高效的网页加载方式,它可以显著提高网站性能并减少服务器负担。对于那些需要频繁更新的网站而言,完全依赖手动实现静态化并不现实,因此引入了内容...

    CMS生成静态网页简单原理

    4. **节省服务器资源**:静态网页的生成减少了对服务器CPU和内存的消耗,特别是在高并发场景下,这种优势更加明显。 #### 四、总结 通过以上分析,我们可以看到CMS生成静态网页不仅简化了网站的构建与维护过程,还...

    java高并发项目的demo

    这个"java高并发项目的demo"提供了一个实例,展示了如何处理大量并发请求。以下将详细阐述涉及的关键技术及其作用。 首先,Redis作为一个高性能的键值存储系统,在高并发场景下常被用作缓存来减少数据库的压力。在...

    Java秒杀系统方案优化 高性能高并发实战

    ### Java秒杀系统方案优化与高性能高并发实战 在当今互联网时代,秒杀活动作为一种吸引用户的营销手段,被广泛应用于各类电商网站。然而,对于技术团队来说,如何设计和实现一个稳定、高效的秒杀系统,成为了巨大的...

    高并发网站架构设计方案

    【标题】: "高并发网站架构设计方案" 【描述】: "设计高并发网站架构的关键在于优化性能和确保系统的稳定性,以应对大规模用户访问的压力。本文将探讨几种关键的策略和技术,包括网页HTML静态化、图片服务器分离、...

    java系统高并发的解决方案.docx

    ### Java系统高并发解决方案 #### 一、引言 随着互联网技术的发展,现代网站面临着越来越多的挑战,尤其是大型网站在处理海量用户访问时所遇到的高并发问题。为了解决这些问题,本文将从多个维度探讨Java系统高...

    java处理高并发高负载类网站的优化方法.docx

    "Java处理高并发高负载类网站的优化方法" 本文将讨论Java处理高并发高负载类网站的优化方法,主要分为两个方面:数据库的设计方法和系统架构的优化。 一、数据库的设计方法 在高并发高负载类网站中,数据库的响应...

    [工具查询]通用静态页面生成系统(Engineer)v.1_engineer1.zip

    【通用静态页面生成系统(Engineer) v.1】是一个基于Java JSP技术的应用程序,主要用于帮助学生进行毕业设计学习。这个系统的核心功能是将动态网页内容转化为静态HTML页面,以此提高网站的加载速度和搜索引擎优化...

    JSP结合JavaBean生成静态页面示例

    尤其在高并发场景下,频繁的操作数据库不仅效率低下,还会消耗大量资源。因此,通过生成静态页面来减轻服务器负担、提升用户体验是一种非常实用的方法。 具体来说,生成静态页面的好处包括: 1. **减少数据库访问*...

Global site tag (gtag.js) - Google Analytics