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

初识Redis之分布式

一.简单介绍:

        Redis是用来在内存中, 存储数据的, 他的初心是用来搞'消息中间件'(或者说消息队列 很熟悉了吧~~),但是呢用的不多,他现在主要是用来做 数据库,缓存

        用来存储数据, 为什么不直接存储呢?   Redis的优势就在于'分布式系统'

二.分布式系统

        要说其分布式系统,简单想想都能感觉到~分布开,说明应该不只有一个~~ 那我们从最底层的开始,如果只有一个系统的时候又是什么呢?为什么要搞出那么多的系统?难道复杂程度不会直线上升吗?

1)单机架构: 只有一台主机,负责所有的工作 应用服务器(处理业务逻辑)->存储服务器(记录数据)

        okk~~我们都知道,服务器处理请求的时候,每一次都要消耗一些资源,那资源太多了处理不过来了,怎么办?

        两个办法~~i) 节流: 软件优化~性能测试,哪里不行优化哪里(有一定的技术要求)

                          ii)开源 -> 简单粗暴,哪里资源不够扩充哪里,当然这边必然有上限啊 --> 那一台扩展到极限了,我们就引入多台~~这个时候系统就叫'分布式系统'了

2)分布式系统 : 多台主机,负责工作(所以,复杂程度是上升的~)

        这个时候,应用服务器和存储服务器也不在一台主机上了, 根据他们的业务逻辑不同,我们分别对应更好的硬件给他们,性价比更高

        如果应用服务器承担不了请求, 我们就再扩充增加应用服务器,然后利用负载均衡给他们相对平均的分配任务

        如果存储服务器承担不了数据, 我们就也增加, 搞出一个主数据库(专门用来写数据),之后让他把数据同步到从数据库(专门读取数据)就可以了~~~敲黑板:一主可多从

        数据库的表很大怎么办? 我们这个时候可以进行分库分表呀~~就像一个大的项目,拆分成不同的小任务~

        但是,数据库响应很慢,能不能解决一下?? 其实我们都知道~有一些高频的信息它能满足绝大部分需求,那我们将这些重点信息扔到缓存里,不就行了吗!(Redis在分布式系统中,就扮演缓存的角色~~ -> 其实有一个问题,数据库如果修改数据,缓存这里怎么及时修改)

        有没有发现,其实这样扩充扩充,很复杂? 我们其实可以搞出微服务架构~拆分成更多,功能更单一,更小的服务器~~但是这件事是有利弊的

简单来说,当一台服务器不足以去处理请求,我们就引入多台->分布式系统, 什么不足就增添什么,对于数据存储的话,搞出来提高读取速度的缓存数据库,读写各肩其职的主从数据库,以及库表太大的分库分表操作

http://www.lryc.cn/news/147230.html

相关文章:

  • 计算机网络-笔记-第三章-数据链路层
  • 【1】openGL glew示例代码分析绘制一个三角形
  • android:新建工程文件介绍
  • 强化历程6-网络系列(2023.8.30)
  • 下载MedShapeNet
  • 根据身高重建队列【贪心算法】
  • 基于Java+SpringBoot+Mybaties-plus+Vue+ElementUI 高校汉服租赁网站的 设计与实现
  • SQL-DQL
  • 手写深拷贝方法
  • 格子游戏——并查集
  • 2023最新Python重点知识万字汇总
  • 【STM32】学习笔记(TIM定时器)-江科大
  • Parallel Context Windows for Large Language Models
  • 怎么消除人声保留背景音乐?试试这几种简单方法
  • 积分游戏小程序模板源码
  • IDEA启动两个Tomcat服务的方式 使用nginx进行反向代理 JMeter测试分布式情况下synchronized锁失效
  • Shell 脚本入门
  • 管理类联考——逻辑——形式逻辑——汇总篇——知识点突破——性质模态
  • 无涯教程-Android - ToggleButton函数
  • unity VS无法进行断点调试
  • Pandas由入门到精通-组合与合并数据
  • Unexpected mutation of “xxxx“ prop
  • 七、基础篇总结
  • 前端面试基础面试题——2
  • docker 搭建rknn转换环境
  • 机器学习:争取被遗忘的权利
  • MATLAB实现AHP层次分析法——以情人节选取礼物为例
  • flutter使用Chanel与原生通信
  • Kubernetes技术--k8s核心技术Helm
  • C/C++学习——单例模式(懒汉模式与饿汉模式)