标签:任务队列 查询 决定 数据库 cache 引入 分布式 价格 高性能
由于业务量的增大,用户量增大、并发量增高,数据量增多,导致页面查询速度降低,只用传统的关系型数据库已经无法支撑系统的高并发,高可用的场景了。
关系型数据库的缺点:
1.性能瓶颈:磁盘IO性能低下
1.扩展瓶颈:数据关系复杂,扩展性差,不便于大规模的集群
解决思路
1.降低磁盘IO次数
2.去除数据间的关系
由此需求产生了NoSql即非关系型数据库
NoSql即非关系型数据库,定位为关系型数据库的补充
1.高性能
2.灵活的数据模型
3.可扩容,可伸缩
4.高可用
Redis
MongoDB
Memcached
HBase
基于电商场景
产品基本信息如名称、价格、厂商等-->关系型数据库 Mysql等
商品附加信息如描述、详情、评论-->MongoDB
图片信息-->文件/图片服务器
关键字搜索-->ES 等
热点信息-->Redis、Memcached
结合系统情况,决定引入Redis
特征:
1.内存存储
2.数据之间无必然关联
3.单线程
4.高性能
5.多种数据类型 string、list、hash、set、sorted_set
6.可持久化,用于数据灾难恢复
1.热点数据加速查询,如热点商品、热点新闻、资讯、推广等高访问两信息
2.任务队列,如秒杀、抢购、购票
3.即时信息查询,如各类排行榜、各类统计、在线人数等
4.时效性控制,如验证码、投票
5.分布式数据共享,如分布式集群架构中的session分离
6.消息队列
7.分布式锁
标签:任务队列 查询 决定 数据库 cache 引入 分布式 价格 高性能
原文地址:https://www.cnblogs.com/zhao56/p/14874285.html