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

网站建设排版佛山网站制作网址

网站建设排版,佛山网站制作网址,wordpress 多个网址,不同类型网站优化失败是成功之母 ——法国作家巴尔扎克 目录 单线程模型 Redis为什么这么快 单线程模型 redis只使用一个线程,处理所有的命令请求,不是说redis服务器进场内部真的就只有一个线程,其实也有多个线程,那就是处理网络和io的线程。 R…

 失败是成功之母  ——法国作家巴尔扎克


目录

单线程模型

Redis为什么这么快


单线程模型

        redis只使用一个线程,处理所有的命令请求,不是说redis服务器进场内部真的就只有一个线程,其实也有多个线程,那就是处理网络和io的线程。

        Redis使用单线程架构来实现高性能的内存数据库服务。

        下图是两个redis-cli客户端对同一个redis服务器进行+1请求:

        在学习java的过程中我们就可以很容易的就知道,这里肯定涉及到一个多线程问题,表面上是自增两次,但是实际上可能只自增了一次。 出现这种问题的原因就是并发。

        幸运的是redis并不会发生这种问题。因为redis是单线程模型,保证了接受多个请求,都是串行的执行,多个请求也是需要在请求队列中进行排队一个一个的执行。

        redis能够使用单线程模型来进行很好的工作,得益于redis的核心业务逻辑都是短平快。不需要消耗很多的cpu资源就可以执行。

redis单线程图解

        但是他也有弊端,那就是如果一个操作时间过长,那么就会影响其他任务的执行。


        说了这么多,既然是单线程,那为什么redis这么?🧐


Redis为什么这么快

        一切的快慢都是有参照物的,那么redis的快的参照物,毫无疑问那就是mysql和SqlServer等关系型数据库。因为redis是直接访问内存,而这些关系型数据库一般都是访问硬盘操作,访问内存的操作肯定比访问硬盘的操作要更加的快速。

        其次,redis要做的业务的核心功能更加简单。Redis既是访问内存,干的事也是很简单。关系型数据库mysql对于插入查询都有着更加复杂的功能支持,这样的功能势必要话费更多的开销。例如各种插入,都有各种约束,都会消耗性能,让数据库变慢。

        Redis干的活很少,提供的功能也是少了不少。🚀

        由于单线程模型,避免了一些不必要的线程竞争开销。

        处理网络IO的时候,使用了epoll这样的IO多路复用一个线程管理多个socket)再加上Redis 自身的事件处理模型将 epoll 中的连接、读写、关闭都转换为事件,不在网络 I/O 上浪费过多的时间。

Redis如何利用多路复用?

         一个线程, 就可以管理多个 socket针对 TCP 来说,服务器这边每次要服务一个客户端,都需要给这个客户端安排一个 socket一个服务器服务多个客户端, 同时就有很多个 socket.
        这些 socket 上都是无事不刻的在传输数据嘛??? 很多情况下,每个客户端和服务器之间的通信也没那么频繁此时这么多 socket 大部分时间都是 静默的上面是没有数据需要传输的。

        同一时刻只有少数的socket是活跃的,如果每一个客户端都生成一个socket,那么线程就多了,系统开销就大了。

        虽然单线程给 Redis 带来很多好处,但还是有一个致命的问题:对于单个命令的执行时间都是有要求的。如果某个命令执行过长,会导致其他命令全部处于等待队列中,迟迟等不到响应,造成客户端的阻塞,对于 Redis 这种高性能的服务来说是非常严重的,所以 Redis 是面向快速执行场景的数据库。

        所以我们应该避免keys * 这样的操作。


        你确实挺厉害,如果能从第一篇看到这里的话。不过这些大多数是我自己复习的文章,如果能帮到你是最好的,谢谢。

        下一篇如下:

Redis -- String 字符串, 计数命令,字符串操作-CSDN博客文章浏览阅读480次,点赞18次,收藏13次。Redis 的String字符串,已经一些常用命令:set ,get , mget , mset , setnx , setex, psetex。计数命令incr,decr,incrby,decrby,incrbyfloat。字符串操作:append, getstrang,setstrange,strlen.https://blog.csdn.net/niceffking/article/details/135952746

http://www.yayakq.cn/news/267476/

相关文章:

  • 网站开发服务税率是多少棋牌源码交易商城
  • 岳麓 网站设计网络营销方式和方法
  • 网站tag页面如何做wordpress图片文件夹更换
  • 建怎样的网站挣钱快什么网站的页面做的比较好看
  • 网站开发客户需求文档wordpress 文章登陆可见
  • 怎么做网站关键词视频跨境电商erp软件排名
  • 商务网站建设一万字app开发制作的图片
  • 专业网站建设管理招聘网站开发时间
  • 用凡科做的网站怎么下载郑州网络公司推荐
  • 邢台经济开发区网站环球资源网站什么时候做的
  • 校园网站建设的参考文献wordpress导航菜单设置
  • 做做网站wordpress wp_editor
  • 网站建设系统chi系统邯郸网站建设
  • 网站建设网页设计用什么软件深圳发布稳增长措施
  • app设计网站推荐wordpress get_tag
  • 阿里巴巴外贸网站首页科技开发公司
  • 阿里云做的网站误删了家具网站设计网
  • 余姚本地网站排名招商网站开发文档
  • 2023年封城通知湖南正规竞价优化服务
  • 公司两个网站可以做友情链接吗冷链物流网站
  • 网站定位策划什么网站可以做外链
  • 创建一家网站如何创google浏览器下载安装
  • php网站后台模板下载不了wordpress修改文字内容
  • 网站建设的原因有什么江苏市场监督管理局app
  • 网站制作公司网做别人一样的网站模板
  • 企业网站管理系统php源码手游排行榜2021前十名
  • 大连工程建设信息网站南京有关制作网站的公司
  • 文库网站开发教程企业微信和个人微信的区别
  • 古典asp网站源码网站点内页还是首页
  • 苏州专业网站设计制作公司优化seo