提高性能的常见技术

1.数据库层面:

  • 读写分离,对于大部分业务来说,读取操作要大于写入,同一个库,既读又写的话,负载会比较重,拆分为读库和写入库,可以降低数据库的负载,分时或延迟将写入的数据同步到读取库中
  • 分库or分表,在数仓中,每一层使用一个库,对于大表,按照区域,时间等拆分成小表,这样每次读写操作需要遍历的数据量会减少,也会提高性能,再细分的话又有垂直拆分与水平拆分
  • 缓存:这是一个应对频繁读取操作的一个常见设计,同一个查询,如果短时间再次查询,直接读数据库,负载增大,如果把经常读取的数据写入缓存,可以减少读取压力,当然这样会导致一致性问题,例如底层数据改变,缓存没更新
  • 分布式:分而治之的思想,常见的如hadoop,通过mapreduce过程,将大的任务切割成小的,分布执行,然后将结果汇总起来
相关推荐
蜘蛛小助理1 分钟前
研发团队效率神器:手把手教你用蜘蛛表格构建自动化任务管理中枢
数据库·自动化·任务管理·多维表格·蜘蛛表格
计算机毕设VX:Fegn089511 分钟前
计算机毕业设计|基于springboot + vue酒店管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Hui Baby14 分钟前
全局事务入口感知子事务方法-TCC
java·开发语言·数据库
Leon-Ning Liu27 分钟前
Oracle 19c RAC报错ORA-17503,ORA-27300,ORA-27301,ORA-27302
数据库·oracle
嘟嘟w1 小时前
DROP DELETE 和TRUNCATE的区别?
数据库·mysql·oracle
Navicat中国1 小时前
Navicat x 达梦技术指引 | 数据字典
数据库·达梦·可视化·navicat·数据字典
running up2 小时前
Spring核心深度解析:AOP与事务管理(TX)全指南
java·数据库·spring
一水鉴天2 小时前
整体设计 定稿 之6 完整设计文档讨论及定稿 之1(豆包周助手)
java·前端·数据库
倔强的石头_2 小时前
金仓数据库(KingbaseES) 开发实战:常见迁移挑战与技术解析
数据库
编程小白gogogo2 小时前
苍穹外卖后端环境搭建-数据库环境搭建
数据库