Lombok常用注解

在springboot中开启

默认包含了lombok包,只需开启就好了…

pom.xml

1
2
3
4
5
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
阅读全文
Docker的使用

Docker概念和安装

基本概念

镜像(Image)

Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

阅读全文
Git基础

版本控制系统

集中化的版本控制系统

一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新

分布式的版本控制系统

客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来

阅读全文
每日一题之MajorityElement

MajorityElement(众数)

给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在众数。

阅读全文
SpringBoot+MyBatis+MySQL读写分离

引言

​ 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做。因此,一般来讲,读写分离有两种实现方式。第一种是依靠中间件(比如:MyCat),也就是说应用程序连接到中间件,中间件帮我们做SQL分离;第二种是应用程序自己去做分离。这里我们选择程序自己来做,主要是利用Spring提供的路由数据源,以及AOP

​ 然而,应用程序层面去做读写分离最大的弱点(不足之处)在于无法动态增加数据库节点,因为数据源配置都是写在配置中的,新增数据库意味着新加一个数据源,必然改配置,并重启应用。当然,好处就是相对简单。

图1

阅读全文
解决Docker容器存放目录空间不足的问题

前言

​ docker所在服务器,运行了一段时间后,发现服务器磁盘目录快不够用了。通过du -h --max-depth=1 / 逐级目录排查,发现/var/lib/docker目录文件过大。通过以下方法,解决该问题。

阅读全文
MySQL主从复制配置

MySQL主从复制配置

环境

操作系统:CentOS-7

MySQL:mysql-8.0.x

一台主镜像和从镜像

端口:15001  master

端口:15002  slave

端口:15003  slave

使用Dokcer创建masterslave

1
2
3
4
5
6
[root@bogon tmp]# docker run -d -p 15001:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=1230 mysql:latest
253999e7938217a864d07c1ec974129872a91b8b4f1149132bbc71333390f4fd
[root@bogon tmp]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
253999e79382 mysql:latest "docker-entrypoint.s…" 37 seconds ago Up 37 seconds 33060/tcp, 0.0.0.0:15001->3306/tcp mysql-master
d9fc4f74791a mysql:latest "docker-entrypoint.s…" 41 minutes ago Up 20 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql-base
阅读全文
认识JWT

JWT(JSON Web Token)

​ JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。

什么时候你应该用JSON Web Tokens

下列场景中使用JSON Web Token是很有用的:

  • Authorization (授权) : 这是使用JWT的最常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该令牌允许的路由、服务和资源。单点登录是现在广泛使用的JWT的一个特性,因为它的开销很小,并且可以轻松地跨域使用。
  • Information Exchange (信息交换) : 对于安全的在各方之间传输信息而言,JSON Web Tokens无疑是一种很好的方式。因为JWTs可以被签名,例如,用公钥/私钥对,你可以确定发送人就是它们所说的那个人。另外,由于签名是使用头和有效负载计算的,您还可以验证内容没有被篡改。
阅读全文
Algolia