一、背景
為了防止有人惡意腳本進攻官網,高并發(fā)導致前端服務崩潰,所以官網PC端和H5端要加上nuxt服務端緩存機制。
二、方法
使用nuxt插件nuxt-ssr-cache
三、使用方法
- npm install nuxt-ssr-cache -S
- 在nuxt.config.js中進行配置
module.exports = {
version: pkg.version, //如果提供了一個版本 他將會存儲在緩存中,當再次部署的時候 將會把舊版本替換為新版本
modules: [
'nuxt-ssr-cache'
],
cache: {
useHostPrefix: false, //是否使用主機前綴 如果提供了多個主機名 可以設置為true
pages: [ //將要緩存的頁面
//匹配所有頁面
'/',
//可直接寫頁面的路由路徑
'/page1',
// 可通過正則來匹配路徑
/^\/page2\/\d+$/,
// 使用正則匹配首頁
/^\/$/
],
key(route, context) {
return route //return 的route是想要設置緩存的路由 可通過函數(shù)來設置想要緩存的路由 如果想跳過緩存可以返回假值
},
store: { //store 有其他type存儲的方式 具體可查看 https://github.com/arash16/nuxt-ssr-cache#readme
type: 'memory',
//緩存的最大的頁面
max: 100,
// 緩存的時間 到期將過期
ttl: 60,
},
},
}
拋出的問題:
1、需要緩存那些頁面?是全部的頁面還是部分頁面?
2、緩存的最大頁面數(shù)量是多少?
3、緩存到期的時間設置為多少最適合自己的項目?
4、PC和H5雙端緩存的配置是否相同?
5、以上問題全部解決后,業(yè)務方、測試方怎么去驗收或者測試緩存的效果?
6、如加上緩存以后,對SEO友好度增加多少?誰去跟進?