Java高併發:靜態頁面生成方案

提升網站性能的方式有很多,例如有效的使用緩存,生成靜態頁面等等。今天要說的就是生成靜態頁面的方式。這個也是我近期一直在搞的一個問題,近期在做使用html + servlet做個人網站,爲什麼是這2個東西呢?

  1、直接用servlet是爲了保證網站能以最快的速度執行命令,個人總感覺像Struts hibernate spring之類的雖然方便但是效能帶來的損耗不太能接收

  2、使用html同樣是爲了保證最快的反應速度,畢竟html 比jsp少了一層服務器執行。速度上要快的多

  一、在這裏要先說一下什麼是頁面靜態化:

  簡單的說,我們如果訪問一個鏈接 ,服務器對應的模塊會處理這個請求,轉到對應的jsp界面,最後生成我們想要看到的數據。這其中的缺點是顯而易見的:因爲每次請求服務器都會進行處理,如果有太多的高併發請求,那麼就會加重應用服務器的壓力,弄不好就把服務器 搞down 掉了。那麼如何去避免呢?如果我們把對 test.do 請求後的結果保存成一個 html 文件,然後每次用戶都去訪問 ,這樣應用服務器的壓力不就減少了?

  那麼靜態頁面從哪裏來呢?總不能讓我們每個頁面都手動處理吧?這裏就牽涉到我們要講解的內容了,靜態頁面生成方案… 我們需要的是自動的生成靜態頁面,當用戶訪問 ,會自動生成 test.html ,然後顯示給用戶。

  二、下面我們在簡單介紹一下要想掌握頁面靜態化方案應該掌握的知識點

  1、 基礎- URL Rewrite

  什麼是 URL Rewrite 呢 ? URL 重寫。用一個簡單的例子來說明問題:輸入網址 ,但是實際上訪問的卻是 abc.com/test.action,那我們就可以說 URL 被重寫了。這項技術應用廣泛,有許多開源的工具可以實現這個功能。

  2、 基礎- Servlet web.xml

  如果你還不知道 web.xml 中一個請求和一個 servlet 是如何匹配到一起的,那麼請搜索一下 servlet 的文檔。這可不是亂說呀,有很多人就認爲 /xyz/*.do 這樣的匹配方式能有效。

  如果你還不知道怎麼編寫一個 servlet ,那麼請搜索一下如何編寫 servlet.這可不是說笑呀,在各種集成工具漫天飛舞的今天,很多人都不會去從零編寫一個 servlet了。

  三、基本的方案介紹

  其中,對於 URL Rewriter的部分,可以使用收費或者開源的工具來實現,如果 url不是特別的複雜,可以考慮在 servlet 中實現,那麼就是下面這個樣子:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章