reactor模式redis线程

简单工厂模式:提高代码可维护性与扩展性的设计模式

简单工厂模式是一种创建对象的设计模式,其旨在通过一个共同的工厂类来实例化不同的对象。通过使用统一的接口或基类,并根据客户端的需求返回相应的实例,简单工厂模式可以隐藏对象的具体创建细节,使客户端代码更加简洁和可维护。 在简单工厂模式中,工厂类扮演着关键角色。它负责根据传入的参数或条件决定创建哪种类型... ......

行为模式

## 责任链模式 **责任链模式**是一种行为设计模式, 允许你将请求沿着处理者链进行发送。 收到请求后, 每个处理者均可对请求进行处理, 或将其传递给链上的下个处理者。比如 `kratos`,`gin`等开源库的中间件实现。 ### 代码实现 ```go package main import ( ......
行为 模式

redis分布式锁实现

```java @Autowired private RedisTemplate redisTemplate; //有死锁问题,设置锁的过期时间防止死锁 public void incr() { Boolean lock = redisTemplate.opsForValue().setIfAbse ......
分布式 redis

spring中的bean是否是线程安全的

> Spring中的bean是否线程安全,与Spring本身是无关的。Spring中会提供很多线程安全方面的策略,因此Spring中的bean也不具备线程安全的特性 > > 在Spring的作用域中,有以下几种; > > - prototype(多例) > - 每次getBean得到时候都会创建一个 ......
线程 spring bean

结构型模式

## 适配器模式 适配器模式用于转换一种接口适配另一种接口。比如,现在有个借口是对`json`字符串进行分析等,现在有一些`yaml`文件也要分析,这时候我我们就应该给`yaml`字符串就个适配器,转换成`json`字符串,然后就行分析。 ### 代码实现 ```go package main im ......
结构型 结构 模式

进程与线程的区别

线程的特点 一个进程中有多个线程, 每个线程都有自己独立的程序计数器、寄存器和堆栈(虚拟机栈和本地方法栈)。 但线程之间共享着资源——当前进程地址空间、全局变量、打开的文件信息(堆和方法区资源)。 而进程之间不共享地址空间,相互独立,之间的通信(IPC)需要进行系统调用,消耗的算力比线程之间交流要大 ......
线程 进程

结构型模式概述

结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: ......
结构型 结构 模式

线程上运行 task

我没能实现始终在一个线程上运行 task 前文我们总结了在使用常驻任务实现常驻线程时,应该注意的事项。但是我们最终没有提到如何在处理对于带有异步代码的办法。本篇将接受笔者对于该内容的总结。 如何识别当前代码跑在什么线程上 一切开始之前,我们先来使用一种简单的方式来识别当前代码运行在哪种线程上。 最简 ......
线程 task

桥接模式

[toc] ### 1. 概述 现在有一个需求,需要创建不同的图形,并且每个图形都有可能会有不同的颜色。我们可以利用继承的方式来设计类的关系: ![](https://img2023.cnblogs.com/blog/1886066/202306/1886066-20230626221021871- ......
模式

4 线程上下文切换

## 线程上下文切换(Thread Context Switch) 上下文切换(Context Switch)是指:因为以下一些原因导致 cpu 不再执行当前的线程,转而执行另一个线程的代码 ,导致上下文切换的原因有如下等: * 线程的 cpu 时间片用完 * 垃圾回收 * 有更高优先级的线程需要运 ......
上下文 线程 上下

3 查看线程和进程的方法

## 查看线程和进程的方法 ### 1. windows * 任务管理器可以查看进程和线程数,也可以用来杀死进程 * tasklist 查看进程 * taskkill 杀死进程 ### 2. linux * ps -fe 查看所有进程 * ps -fT -p 查看某个进程(PID)的所有线程 * k ......
线程 进程 方法

5 线程中的常用方法

## 线程中的常用方法 | 方法名 | static | 功能说明 | 注意事项 | | : | : | : | : | | start() | | 启动一个新线 程,在新的线程运行 run 方法 | start 方法只是让线程进入就绪,里面代码不一定立刻运行( CPU 的时间片还没分给它)。每个线 ......
线程 常用 方法

2 创建线程的几种方式

## 创建线程的几种方式 ### 方式1 重写Thread中的run方法 >```java >//方式一 重写Thread中的run方法 >public class CreateThread1 { > public static void main(String[] args) { > //指定线程 ......
线程 方式

redis初见

# redis介绍 redis下载: ```python 1、官网:https://redis.io/ - 目前最稳定:6.x版本 - 最新版本:7.x 2、中文网:http://redis.cn/download.html - 上面最新只到5.x版本 3、windows版本下载地址 - redis ......
redis

转载: redis中的bigkey问题

reference: https://www.modb.pro/db/459810 什么是bigkey bigkey就是redis key/value体系中的大value问题。我们知道redis的底层数据存储结构中,有多种数据结构的实现。 String: 简单动态字符串 List: 双向链表、压缩列 ......
bigkey 问题 redis

组合模式详解

## 简介 组合模式(Composite)是针对由多个节点对象(部分)组成的树形结构的对象(整体)而发展出的一种结构型设计模式,它能够使客户端在操作整体对象或者其下的每个节点对象时做出统一的响应,保证树形结构对象使用方法的一致性,使客户端不必关注对象的整体或部分,最终达到对象复杂的层次结构与客户端解 ......
模式

项目集成redis实战

