mysql主从复制
mysql 8.23之后主从复制master节点修改配置文件
/etc/my.cnf
1234// mysql节点id,如果主节点已经启动,不方便重启,可以不修改masterserver-id = 1// binlog配置,一般已经开启,如果未开启,则增加下放配置即可log_bin = /var/lib/mysql/mysql_bin
检查是否开启bin_log
12SHOW VARIABLES LIKE 'log_bin';显示值为 on,则已开启
重启mysql
创建备份账号
命令行
123456789101112131415// {userName} 账号 {ip}指定允许ip,也可以设置%,则任意ip userPass 密码create user '{userName}'@'{ip}' identified by 'userPass';// {userName} 账号 ...
springBoot公共返回库
自定义springBoot公共返回库使用12345<dependency> <groupId>site.hanbin</groupId> <artifactId>response-common</artifactId> <version>0.0.3</version></dependency>
版本说明123456789101112version 2.6.n 为springboot 2.6.x 版本,使用 jdk1.82.7.n 为springboot 2.7.x 版本,使用 jdk1.83.0.n 为springboot 3.0.x 版本,使用 jdk173.3.n 为springboot 3.3.x 版本,使用 jdk17page-2.6.n 为springboot 2.6.x 版本,使用 jdk1.8,允许使用分页page-2.7.n 为springboot 2.7.x 版本,使用 jdk1.8,允许使用分页page-3.0.n 为spri ...
docker更换国内镜像源
docker更换国内镜像源编辑daemon.json打开配置文件(不存在则新建)1vim /etc/docker/daemon.json
修改配置12345{ "registry-mirrors": [ "https://docker.m.daocloud.io" ]}
重启docker1systemctl restart docker
查看docker配置12docker info查看镜像加速文件是否已修改
docker直接使用第三方拉取1234docker run -d -P m.daocloud.io/docker.io/library/镜像名称样例:docker run -d -P m.daocloud.io/docker.io/library/nginx
其他
更多地址: 源地址
docker安装雷池
docker-compose安装雷池在线安装(推荐)如果服务器可以访问互联网环境,推荐使用该方式复制以下命令执行,即可完成安装1bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
如果需要使用华为云加速,可使用1CDN=1 bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
如果需要安装最新版本流式检测模式,可使用1STREAM=1 bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
登录雷池登录流程
浏览器打开后台管理页面 https://:9443。
输入初始的admin密码
1234完成安装后在shell会自动输出密码。若忘记查看,需手动执行重置命令获得初始密码docker exec safeline-mgt reseta ...
使用职责链模式进行Spring Boot开发
使用职责链模式进行Spring Boot开发前言职责链模式是一种行为型设计模式,它允许将请求沿着处理链进行传递,直到有一个处理者能够处理该请求。职责链模式将请求的发送者和接收者解耦,使得多个对象都有机会处理请求。
在Spring Boot开发中,职责链模式可以用于解耦复杂的业务逻辑,将其拆分为多个处理者,每个处理者负责处理特定的请求。
实现开发例子请求处理链在Spring Boot中,我们可能需要处理一系列的请求,每个请求需要经过多个处理者进行处理。使用职责链模式,我们可以将请求处理链条化,每个处理者只关注自己负责处理的请求,并将未能处理的请求传递给下一个处理者。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960public interface RequestHandler { void handleRequest(Request request);}public class FirstHan ...
使用代理模式进行开发的Spring Boot应用
使用代理模式进行开发的Spring Boot应用前言代理模式是一种结构型设计模式,它允许通过代理对象来控制对真实对象的访问。代理模式可以提供额外的功能,如延迟加载、访问控制、日志记录等。
在Spring Boot开发中,代理模式可以用于控制对对象的访问,并在访问前后添加额外的逻辑。
实现开发例子代理模式在权限管理中的应用假设我们正在开发一个博客系统,系统中有两种用户角色:普通用户和管理员。为了保护敏感数据和功能,我们可以使用代理模式来实现权限管理。
首先,我们创建一个名为BlogService的接口,该接口定义了博客相关的操作方法。然后,我们创建一个名为BlogServiceImpl的真实对象,该对象实现了BlogService接口。最后,我们创建一个名为BlogServiceProxy的代理对象,该对象实现了BlogService接口,并在操作方法中添加权限验证的逻辑。
123456789101112131415161718192021222324252627282930313233343536373839404142434445public interface BlogServic ...
在Spring Boot 3中使用享元模式
在Spring Boot 3中使用享元模式前言享元(Flyweight)模式是一种软件设计模式。它使用共享对象可以有效地支持大量细粒度的对象。享元模式尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象。Spring框架天然适合使用享元模式,因为Spring本身就充分利用了单例模式的设计。在Spring容器启动时,会预先创建并配置好各种Bean对象,将其缓存起来重复使用,而不是每次都创建新对象。
享元模式在Spring Boot项目中可以带来以下好处:
减少内存占用,提高性能
适合处理大量细粒度的对象
简化和提高开发效率
实现开发例子缓存对象在Spring Boot中,我们可能需要缓存对象,以提高系统的性能和响应速度。使用享元模式,我们可以将需要缓存的对象作为享元对象,共享其内部状态,避免重复创建对象。
123456789101112131415161718192021222324252627public class CachedObject { private String key; private Object value; // 省略了构造函数和其他 ...
在Spring Boot 3中使用外观模式进行开发
使用装饰器模式进行开发的Spring Boot 3应用前言外观模式提供了一个统一的接口,用于访问子系统中的一组接口。外观定义了一个更高级别的接口,使子系统更容易使用。
实现开发例子订单服务假设我们有一个电子商务应用程序,该应用程序包含一个订单服务,该服务需要与库存服务、支付服务、和邮件服务进行交互。这种情况下,我们可以构建一个OrderFacade,它隐藏了与其他服务交互的复杂性。
123456789101112131415161718192021222324@Servicepublic class OrderFacade { @Autowired private StockService stockService; @Autowired private PaymentService paymentService; @Autowired private EmailService emailService; public void processOrder(Order order) { boolean isAva ...
使用装饰器模式进行开发的Spring Boot 3应用
使用装饰器模式进行开发的Spring Boot 3应用前言在软件开发中,装饰器模式是一种结构型设计模式,它允许我们通过将对象包装在具有相同接口的装饰器类中来动态地添加新的行为或修改现有行为。装饰器模式提供了一种灵活的方式来扩展和定制对象的功能,而无需修改其原始代码。
实现开发例子日志记录装饰器假设我们有一个基于Spring Boot 3的Web应用程序,我们想要在每个请求的处理过程中记录请求的详细信息。我们可以使用装饰器模式创建一个日志记录装饰器,该装饰器将记录请求信息并将请求传递给实际的处理程序。以下是实现该装饰器的示例代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445public interface RequestHandler { void handleRequest();}public class BaseRequestHandler implements RequestHandler { @Override p ...
使用组合模式进行Spring Boot开发
使用组合模式进行Spring Boot开发前言组合模式是一种结构型设计模式,用于将对象组合成树形结构以表示”整体-部分”的层次结构。组合模式允许客户端统一对待单个对象和组合对象,使得客户端无需关心对象的具体类型,而只需要调用统一的接口。
在Spring Boot开发中,组合模式可以用于处理整体和部分之间的关系,使得我们可以对对象组合进行统一的操作。
组合模式的优点:
高内聚、低耦合。组合模式使得客户端并不关心自己处理的是组合对象还是叶子对象,简化了客户端代码。
容易扩展。可以通过添加新的叶子对象或组合对象来扩展功能。
方便递归操作。组合对象中的组合对象可以递归包含更多层次的组合对象和叶子对象,对整个树形结构进行递归遍历。
实现开发例子构建树形结构在Spring Boot中,我们可能需要构建树形结构的数据,如部门组织结构、菜单导航等。每个节点(部门或菜单项)都有自己特定的属性和行为,同时也可以包含其他节点。
我们可以使用组合模式来定义一个抽象的节点接口Node,然后实现具体的节点类Department和MenuItem,以及一个组合节点类CompositeNode来表示包含其他节点的 ...