reactor模式redis线程

Redis实现防刷限流

限流场景: 秒杀活动,有人使用软件恶意刷单抢货,需要限流防止机器参与活动 某api被各式各样系统广泛调用,严重消耗网络、内存等资源,需要合理限流 使用Redis实现限流的思路: 通过ip:api路径的作为key,访问次数为value的方式对某一用户的某一请求进行唯一标识 每次访问的时候判断key是否 ......
Redis

行为型设计模式-观察者(发布订阅) Observer

### 简介 也叫做发布/订阅模式,多个观察者可订阅一个主题对象,当主题状态发生变化时会通知所有已订阅的观察者,观察者可自由处理。 ### 角色 - Subject/Publisher 主题/发布者 维护已订阅的观察者 通知已订阅的观察者 - 抽象Subscribe 订阅者 定义订阅者接口 - 具体 ......

行为型设计模式-中介者 Mediator

### 简介 通过引入一个中介者,将对象之间两两交互的情景,改为每个对象都是与中介者交互,即将网状关系改成了星状关系。缺点是中介者逻辑会很臃肿。 当系统中出现多对多的情况时,应该先考虑设计是否合理,而尽量不要直接使用中介者。 ### 角色 - 抽象Mediator中介者 - 具体Mediator中介 ......

行为型设计模式-迭代器 Iterator

### 简介 提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。 ### 角色 - Iterator抽象迭代器 - Collection抽象集合 - ConcreteIterator具体迭代器 - ConcreteCollection具体集合 ### 类图 如图,Iter ......
设计模式 Iterator 行为 模式

行为型设计模式-命令 Command

### 简介 client 发出的请求,都被封装成 Command 对象,每个 Command 对象代表一种操作,Command 具体操作的是 Receiver 对象内的方法。实现动作与目标隔离和复用的目的。 ### 角色 - 抽象 Command - Receiver 真正干活的 - 具体 Com ......
设计模式 命令 行为 Command 模式

行为型设计模式-责任链 Chain Of Responsibility

### 简介 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 ### 角色 - Handler 接口 定义处理方法签名,设置nextHandler方法 - Concrete Handler 具体类 实现 ......

结构型设计模式-代理 Proxy

### 简介 代理与装饰器很像,都是在原有类基础上,增量做改动。 不同在于,代理模式下,client 直接操作的就是 proxy 对象,new 的就是 proxy 对象,不可以让client 直接操作被代理对象,相当于原始类被完全隐藏掉了。 **类比现实生活,租房代理是不会让客户直接跟房东联系的,客 ......
结构型 设计模式 结构 模式 Proxy

设计模式-建造者模式

建造者模式是一种**创建型**的设计模式, 将一个对象的创建过程拆分成一个个小的部分, 每次决定其中的一个细节, 构建出一个复杂对象 对象的创建过程被拉长分散, 可能会经历一系列的复杂决策, 最终才会形成我们需要的对象 对象拥有多个参数, 或者拥有包含多个参数的构造函数, 通过建造者模式可以相对自由 ......
模式 设计模式

结构型设计模式-享元(缓存)Flyweight

### 简介 享元模式更常见的叫法是缓存或 cache,一个对象只创建一次,之后一直复用这一对象。 跟单例不同在于,单例是全局只有唯一一个对象,所有人一起用同一个对象,且该对象是提前预设好的,不能定制。 而享元则可以根据参数不同创建出不同的实例,不过实例一旦创建就只保留一份,之后再次创建相同参数的实 ......

Redis数据库学习

Redis 数据库的存储格式就有点像Map集合,有key-value,一个key指向一个value。 下载和安装 链接: https://pan.baidu.com/s/174vGmyAcUwaIvl4FgXRfnA?pwd=1234 提取码: 1234 解压后文件夹的内容: 然后在当前目录下运行c ......
数据库 数据 Redis

结构型设计模式-外观 Facade

### 简介 外观模式特点是屏蔽后端复杂的实现逻辑,将其整合成简单的一个或几个接口提供出去,client 只需与 Facade 层提供的简单接口交互即可。 例如银行办业务,后面涉及到很多财务细节,但用户面对的就是一个窗口业务员。 ### 角色 - Facade 外观层 - Subsystem 负责具 ......
结构型 设计模式 外观 结构 模式

装饰器模式:让你的对象变得更强大

在日常开发中,当需要给一个现有类添加附加职责,而又不能采用生成子类的方法进行扩充时。例如,该类被隐藏或者该类是终极类或者采用继承方式会产生大量的子类。这时候,我们该怎么办呢?我们可以使用装饰器器模式来解决这个问题,**本文将从以下四个方面讲解装饰器器模式**。 - 简介 - 优缺点 - 应用场景 - ......
对象 模式

结构型设计模式-组合(对象树) Composite

### 简介 组合模式又叫对象树,将对象按照树形结构串起来,呈现出局部和整体相同的特性。 树中每个节点都由两部分组成,首先节点有自己的业务数据,其次节点内可以含有子节点集合。 比如盒子中可以放物品,也可以放其他小盒子,小盒子里又可以放物品和其他更小的盒子。 当计算盒子的物品价格时,只需要将盒子里本身 ......

结构型设计模式-桥接(模块化) Bridge

### 简介 桥接模式可将一系列紧密相关的、水平等级的类,转变为组合关系,形成垂直等级关系。 如抽象类 Color、Shape,分别有 RedColor、BlueColor、CircleShape、SquareShape 的实现类,那么想创建红色方形,则可以将 Shape 类中持有 Color 引用 ......
结构型 设计模式 模块 结构 模式

结构型设计模式-适配器 Adapter

