reactor模式redis线程

threading多线程使用

当我们调用某段代码时需要等待一段时间后才能进行后续的操作,而这期间计算资源并未占满,这就浪费了CPU的资源和时间,此时可以采用多线程进行并行计算。 如当我们使用爬虫爬取网络资源时,某个资源的爬取过程由于网络因素需要等待,而后续的资源清洗和整合等需要等待,此时可以将资源分多份同时进行爬取,等全部爬取完 ......
线程 threading

Redis——缓存穿透、缓存击穿、缓存雪崩

一、缓存穿透 1、含义 缓存穿透是指查询一个缓存中和数据库中都不存在的数据,导致每次查询这条数据都会透过缓存,直接查库,最后返回空。 2、解决方案 1)缓存空对象 就是当数据库中查不到数据的时候,我缓存一个空对象,然后给这个空对象的缓存设置一个过期时间,这样下次再查询该数据的时候,就可以直接从缓存中 ......
缓存 雪崩 Redis

观察者模式

概述 《设计模式》一书中对于观察者模式的意图描述如下: 定义对象中的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都能得到通知并被更新 观察者模式的 UML 图如下所示: 一般在以下情况下使用观察者模式: 一个抽象模型有两个方面,其中一个方面依赖于另一个方面。将这二者封装在独立 ......
观察者 模式

java多线程基础

多线程实现方法 第一种方法:Thread 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用start()方法启动线程 注意:线程不一定立即执行,由CPU安排调度 继承Thread类创建多线程 package com.waves.dxcdemo;​import j ......
线程 基础 java

springboot整合阿里云OSS实现多线程下文件上传(aop限制文件大小和类型)

内容涉及: springboot整合阿里云oss 自定义注解及aop的使用:对上传文件格式(视频格式、图片格式)、不同类型文件进行大小限制(视频和图片各自自定义大小) 线程池使用:阿里云OSS多线程上传文件 阿里云OSS分片上传大文件 业务需求 需求一: 前端传递单个或多个小文件(这里以图片为例)到 ......
文件 线程 springboot 大小 类型

【Visual Leak Detector】Release 模式下使用 VLD

