当前位置: 首页 > wzjs >正文

做指甲的网站叫什么名字来着免费站推广网站不用下载

做指甲的网站叫什么名字来着,免费站推广网站不用下载,平面设计师工资现状,做社交网站的预算最近有一个项目,全部数据给的是json文件,大量json文件的读取导致IO读取爆表,但是不给提供数据库 现有解决办法就是把所有文件在项目构建时,读取存为全局变量,缓存在内存里,减轻I/O压力 server/plugins/apps…

最近有一个项目,全部数据给的是json文件,大量json文件的读取导致IO读取爆表,但是不给提供数据库

现有解决办法就是把所有文件在项目构建时,读取存为全局变量,缓存在内存里,减轻I/O压力

server/plugins/apps.ts 中获取的数据会存在内存中

这是因为:

  1. 该文件中定义的变量是在模块级别定义的,它的生命周期会持续到服务器运行期间。
  2. 当使用 defineNitroPlugin 时,这个插件会在服务器启动时执行一次,将数据加载到 appsData 变量中
  3. 在 Node.js 中,模块级别的变量会被缓存,并且在整个服务器运行期间保持存在。
  4. 在 Nuxt3 的 Nitro 服务器中,defineNitroPlugin 确保了这个初始化过程只会在服务器启动时执行一次。

实现步骤:

server/plugins/app.ts

// 定义一个全局变量来存储应用数据
let appsData: any[] = []
let loadCount = 0 // 添加计数器来验证加载次数export default defineNitroPlugin(async () => {try {loadCount++console.log('=== 开始预加载应用数据 ===', '第', loadCount, '次加载')const filePath = 'public/data/apps'const files = await fs.readdir(filePath)console.log('===找到文件:', files.length, '条文件 ===')const apps = await Promise.all(files.map(async file => {const content = await fs.readFile(path.join(filePath, file), 'utf8')return JSON.parse(content)}))// 将所有应用数据合并并存储到全局变量中appsData = apps.flat()console.log('=== 应用数据预加载完成,共加载', appsData.length, '条数据 ===')} catch (error) {console.error('Error preloading apps data:', error)}
})// 导出一个函数来获取应用数据
export function getAppsData() {console.log('---从内存中获取应用数据,当前数据条数:', appsData.length, '---')return appsData
} 

调用方法

server/api/app/[slug].get.ts

import { getRouterParam } from 'h3'
import { getAppsData } from '~/server/plugins/apps'export default defineEventHandler(async (event) => {try {const slug = getRouterParam(event, 'slug')// 使用预加载的数据const allApps = getAppsData()// 根据slug查找应用const app = allApps.find(app => app.slug === slug)return app} catch (error) {console.error('Error finding app:', error)return null}
}) 
http://www.dtcms.com/wzjs/30985.html

相关文章:

  • 桂林网站开发男生最喜欢的浏览器
  • 网站开发怎么做windows优化大师怎么用
  • 如何给网站做右侧导航seo排名大概多少钱
  • 个人备案网站内不能出现什么内容河北seo诊断培训
  • 吉林教育网站建设方案google下载app
  • 龙华网站制作公司win7最好的优化软件
  • 做网站交互效果用什么软件今天发生的重大新闻
  • 郑州最好的妇科医院seo云优化是什么意思
  • 京东的网站建设历史重庆seo技术教程
  • 自己做网站 发布视频教程软文广告
  • 深圳网站排名优化团队网站优化公司排名
  • 上海做网站公司做网站的公司百度认证怎么认证
  • 网页设计实训总结报告3000字专业seo网络营销公司
  • wordpress 站内搜索百度网页版主页
  • 网址和网站的区别郴州网站建设
  • 合肥建设厅网站sem和seo是什么职业
  • 中企动力做网站的价格宁波seo网络优化公司
  • 塑料袋销售做哪个网站推广好品牌宣传策划方案
  • 做什么网站比较简单上海网站seo招聘
  • 网站域名如何备案网站优化北京seo
  • 安陆网站开发百度网站app
  • 织梦响应式网站怎么做做网络推广有哪些平台
  • 建平县营商环境建设局网站创建网页
  • 做外贸到什么网站上发布比较好竞价排名是什么
  • 网站关键字代码微商引流推广
  • 化妆品品牌网站建设深圳网站推广
  • wordpress 清理插件淘宝seo软件
  • 做啤酒纸箱包装的网站挖掘爱站网
  • wordpress在线播放电影抖音搜索seo排名优化
  • 网站建设在哪块做什么是关键词广告