# 结构型设计模式-适配器 Adapter date: April 13, 2021 slug: design-pattern-adapter status: Published tags: 设计模式 type: Page ### 简介 适配器模式是一种结构型设计模式, 它能使接口不兼容的对象能够相 ......

创建型设计模式-单例 Singleton

### 简介 全局共用一个对象,好处是对象只实例化一次,减少资源占用 ### 角色 - 单例类 返回本类的唯一一个实例 ### 代码 ```php class Singleton { private static $instances = []; protected function __const ......
设计模式 Singleton 模式

创建型设计模式-原型 Prototype

### 简介 原型模式支持按照一个对象为模板,创建出另一个一模一样的对象。 简单说就是把 A 对象的属性,都赋值到 B 上,注意必须是深拷贝,即 clone 后的 AB 关联的对象是不同的对象。 ### 角色 - 抽象原型类 定义 clone 方法 - 具体实现类 实现 clone 方法 ### 类 ......
设计模式 原型 Prototype 模式

Redis线程模型

对于读写命令来说,Redis 一直是单线程模型。不过,在 Redis 4.0 版本之后引入了多线程来执行一些大键值对的异步删除操作, Redis 6.0 版本之后引入了多线程来处理网络请求(提高网络 IO 读写性能)。Redis默认十个数据库,默认是第0个1.Redis 单线程模型了解吗? Redi ......
线程 模型 Redis

学习笔记-设计模式-创建型模式-工厂模式

### 工厂模式 工厂模式是一种创建者设计模式,细分之下可以分成三类`简单工厂模式`,`工厂方法模式`和`抽象工厂模式`。 #### 简单工厂模式 最简单的工厂模式,它采用静态方法的方式来决定应该应该生产什么商品。 ```java public class StoreFactory { public ......
模式 设计模式 工厂 笔记

通过Telnet连接Redis Server

#### 1. 为什么要用Telnet连接Redis Server 在生产环境中,很多时候,是没有redis客户端的,尤其是在k8s的场景中,为了轻量化镜像的大小,包括jdk,redis-cli都是不会默认安装的。那么这个时候,我们希望在线上环境连接Redis就会比较麻烦了,这个时候通过Telnet ......
Telnet Server Redis

centos7 配置redis设置开机自动启动

centos 7以上是用Systemd进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。 Systemd服务文件以.service结尾,比如现在要建立redis为开机启动,如果用yum in ......
centos7 centos redis

C++系列十:日常学习-多线程

# [TOC](多线程) # 介绍: C++ 是一种支持多线程编程的编程语言,它提供了丰富的多线程支持来充分利用现代多核处理器的性能。 C++ 多线程编程通常使用标准库中的 头文件以及其他相关的标准库组件来实现。 # 理论: 1. 常用的类: std::thread 类,用于创建和管理线程等等 st ......
线程

win7|10|11强制启动安全模式

win10|11: 按电源开机在出现Windows的开机logo时候长按电源关机,重复三次 操作可以参考(有图):https://jingyan.baidu.com/article/a3aad71ac5919bb1fa009667.html 参考:https://answers.microsoft. ......
模式 win7 win 10 11

【Redis】【配置文件】Redis 配置详解

1 前言 这节我们复习下 Redis 的配置哈,配置也是学习的一部分,配置也能体现 Redis 设计者们的一些思路哈。 2 配置说明 1 ################################### NETWORK ################################### 2 ......
Redis 文件

设计模式系列文章

本系列文章介绍常见的设计模式,按照设计模式的类别注意介绍。设计模式一般可分为三种大类型:创建型、结构型,行为型。 - **创建型**:讨论的是如何创建实例,将对象的创建和对象的使用分离。 - 工厂方法 Factory Method - 抽象工厂 Abstract Factory - 建造者 Buil ......
设计模式 模式 文章

单线程&多线程--GPT

Q: 你是个计算机工程师,请用Python分别演示用单线程和多线程计算两个矩阵相乘 ## GPT-4: 在 Python 中,计算矩阵乘法可以用多种方式实现,包括使用单线程和多线程。以下是两种简单的示例: **单线程** ```python def matrix_multiply(A, B): ro ......
线程 amp GPT

创建型设计模式-建造者 Builder

### 简介 建造者模式可将对象的初始化转变成一步步配置的过程。如当对象的初始化时有很多可选参数,建造者模式可以定制参数实现对象的创建。好处有: 1. 定制对象参数 2. 针对不同参数,做不同的校验,如当设置了三角形的两个边长,设置第三个边时必须满足两边之和大于第三边的条件。 ### 角色 - Bu ......
设计模式 Builder 模式

创建型设计模式-抽象工厂 Abstract Factory

### 简介 拿工厂方法模式作对比,在工厂方法模式中,一个工厂只能创建一种产品,如椅子工厂只能创建椅子。而抽象工厂可以创建一系列产品,如家具工厂可以创建椅子,桌子,床等等。 抽象工厂类负责定义可以创建的抽象产品类,具体工厂编写不同风格(即各自的业务逻辑)的创建产品的过程。 ### 角色 - 抽象工厂 ......
设计模式 Abstract 工厂 Factory 模式

创建型设计模式-工厂方法 Factory Method

### 简介 工厂方法中,每一个具体工厂类都对应创建一个具体产品类,所有具体工厂类都实现抽象工厂,所有具体产品类都实现抽象产品。 抽象工厂定义了创建抽象产品的方法签名,具体工厂类各自实现各自逻辑,来创建具体的产品。 ### 角色 - 抽象工厂 Abstract Factory 定义创建产品的方法签名 ......
设计模式 工厂 Factory 模式 方法