分布式 黑马 实战redis

Redis笔记

redis数据类型 字符串(String): 存储单个值。 用例:存储文本、数字、计数器等。 SET username "john_doe" GET username 列表(List): 有序集合,允许重复元素。 用例:消息队列、新闻推送、日志记录等。 LPUSH tasks "task1" LPU ......
笔记 Redis

在 CentOS7/CentOS8 上使用 cephadm 安装分布式存储系统 Ceph【转】

Cephadm 介绍 官方文档:https://docs.ceph.com/en/latest/cephadm/ cephadm 用于部署和管理 Ceph 集群,它通过 SSH 将 manager 守护进程连接到主机来实现这一点。manager 守护进程支持添加、删除和更新 Ceph 容器。ceph ......
CentOS 分布式 CentOS7 CentOS8 cephadm

Redis——分布式锁

基本原理 synchronized是利用JVM内部的锁监视器控制线程,但是只能在一个JVM中生效。如果有多个JVM的时候,就会有多个线程获取到锁,就无法实现多JVM进程之间的互斥了。 因此不能使用JVM内部的锁监视器了,必须使用JVM外部的锁监视器,就能保证只有一个线程获取到锁,就能实现多进程之间的 ......
分布式 Redis

Redis——底层和数据结构

数据结构 简单动态字符串SDS 可以认为在Redis中所有的东西最终都是字符串。Redis是C语言实现的,但是Redis没有直接使用C语言中的字符串,C语言字符串是字符数组实现的,存在很多问题: 1、获取字符串的长度需要运算,时间复杂度达到O(n)。 2、非二进制安全,无法保存\0字符(被识别成结束 ......
数据结构 底层 结构 数据 Redis

异步爬虫实战:实际应用asyncio和aiohttp库构建异步爬虫

在网络爬虫的开发中,异步爬虫已经成为一种非常流行的技术。它能够充分利用计算机的资源,提高爬虫效率,并且能够处理大量的运算请求。Python中的asyncio和aiohttp库提供了强大的异步爬虫支持,使得开发者能够轻松构建高效的异步爬虫。 什么是异动爬虫?为什么要使用自动爬虫? 异步爬虫是一种高效的 ......
爬虫 实战 实际 asyncio aiohttp

Redis——基本使用

五种数据类型 Redis是一个基于内存的数据库。是一个key-value的数据库,key一般是String类型,value的类型多种多样。 字符串String SET name zhangxiancheng //redis中默认都是使用字符串来存储数据的 DEL key//删除 EXISTS key ......
Redis

redis-cluster nodes命令信息说明

集群定义 1.1 每个字段的含义如下: 1. id: 节点ID,一个40字节的随机字符串,节点创建时生成,且不会变化(除非使用CLUSTER RESET HARD命令)。 2. ip:port: 客户端访问的地址。 3. flags: 逗号分隔的标记位,可能值有:myself, master, sl ......
redis-cluster 命令 cluster redis nodes

分布式操作系统市场规模有万亿吗?你怎么看?

昨天参加一个饭局,席间和一位做ICT基础设施投资的朋友聊起我们团队研发的LAXCUS分布式操作系统,请他分析一下分布式操作系统和连带的产业市场规模价值,我给出的分析依据是:1. LAXCUS面向TO B市场,有广泛应用前景,包括AI、大数据、HPC的支持2. LAXCUS属于多机操作系统,和Wind ......
分布式 规模 系统 市场

企业级增量实战

企业级增量恢复实战 背景: 某大型网站,mysql数据库,数据量500G,每日更新量100M-200M 备份策略: xtrabackup,每周六0:00进行全备,周一到周五及周日00:00进行增量备份。 故障场景: 周三下午2点出现数据库意外删除表操作。 模拟故障: # 编辑脚本 #!/bin/ba ......
增量 实战 企业

为什么redis使用单线程——简单说下

redis使用单线程主要原因第一个,每条命令都是原子操作,单线程能够保证原子性。第二个原因,如果设计为多线程,肯定存在锁的竞争导致锁的获取释放开销,线程切换的开销,这与我们使用redis是相违背的。尽管redis设计为单线程,但是他的性能很高,主要原因是基于内存,以及pipeline机制都能保证re ......
线程 redis

Redis学习之秒杀业务

秒杀业务的核心流程是:判断日期和库存、扣减库存、创建订单 如下图: 注意,秒杀库存信息和商品信息最好是独立的两张表,不要放在一起影响性能。 @Resource private ISeckillVoucherService seckillVoucherService; ​ @Resource priv ......
业务 Redis

Spring、Redis相关知识查漏补缺

动态web页面不具有动态性 × 静态web页面不具有交互性 √ 事务隔离级别是数据库自带的与Spring无关 √ Spring自己实现了—套与数据库无关的事务机制 × 软件框架是面向某个领域的、可复用的半成品软件 √ 使用软件框架的优势是开发的灵活性和扩展性更好 × 拦截器可以拦截所有请求(包括静态 ......
知识 Spring Redis

redis(二)

一、redis 高可用与集群 虽然Redis可以实现单机的数据持久化,但无论是RDB也好或者AOF也好,都解决不了单点宕机问题,即一旦单台redis服务器本身出现系统故障、硬件故障等问题后,就会直接造成数据的丢失,因此需要使用另外的技术来解决单点问题。 1.1. 主备模式(master/slave) ......
redis

Kafka的分布式架构与高可用性

导语 一开始我们就说过Kafka是一款开源的高吞吐、分布式的消息队列系统,那么今天我们就来说下它的分布式架构和高可用性以及双/多中心部署。 Kafka 体系架构简介 以下是 Kafka 的软件架构,整个 Kafka 体系结构由 Producer、Consumer、Broker、ZooKeeper 组 ......
可用性 分布式 架构 Kafka

Redis分布式锁

简述 利用Redis的Setnx命令,来实现一个分布式的加锁方案。利用注解,在拥有该注解的方法上,进行切面处理,在方法执行前,进行加锁,执行结束后,根据是否自动释放锁,进行解锁。 将该注解用在定时任务的方法上,即可实现分布式定时任务,即获取到锁的方法,才会执行。 1 redis命令 1.1 setn ......
分布式 Redis

分布式事务:XA和Seata的XA模式

上一篇内容《从2PC和容错共识算法讨论zookeeper中的Create请求》介绍了保证分布式事务提交的两阶段提交协议,而XA是针对两阶段提交提出的接口实现标准,本文则对XA进行介绍 ......
分布式 事务 模式 Seata

Mysql 分布式序列算法

接上文 Mysql分库分表 1.分布式序列简介 在分布式系统下,怎么保证ID的生成满足以上需求? ShardingJDBC支持以上两种算法自动生成ID。这里,使用ShardingJDBC让主键ID以雪花算法进行生成,首先配置数据库,因为默认的注解id是int类型,装不下64位,需要进行修改: # 在 ......
分布式 序列 算法 Mysql

编译安装redis

#安装依赖包 [root@centos7 ~]#yum -y install gcc jemalloc-devel #下载源码 [root@centos7 ~]#wget http://download.redis.io/releases/redis-5.0.7.tar.gz [root@cento ......
redis

Redis Cluster扩、缩容

1、Redis Cluster扩容(Redis 5为例) 因公司业务发展迅猛,现有的三主三从的redis cluster架构可能无法满足现有业务的并发写入需求,因此公司紧急采购两台服务器10.0.0.68,10.0.0.78,需要将其动态添加到集群当中,但不能影响业务使用和数据丢失。 注意: 生产环 ......
Cluster Redis

redis服务配置文件详解

bind 0.0.0.0 #监听地址,可以用空格隔开后多个监听IP protected-mode yes #redis3.2之后加入的新特性,在没有设置bind IP和密码的时候,redis只允许访问127.0.0.1:6379,可以远程连接,但当访问将提示警告信息并拒绝远程访问 port 6379 ......
服务配置 文件 redis

盘点一个Python自动化办公Excel数据填充实战案例(上篇)

大家好,我是皮皮。 一、前言 前几天在Python白银交流群【上海新年人】问了一个Python自动化办公的问题,一起来看看吧。有个表格,里面每行信息,如下图所示: 现在需要将数据贴到另一个文件指定单元格中,另一个文件是这样子的。 下图是他的原始数据和他想得到的目标数据,一页有三个,如下所示: 预期得 ......
上篇 实战 案例 数据 Python

Redis数据类型和应用场景

一、Redis常用的5种数据类型 字符串(String):最基本的数据类型,可以存储字符串、整数或浮点数。 哈希(Hash):键值对的集合,可以在一个哈希数据结构中存储多个字段和值。 列表(List):按照插入顺序存储一组有序的值,可以在列表的两端执行插入、删除和访问操作。 集合(Set):无序的唯 ......
场景 类型 数据 Redis

【进阶16】Python多线程实战案例

一、Python实现多线程的几种方式 _thread:模块提供了基本的线程和互斥锁支持;更底层的的线程管理实现模块 threading:threading模块则通过封装_thread,提供了更加全面的线程使用方法。 _thread案例: # *coding:utf-8 * #用_thread启动多个 ......
线程 实战 案例 Python

一款Redis可视化工具:ARDM | 京东云技术团队

出众的软件有很多,适合自己的才是最好的。 Another Redis Desktop Manager 🚀🚀🚀 更快、更好、更稳定的Redis桌面(GUI)管理客户端,兼容Windows、Mac、Linux,性能出众,轻松加载海量键值 🇨🇳Windows • 可以在github 或者 git ......
团队 工具 Redis 技术 ARDM

分布式系统笔记目录

分布式系统笔记目录 本目录源自我校的分布式系统课程,我觉得很有趣,就制作了笔记并分享 老师的笔记的目录结构感觉还是有些问题,但是当时学习时间比较紧,就没来得及排版 仅供学习使用 第一章:基本概念 分布式系统相关概念、与并行计算的关系、云计算概念、分布式计算的背景、目的、应用及展望 第二章:模型问题 ......
分布式 笔记 目录 系统

Django实战项目-学习任务系统-用户登录

第一步:先创建一个Django应用程序框架代码 1,先创建一个Django项目 django-admin startproject mysite 将创建一个目录,其布局如下: mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi ......
任务系统 实战 任务 项目 用户

redis 介绍

1. redis 概览 Redis和Memcached是非关系型数据库也称为NoSQL数据库,MySQL、Mariadb、SQL Server、PostgreSQL、Oracle 数据库属于关系型数据(RDBMS, Relational Database Management System) Red ......
redis

基于redis5的redis cluster部署

1.创建 redis cluster集群的环境准备 1.1.#每个redis 节点采用相同的相同的redis版本、相同的密码、硬件配置;所有redis服务器必须没有任何数据;准备六台主机,地址如下: 10.0.0.150 10.0.0.160 10.0.0.170 10.0.0.180 10.0.0 ......
redis cluster redis5

简述redis特点及其应用场景

1、Redis 特点 1.1.速度快: 10W QPS,基于内存,C语言实现,而众所周知,C语言是“距离”操作系统最近的的编程语言,执行速度快 1.2.单线程:Redis采用了单线程的架构,避免了多线程的资源竞争问题 1.3.简单: 代码短小精悍(单机核心代码只有23000行左右),单线程开发容易, ......
场景 特点 redis

简述redis集群的实现原理

为了解决单机性能的瓶颈,提高Redis 性能,可以使用分布式集群的解决方案 1. 所有Redis节点使用(PING机制)互联 2. 集群中某个节点的是否失效,是由整个集群中超过半数的节点监测都失效,才能算真正的失效 3. 客户端不需要proxy即可直接连接redis,应用程序中需要配置有全部的red ......
集群 原理 redis