草庐IT

Redis--回顾提要

一、写在前知识学了就忘!不用就忘!我太健忘!特此记录!用于复习打卡!Redis干就完事了!二、来辣!Redis做异步队列:一般list结构做队列,rpush生产消息,lpop消费消息,当lpop没有消息的时候,要适当sleep一会儿;如果不sleep,就用blpop,会阻塞;生产一次消费多次,使用pub/sub主题订阅模式,可以实现1:N的消息队列,缺点:消费者下线的时候,消息会丢。做延时队列:使用sortedset,拿时间戳作为score,消息内容作为key调用zadd来生产消息,消费者用zrangebyscore指令获取N秒前的数据轮询处理。Redis分布式锁:拿setnx来争抢锁,抢到之

Redis的Java客户端

Redis的Java客户端Jedis线程不安全,lettuce线程安全Jedis测试引入依赖redis.clientsjedis3.7.0org.junit.jupiterjunit-jupiter5.7.0Test.javapublicclassJedisTest{privateJedisjedis;@BeforeEachvoidsetUp(){//1.建立连接jedis=newJedis("192.168.164.128",6379);//2.设置密码jedis.auth("123456");//3.选择库jedis.select(0);}@TestvoidtestString(){//存

Redis基础命令

Redis基础命令目录Redis基础命令Redis数据结构介绍Redis通用命令String类型key的层级结构Hash类型List类型Set类型SortedSet类型Redis数据结构介绍redis是一个key-value的数据库,key一般是String类型,但是value的类型多种多样前五种是基本类型:String:HelloWorldHash:List:[A->B->C]Set:SortedSet:GEO:BitMap:0100011101001010101HyperLog:0100011101001010101Redis通用命令添加或修改键值对setage21获取key对应的valu

Redis安装

Redis(一)安装目录Redis(一)安装1.安装gcc依赖2.上传Redis安装包解压安装3.redis启动(1)默认启动(2)指定配置启动(3)开机自启4.Redis客户端(1)redis命令行客户端(2)图形化桌面客户端1.安装2.建立连接我使用的是Centos8.1和redis6.2.6Redis的官方网站地址:https://redis.io/1.安装gcc依赖在root用户下执行yuminstall-ygcctcl可能会出现”为repo'appstream'下载元数据失败“的问题,解决方法如下:解决方法2.上传Redis安装包解压安装进入安装包目录(一般放在/usr/local/

DBeaver企业版免费下载及破解(白嫖党福利)

 版权声明:原创不易,本文禁止抄袭、转载,侵权必究! 一、DBeaver简介DBeaver是一个通用的数据库管理工具和SQL客户端,社区版的DBeaver只能连接关系型数据库,比如MySQL、Oracle等,只有企业版以上才能连接非关系型数据库,比如MongoDB、Redis等;DBeaver提供一个图形界面用来查看数据库结构、执行SQL查询和脚本,浏览和导出数据,处理BLOB/CLOB数据,修改数据库结构等  二、DBeaver企业版破解方法 找到并打开DBeaver安装目录下的dbeaver.ini配置文件,如下图: 然后把dbeaver-agent.jar的安装目录写到该配置文件的最下面

MongoDB - 事务支持

事务简介事务是数据库中处理的逻辑单元,每个事务中包括一个或多个数据库操作,既可以是读操作,也可以是写操作。ACID是一个“真正”事务所需要具备的一组属性集合,指的是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。原子性指的是,事务中的所有操作要么都被应用,要么都不被应用。一致性指的是,如果数据库在执行事务之前是一致性状态,那么在事务执行之后,无论事务是否成功,数据库也应该是一致性状态。隔离性指的是,即使数据库中有多个事务并发地执行,各个事务之间也不会互相影响,并且在并发状态下执行的事务和串行执行的事务产生的结果完全相

MongoDB - 聚合查询

聚合管道聚合框架是MongoDB中的一组分析工具,可以对一个或多个集合中的文档进行分析。MongoDB的聚合框架基于管道的概念:首先从集合中获取到输入,然后将输入的文档传递到一个或多个阶段,每个阶段都将之前阶段输出的内容作为输入,最终得到一个聚合结果作为输出。上面的图是一个比较宽泛的管道流程图。这里展示一个MongoDB聚合语句映射到管道之后的情况:在这里可以看得出,aggregate([{},{}])是一个聚合语句,在函数的数组中,每一个对象都是一个阶段,$match应该就是一个筛选文档的阶段,$group应该就是一个分组汇总的阶段。管道阶段使用聚合框架最重要的就是熟悉操作的语法,以及将这些

MongoDB - 索引知识

索引简介什么是索引索引最常用的比喻就是书籍的目录,查询索引就像查询一本书的目录。索引支持MongoDB查询的高效执行。如果没有索引,MongoDB必须扫描集合中每一个文档,以选择与查询语句相匹配的文档。如果查询存在适当的索引,MongoDB就可以使用索引来限制它扫描的文档数。筛选字段时使用索引提速有以下几个因素:索引数据通过B树来存储,从而使得搜索的时间复杂度为\(O(\logn)\)索引本身存储在高速缓存中,相比磁盘IO有大幅的性能提升(有的时候数据量非常大的时候,索引数据也会非常大,当大到超出内存容量的时候,会导致部分索引数据存储在磁盘上,这会导致磁盘IO的开销大幅增加,从而影响性能,所以

MongoDB - 增删改查

连接标准URI连接语法通常,可以设定标准的URI连接语法,作为连接配置:mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]mongodb://:固定的格式,即指定当前的URI是标准的MongoDB连接语法username:password@:可选项,如果设置,在连接数据库服务器之后,驱动会尝试登录这个数据库host1:必须的,至少指定一个host,它指定了要连接服务器的地址。如果要连接副本及集,需要指定多个主机地址portX:可选的指定端口,

MongoDB - 入门指南

组件结构核心进程在MongoDB中,核心进程主要包含了mongod、mongos和mongosh三个。其中最主要的是mongod程序,其在不同的部署方案中(单机部署、副本集部署、分片集群部署),通过不同的配置,可以扮演多种不同的角色:在单机部署中作为数据库服务器(提供所有读写功能)在副本集部署中,通过配置,可以部署为Primary节点(负责写数据,也可以提供查询)、Secondary节点(从主节点复制数据,也可以提供查询)、以及Arbiter节点(不保存数据,主要用于参与选举投票)在分片集群中,除了在每个分片中扮演上述角色外,还扮演着配置服务器的角色(存储有分片集群的所有元数据信息,mongo