未进化的程序猿
人生最苦痛的是梦醒了无路可走。做梦的人是幸福的;倘没有看出可走的路,最要紧的是不要去惊醒他。鲁迅

一、Redis 简介 

1、中国被世界黑的最惨的一天 

2007年10月30日,北京奥运会门票面向境内公众第二阶段预售正式启动。上午一开始,公众提交申请空前 踊跃。上午9时至10时,官方票务网站的浏览量达到了800万次,票务呼叫中心热线从9时至10时的呼入量超 过了380万人次。由于瞬间访问数量过大,技术系统应对不畅,造成很多申购者无法及时提交申请,为此北 京奥组委票务中心对广大公众未能及时、便捷地实现奥运门票预订表示歉意。 

2、不可回避的问题 

奥运会门票预售系统开放第一天,上午9点正式开始售票到中午12点,3个小时内,票务网站被浏览次数达到2000万次。 

 3、一个神奇的网站 

 

 3、大型翻车现场 

4、问题现象

1)、海量用户的访问

2)、高并发,海量用户同时访问你的网站

5、罪魁祸首——关系型数据库 

1)、性能瓶颈:因为磁盘的IO读写的性能低下

2)、扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群 

6、解决思路 

1)、降低磁盘IO次数,越低越好    —— 内存存储

2)、去除数据间关系,越简单越好  —— 不存储关系,仅存储数据

7、Nosql 非关系型数据库

NoSQL:即 Not-Only SQL( 泛指非关系型的数据库),作为关系型数据库的补充。 

作用:应对基于海量用户和海量数据前提下的数据处理问题。 

特征:

1)、可扩容,可伸缩

2)、大数据量下高性能

3)、灵活的数据模型

4)、高可用 

常见 Nosql 数据库:

1)、Redis

2)、memcache

3)、HBase

4)、MongoDB 

8、解决方案(电商场景) 

 9、Redis 

概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。

特征:

1)、数据间没有必然的关联关系

2)、内部采用单线程机制进行工作

3)、高性能。官方提供测试数据,50个并发执行100000 个请求,读的速度是110000 次/s,写的速度是81000次/s。

4)、多数据类型支持

  • 字符串类型 string

  • 列表类型 list

  • 散列类型 hash

  • 集合类型 set

  • 有序集合类型 sorted_set

5)、持久化支持。可以进行数据灾难恢复

10、Redis 的应用 

1)、为热点数据加速查询(主要场景),如热点商品、热点新闻、热点资讯、推广类等高访问量信息等

2)、任务队列,如秒杀、抢购、购票排队等

3)、 即时信息查询,如各位排行榜、各类网站访问统计、公交到站信息、在线人数信息(聊天室、网站)、设
备信号等

4)、 时效性信息控制,如验证码控制、投票控制等

5)、分布式数据共享,如分布式集群架构中的 session 分离

6)、 消息队列

7)、分布式锁

 

 

posted on 2020-12-11 11:19  甘茂旺  阅读(60)  评论(0编辑  收藏  举报