當前位置:
首頁 > 知識 > Java高並發:靜態頁面生成方案

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

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

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

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

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

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

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

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

1、 基礎— URL Rewrite

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

2、 基礎— Servlet web.xml

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

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

三、基本的方案介紹

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

想要系統學習Java知識 加入學習群一四四九零一零七六 可以免費學習java還有大量學習乾貨哦

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT技術java交流 的精彩文章:

關於web前端就業前景問題分析——乾貨
十年經驗的python大牛寫下的基礎心得!
web前端入門學習順序

TAG:IT技術java交流 |

您可能感興趣

Steam開發者和發行商Beta測試版頁面現已上線
Firebug頁面概況查看
解決weblogic頁面和控制台亂碼問題
Intellij idea集成的git頁面進行操作
當內容發生變化時,如何通過 BrowserSync 讓瀏覽器自動刷新頁面?
Less與TypeScript的簡單理解與應用,並使用WebPack打包靜態頁面
Servlet 自動刷新頁面
AutoLine源碼分析之靜態頁面模板及對應API介紹
Selenium及Headless Chrome抓取動態HTML頁面
SpringMVC 開發 — 使用 Swagger 搭建介面請求頁面
Valve公布Steam全新改版頁面:更酷更美觀
SpringBoot應用不能訪問項目靜態頁面html問題處理
Steam「關於」頁面泄露:全新簡潔扁平Steam用戶界面或即將到來
Android遠程調試Web頁面
移動端兼容問題:解決ios瀏覽器history.back頁面不刷新
GitHub 改版,重構頁面移除了 jQuery?
Json解析(jquery頁面)
Twitter iOS端測試新彈出頁面:可快速瀏覽個人資料
vue Router在新標籤打開頁面的實踐
《迸發2》Steam頁面上線 支持簡體中文