说明 使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇介绍如何在 Release 模式下使用 VLD。同系列文章目录可见 《内存泄漏检测工具》目录 1. 思路概述 要在 RELEASE 模式下使用 VLD,必须在包含头文件 vld.h 前预先定义 VLD_FORCE_ENABLE 宏(参 ......
Detector Release 模式 Visual Leak

多线程篇

1.Java中实现多线程的几种方法 继承Thread类 实现Runnable接口 实现Callable接口 线程池方式创建 2.使用Thread、Runnable和Callable创建线程的优缺点 采用继承Thread类的方式创建线程的优缺点 优点:直接使用this即可获取当前线程,编程简单 缺点: ......
线程

02观察者模式

让对象保持消息灵通 ###需求 一个WeatherData对象负责追踪目前的天气状况(温度,湿度,气压)。希望你们能建立一个应用,有三种布告板,分别显示目前的状况、气象统计及简单的预报。当WeatherObject对象获得最新的测量数据时,三种布告板必须实时更新。而且,这是一个可以扩展的气象站,We ......
观察者 模式

Redis源码之ZipList压缩列表

List(版本3.2之前)、Hash 和 Sorted Set 这三种数据类型,都可以使用压缩列表(ziplist)来保存数据。 新版本Redis的quickList底层也是采用zipList支持,Redis版本更新频繁,本文不保证时效性。 一、ziplist结构 ziplist 是一个特殊双向链表 ......
源码 ZipList Redis

适配器模式

1. 适配器模式 1.1. 模式动机 在软件开发中采用类似于电源适配器的设计和编码技巧被称为适配器模式。 通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满足客户类的功能需要,但是它所提供的接口不一定是客户类所期望的,这可能是因为现有类中方法名与目标类中定义的方法名不一致 ......
适配器 模式

【解释器设计模式详解】C/Java/Go/JS/TS/Python不同语言实现

简介 解释器模式(Interpreter Pattern)是一种行为型设计模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式常被用在 SQL 解析、符号处理引擎等。 解释器模式常用于对简单语言的编译或分析实例中,为了掌握好它的结构与实现,必须先了解编译原理中的“文法、句子、语法 ......
解释器 设计模式 语言 模式 Python

进程和线程的调度优先级

//问题描述: 看门狗喂狗执行程序优先级优化 1.是采用线程还是进程优化? 2.若采用实时调度的话,FIFO调度优先级最高提升为多大? 3.若为RT线程,ps查看时也没看见优先级相关的信息(若不先查看系统下的RT线程的优先级,配置上会不会产生冲突?) 4.是写一个ko的形式,还是写一个执行程序去改变 ......
优先级 线程 进程

75、混合模式的认识

......
模式

使用go语言通过第三方库go-redis操作Redis

go-redis使用 安装:在GOPATH路径下面执行命令:go get -u github.com/redis/go-redis -u:表示update 文档地址:https://pkg.go.dev/github.com/go-redis/redis 连接 package main import ......
第三方 go-redis 语言 Redis redis

搭建rabbix监控Redis数据库

服务端节点:192.168.30.100 客户端节点:192.168.30.110 部署 zabbix 服务端 systemctl disable --now firewalldsetenforce 0hostnamectl set-hostname zbx-server //获取 zabbix 的 ......
数据库 数据 rabbix Redis

设计模式

设计模式 1. 工厂模式 工厂模式就像一个生产线,它能够创建出不同种类的产品。它的使用场景是当需要创建一些类的对象时,可以将这些类放在工厂中统一管理,通过工厂方法来创建对象。 优点:能够统一管理对象的创建,降低了代码的耦合性,方便扩展和维护。 缺点:需要额外的工厂类来创建对象,增加了代码量。 // ......
设计模式 模式

开心档之C++ 多线程

C++ 多线程 多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程。 基于进程的多任务处理是程序的并发执行。 基于线程的多任务处理是同一程序的片段的并发执行。 多线程程序包含可以同时运行的两个或多个部分。这样的程序 ......
线程

Redis源码之Hash表实现

通常我们如果要设计一个 Hash 表,那么我们需要考虑这几个问题: 有没有并发操作 Hash冲突如何解决 以什么样的方式扩容 对 Redis 来说,首先它是单线程的工作模式,所以不需要考虑并发问题。 想实现一个性能优异的 Hash 表,就要重点解决哈希冲突和 rehash 开销这两个问题。 一、哈希 ......
源码 Redis Hash

单例模式详解

概述 单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,使用单例模式的类只有一个对象实例。 单例应用场景 Windows系统的任务管理器。Windows系统的回收站。操作系统的文件系统,一个操作系统只能有一个文件系统。数据库连接池的设计与实 ......
模式

01介绍(策略模式)

软件开发: 唯一不变的是变化: 不管设计的多好,随着时间推移,应用必定成长和变更 设计原则: 封装变化:设别应用中变化的方面,把它们和不变的方面分开; (把会变化的部分取出并封装,这样,就可以修改或者扩展这个部分,而不会影响其他不需要变化的部分) 针对接口编程,而不是针对实现编程(接口,实际上就是针 ......
策略 模式

Redis缓冲区溢出及解决方案

缓冲区(buffer),是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。 一、Redis缓冲区溢出影响 在Redis中,主要有三个场景用到了缓冲区的概念。 在客户端和服务器端之间进行通信时,用来暂存客户端发送的命令数 ......
缓冲区 解决方案 方案 Redis

C++11多线程及线程同步

C++11中提供的线程类std::thread,基于此类创建一个新的线程相对简单,只需要提供线程函数和线程对象即可 一.命名空间 this_thread C++11 添加一个关于线程的命名空间std::this_pthread ,此命名空间中提供四个公共的成员函数; 1.1 get_id() 调用命 ......
线程 11

vueRouter-hash模式和history模式

1.hash模式 这里的hash就是指url尾巴后的 # 号以及后面的字符。这里的 # 和css里的 # 是一个意思。hash也称作锚点,本身是用来做页面定位的,他可以使对应的id元素显示在可视区域内。 特点:hash 虽然出现在 URL 中,但不会被包括在 HTTP 请求中,对后端完全没有影响,因 ......
模式 vueRouter-hash vueRouter history hash

Redis命令监控与简单分析

Redis命令监控与简单分析 前言 为了能够快速识别分析redis的命令 自己在环境上面进行了一些简单的跟踪以及脚本 这里不全是进行metrics, 细致到具体的命令分析 脚本部分-1 mkdir -p /redismonitor/ cd /redismonitor/ find . -mtime + ......
命令 Redis

太坑了吧!一次某某云上的redis读超时排查经历

一次排查某某云上的redis读超时经历 性能排查,服务监控方面的知识往往涉及量广且比较零散,如何较为系统化的分析和解决问题,建立其对性能排查,性能优化的思路,我将在这个系列里给出我的答案。 问题背景 最近一两天线上老是偶现的redis读超时报警,并且是业务低峰期间,甚是不解,于是开始着手排查。 以下 ......
redis

Redis scan等命令的学习与研究

Redis scan等命令的学习与研究 摘要 背景跟前几天说的一个问题类似. 为了验证自己的设想, 所以晚上继续写脚本进行了一轮次的验证. 不过上次讨论时,打击好像都没听懂我说的 所以这次准备从基础开始讲起. 很多好东西在上来量之后可能会变成坏东西 scan 命令 Redis 在2.8 之后增加了s ......
命令 Redis scan

zabbix 主动模式下报文分析

获取监控项列表 客户端发起请求 3次握手之后,请求监控项列表: {"request":"active checks","host":"xx","host_metadata":"xx"} 服务端返回 监控项列表: { "response":"success", "data":[ { "key":"ag ......
报文 模式 zabbix

大白话设计模式

https://www.cnblogs.com/chanshuyi/p/quick-start-of-visitor-design-pattern.html https://www.liaoxuefeng.com/wiki/1252599548343744/1281319659110433 访问者模 ......
大白话 设计模式 大白 模式

Mapboxgl draw 自定义标绘之二:图标、文本、圆形的创建与编辑,重写原模式相关方法,保持当前模式

mapbox-gl-draw官网给出的扩展模式终于无法满足需求,需要diy了。 因为是diy,所以不存在前文说的commonjs打包报错的问题,呵呵。 前文:Mapboxgl draw 自定义标绘:圆、矩形、自由多边形、上传读取geojson (有的概念可能会接续前文不做解释) 参考链接 自定义MO ......
模式 圆形 图标 Mapboxgl 文本

虹科干货| 虹科Redis企业版数据库:告别游戏卡顿,让快乐加速!

没有任何玩家希望游戏中出现卡顿掉线,也没有任何企业希望数据成为游戏创新的桎梏,快速响应是玩家尽情畅玩游戏所必须满足的条件!虹科Redis企业版数据库是为游戏开发人员提供的全新的数据处理和存储方案,在业界被广泛应用,它可以处理实时数据、存储玩家数据、缓存游戏资源,为游戏开发人员提供无限创意空间。 ......
干货 游戏卡 数据库 数据 Redis