Redis自己的理解

Redis的自我理解

作为一个萌新初学者,我将自己对于redis的理解和自己想要表达出来的东西写在这里,一方面作为自己的知识的梳理,另一方面也是自己理解的分析。
写出来让大家帮忙看看,有什么不对的我可以及时去更改。

Redis这个东西在企业里用的非常多,现在互联网的架构都在发生演变,之前的大部分网站都时一个简单的mysql加php网站,没有那么多的高并发访问,随着时间的发展人们发现这种方式会出现瓶颈,高并发的访问对于数据库的压力特别大,所以他们开始选用了更好用数据库oracle但是发现oracle也是扛不住。
瓶颈:当所有的请求打在数据库上时也会出现性能瓶颈。(白话处理太多数据库处理不过来直接干蒙了)
我们要永远明白一个道理永远不要相信磁盘有多快,它是电脑中最慢的一个存贮介质,比磁盘更快的是内存 (内存是随机读取) 磁盘(磁盘是顺序读取)
磁盘靠它每分钟7200转来找数据,你会感觉它很快了其实真的不快。 内存和硬盘不是一个等级的东西。
价钱方面买一个G的内存就是硬盘的几倍,速度也是100倍的差距。虽说内存很好但是内存一断电就没了,不能持久化。
所以可以将这些热点数据需要处理频繁的东西放到内存中去。并在合适的时间持久化,保存下来。
计算机中处理最快的时 Cpu ,突出天际的那种,当内存跟不上cpu的处理速度所以推出了 高速缓存,一级缓存,二级缓存。这种缓存让内存可以跟的上cpu了一点吧。从而让我们系统运行更加流畅。
如果把一份不相同的数据存在不同的介质中,会出现数据一致性的问题。要保证内存中和数据库存的数据一致,保证cpu在高速缓存区的数据和人家内存中的数据一致,等多线程和分布式数据一致性问题。这是我们在享受技术带来的便利时会遇到这种新的问题。
Redis是nosql的一种。不仅仅是sql, Mongodb 一个基于分布式文件存储的数据库。
为了适应高并发这种问题我们开始了:
1.一个mysql顶不住就多个mysql,进行主从分离,读写分离,主从同步,读写分离。
多个如何关联呢?
Mysql里面有一个二进制文件,用其他的mysql订阅这个二进制文件,被订阅的叫主,订阅的叫从,主数据库一更新,它的二级制文件就会更新,订阅它二进制文件的从数据库也就跟着更新了,有了多台mysql就可以,读写分离,所有的写打在主mysql,所有的读都在在从mysql上。这样并发就比较小了。

然后在mysql中间加一个缓存。好多热点数据放在缓存里面,所有的请求过来之后先在缓存里面拿,没有再去数据库,这样就可以减小压力。
redis就是可以在这里的中间缓存。

去mysql查的这种行为叫磁盘io.(去磁盘拿东西 io输入输出) 比它更不可靠的叫网络io

如果你一条数据既要磁盘io又要网络io拿数据,那这个查就贼慢。 设计时就要合理的去规避。把数据往前拉(打开一个浏览器离用户最近的缓存本地比如经常打开一个百度网页,他就会默认的给你本地缓存这个网页的东西,就是你打开经常看到的东西,它自己会有hash算法来刷新自己的页面元素保持更新)
2.一套顶不住多放几套,之后会接触shadingjdbc, mcat等数据库中间件,来进行分库分表。
还是顶不住,现在部署最前面一个企业防火墙,后面时负载均衡器(ngix,F5)然后各种mysql集群,nosql集群。 常用的mysql:
1.key-value存储数据库 常用的缓存都是key-vlue 一看到就是map集合很像,hash(哈希)表通过key和值来确定一对一对。
2.大数据存储用列示存储HBase.
3.MongoDB文档行数据库
4.图形数据库Neo4j

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值