一、背景
为了防止有人恶意脚本进攻官网,高并发导致前端服务崩溃,所以官网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是想要设置缓存的路由 可通过函数来设置想要缓存的路由 如果想跳过缓存可以返回假值
},
store: { //store 有其他type存储的方式 具体可查看 https://github.com/arash16/nuxt-ssr-cache#readme
type: 'memory',
//缓存的最大的页面
max: 100,
// 缓存的时间 到期将过期
ttl: 60,
},
},
}
抛出的问题:
1、需要缓存那些页面?是全部的页面还是部分页面?
2、缓存的最大页面数量是多少?
3、缓存到期的时间设置为多少最适合自己的项目?
4、PC和H5双端缓存的配置是否相同?
5、以上问题全部解决后,业务方、测试方怎么去验收或者测试缓存的效果?
6、如加上缓存以后,对SEO友好度增加多少?谁去跟进?