项目集成redis实战 1.进入到项目的tomcat配置文件中,修改redis服务器和密码 cd /usr/src/tomcat-pinter/webapps/WEB-INF/classes/ vi application.properties. 2.杀死tomcat进程,重启服务 3.重启服务 c ......
实战 项目 redis

基于docker部署redis

Docker中部署redis一、在docker中拉去redis镜像docker pull redis二、在本机给redis创建配置文件1.mkdir –p /root/docker/redis/conf2.上传redis自带的redis.conf到改目录下。注意:有可能xftp无法链接,可以先传到其 ......
docker redis

linux下redis安装与使用

linux下redis安装与使用一、redis安装1.上传reids压缩包到任意目录,一般与mysql数据库放一起。/usr/src2.redis压缩包解压tar xvf redis-7.0.4.tar.gz3.用gcc编译C语言,先安装gccyum install –y gcc4.进入到解压后的r ......
linux redis

结构型模式-动态代理模式

# 模式类型:结构性模型 # 模型方法:动态代理模式 # 作用:相对于静态代理,动态代理更灵活。不需要手动实现接口类中的所有方法,接口新增方法后动态代理无需修改。 # 使用场景:监控。日志,限流 from abc import ABCMeta, abstractmethod import types ......
结构型 模式 结构 动态

【3.0】知识点小结(线程相关)

# 【3.0】知识点小结(线程相关) # 【一】什么是线程 - 进程 - 资源单位 - 线程 - 执行单位 - 将操作系统比喻成大的工厂 - 进程相当于工厂里面的车间 - 线程相当于车间里面的流水线 > 每一个进程必定自带一个线程 > 进程:资源单位 > > ​ 起一个进程仅仅只是 在内存空间中开辟 ......
知识点 线程 小结 知识 3.0

【4.0】知识点小结(线程进阶)

# 【4.0】知识点小结(线程进阶) # 【一】什么是死锁与递归锁 - 死锁是指两个或多个进程,在执行过程中,因争夺资源而造成了互相等待的一种现象。 - 即两个或多个进程持有各自的锁并试图获取对方持有的锁,从而导致被阻塞,不能向前执行,最终形成僵局。 - 在这种情况下,系统资源利用率极低,系统处于一 ......
知识点 线程 小结 知识 4.0

13、vlan与交换机端口模式Access、Trunk

交换机每个接口处于不同的冲突域中,但是还是在一个广播域中,当网络中发送一个广播报文后,网络内的终端都能收到,这样消耗网络宽带资源,vlan(虚拟局域网)。 vlan将局域网设备从逻辑上划分为一个个网段,vlan技术主要解决了交换机无法隔离广播域的问题,主要原理是从逻辑上建立多个虚拟网,相同vlan用 ......
交换机 端口 模式 Access Trunk

一文掌握设计模式(定义+UML类图+应用)

一、引子 从学编程一开始就被告知,要想做一名优秀的程序员两大必要技能:1.源码阅读(JDK、C等底层语言封装) 2.设计模式(使用某种语言优雅的落地典型场景功能)。一般随着工作年限的增长,被迫对底层语言/框架源码阅读的越来愈多,但是设计模式如不刻意去学习,永远不会真正掌握。笔者把设计模式比喻成程序员 ......
设计模式 模式 UML

结构型模式-静态代理模式

# 模式类型:结构性模型 # 模型方法:静态代理模式 # 作用:在不修改目标代码的情况下,可以控制目标代码的访问,可以在其前后添加自己的业务代码 # 使用场景:监控。日志,限流 from abc import ABCMeta, abstractmethod class ITeacher(metacl ......
结构型 模式 静态 结构

redis常用命令

Redis常用命令一.redis特点:1.支持数据的持久化,可以将内存的数据保存在磁盘中,重启时再次加载2.存储的数据多样化,支持:string、list、hash、set、zset数据结构的存储3.支持master-slave模式的数据备份二.redis优势:性能高,读的速度为11万次/s,写的速 ......
命令 常用 redis

redis配置和使用方法

Redis配置和使用方法一、下载和环境配置1.下载Redis官网:https://github.com/tporadowski/redis/releases,根据本地电脑下载适配的压缩包。2.环境配置下载到本地后,解压到任意目录。进入文件内,复制地址添加到本地电脑的系统环境变量Path路径。二、Re ......
使用方法 方法 redis

线程池

### 为什么使线程池 java的线程对应是操作系统级别的线程调用,不断的或无限制的启停线程是对系统资源的一种消耗也会增加系统的不稳定性。同时很多个线程间的运行上下文切换也会降低实际系统的性能。在对一些大量耗时较小的任务不断的启停线程会降低性能。这个时候就比较适合使用线程池。线程池在池中维护一定的工 ......
线程

redis学习十四:redis持久化之RDB

持久化技术:把内存中数据最终写入磁盘,RDB和AOF 为什么需要:防止服务器宕机缓存数据都没有了 RDB:RDB持久性以指定的时间间隔执行数据集的时间点快照(实现类似照片记录效果的方式,就是把某一时刻的数据和状态以文件形式写到磁盘上,也就是快照。这样一来即使故障宕机,快照文件也不会丢失,数据的可靠性 ......
redis RDB

设计模式

设计模式类型 创建型模式 单例模式 简单工厂模式 工厂方法模式 静态工厂模式 结构型模式 代理模式 装饰器模式 行为型模式 观察者模式 任务链模式 ......
设计模式 模式