摘要:
Redission分布式锁原理 加锁过程 解锁过程 在Java中,关于锁我想大家都很熟悉。在并发编程中,我们通过锁,来避免由于竞争而造成的数据不一致问题。通常,我们以synchronized 、Lock来使用它。 但是Java中的锁,只能保证在同一个JVM进程内中执行。如果在分布式集群环境下呢? 一
阅读全文
posted @ 2021-05-16 12:19
H__D
阅读(291)
推荐(0)
摘要:
基于理解了RESP原理的基础上,手写一个Redis客户端,实现一个自己的Jedis(mini版)。 RESP参考:【Redis】Redis序列化协议(RESP) 一、简洁版Jedis 分析 1、建立连接 SimpleJedis的构造方法,完成建立连接; 我们平时使用Jedis时,其实本质也是一样的实
阅读全文
posted @ 2021-05-15 19:11
H__D
阅读(277)
推荐(0)
摘要:
Redis的通信协议是什么。就是客户端与服务端按照双方约定的规则来进行的编码方式,客户端将要发送的命令进行编码,然后服务端收到后,使用同样的协议进行解码,服务端处理完成后,再次编码返回给客户端,客户端解码拿到返回结果,这样就完成了一次通信。 官网文档:https://redis.io/topics/
阅读全文
posted @ 2021-05-15 18:45
H__D
阅读(925)
推荐(0)
摘要:
一、环境 与 Redis集群查看 在同一台机器上存在6个节点的Redis集群,6个分别是 16379(主节点)、16380(主节点)、16381(主节点)、16382(从节点)、16383(从节点)、16384(从节点) 1、查看redis集群的命令帮助 [root@H__D soft]# redi
阅读全文
posted @ 2021-05-15 00:31
H__D
阅读(272)
推荐(0)
摘要:
一、maven-publish介绍 在 Gradle 1.3 中,引入了一种新的发布机制。这种新机制引入了一些新概念和功能,这些功能使 Gradle 发布变得更加强大,现在已成为发布工件的首选选项。 二、maven-publish使用 1、在 build.gradle 声明插件 plugins {
阅读全文
posted @ 2021-05-14 15:37
H__D
阅读(14237)
推荐(1)
摘要:
相关免费学习推荐:mysql视频教程 通过我自己的一番实战,可以确定的是,只要创建表,这个rowid一定是存在的,唯一区别就是显示和隐士的区别,也就是是否可以通过select _rowid from table查询出来 那么问题来了,哪些情况下rowid是显示的? 1 、当表中有主键并且是数值型的时
阅读全文
posted @ 2021-05-13 13:47
H__D
阅读(6846)
推荐(0)
摘要:
一、Gradle简介 Gradle是源于Apache Ant和Apache Maven概念的项目自动化构建开源工具,它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置面向Java应用为主。当前其支持的语言暂时有Java、Groovy、Kotlin和Sca
阅读全文
posted @ 2021-05-13 01:12
H__D
阅读(319)
推荐(0)
摘要:
一、Redis 基础数据类型 Redis 有 5 种基础数据类型,分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合)。 1、string (字符串) 字符串 string 是 Redis 最简单的数据结构。Redis 所有的数据结构
阅读全文
posted @ 2021-05-12 21:36
H__D
阅读(133)
推荐(0)
摘要:
一、Mybatis整合Spring使用 1、mybatis-spring源码编译参考:【Mybatis】mybatis-spring源码编译 二、Mybatis整合Spring原理 1、Mybatis整合Spring相关类的类图 2、Mybatis整合Spring执行过程 分析执行过程代码 1 pu
阅读全文
posted @ 2021-05-11 22:39
H__D
阅读(281)
推荐(0)
摘要:
一、Mybatis使用 1、Mybatis源码编译参考:【Mybatis】MyBatis源码编译 2、Mybatis使用参考:【Mybatis】MyBatis快速入门(一) 二、Mybatis原理 1、Mybatis相关类的类图 2、Mybatis执行过程 分析过程代码 1 @Test 2 publ
阅读全文
posted @ 2021-05-11 22:31
H__D
阅读(163)
推荐(0)