搬砖小抄

搬砖小抄

备用网址 [https://festive-leakey-482867.netlify.app/]

本站备用网址
本站备用网址 https://festive-leakey-482867.netlify.app/ 后面不想折腾域名备案了,以后打算白票 netlify。
微服务中的数据权限

业务效果

对于同一种业务数据的查询(比如分页),不同的用户看到的查询结果,受限于其本人的权限规则配置。
例子:用户查看员工工资,张三能看见本人所在部门的数据,李四可以查看行政部和市场部的数据。

规则配置

  • 数权规则:表示对数据权限实现逻辑(比如:查看本人数据,查看某个部门的数据)
  • 数权分配:数权规则和人的关系(有可能存在中间代理,比如岗位),包含授权、回收、查询等功能
  • 数权分配操作的方式: UI交互设计,像用户表达操作逻辑

人 + 规则 = 数权配置

mysql8 主从复制

原理

  1. master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events);

  2. slave将master的binary log events拷贝到它的中继日志(relay log);

  3. slave重做中继日志中的事件,将改变反映它自己的数据。

环境

版本 8.0.21

主库: 10.11.12.121
从库: 10.11.12.122

Spring Boot Jar 分层

Jar 分层是Spring Boot 2.3 新特性,开启Jar分层后,有助于在构建docker镜像时,将项目自身的资源和外部依赖进行区分,这样就能大幅度提高docker镜像的构建和推送速度。

构建镜像

目录结构

Spring Cloud Stream RabbitMQ 可靠消息传输

使用RabbitMQ进行消息传输有以下几个地方可能会丢失数据:

  • 1: 投递失败,即producerRabbitMQ的传输过程中发生意外,RabbitMQ没拿到消息。
  • 2: RabbitMQ自己把消息弄丢了
  • 3: 消费失败,包含RabbitMQconsumer的传输过程中发生意外,以及consumer在处理消息的时候发生异常。

对于第三点,网上有些文章的观点是只要消费方成功收到消息就是算完成可靠传输

消息传输的过程如下图所示

avatar
j3e
技术面前人人平等