摘要:
#1. 什么是Shiro Shiro是一个基于Java的安全框架,它提供了身份验证、授权、加密和会话管理等安全功能,可以帮助Java应用程序实现安全性。 #2. 根据Shiro的基本使用了解其基本原理 ==1. 添加依赖== <dependency> <groupId>org.apache.shir 阅读全文
摘要:
https://mp.weixin.qq.com/s/zuGJJ1rhxcoO_lCl0AGllA 阅读全文
摘要:
https://blog.csdn.net/weixin_45546174/article/details/119673639 阅读全文
摘要:
1. 说说你对spring的理解 Spring有两大特性:控制反转IOC 和 面向切面编程AOP,解决了传统代码的高耦合性与代码不可复用的问题,能很方便的整合各种开源框架,是一个非侵入式的,高效的开源框架。 IOC:控制反转,将创建对象的权利交给Spring,由Spring帮我们管理Bean。在面向 阅读全文
摘要:
https://mp.weixin.qq.com/s/n7fq2PsxiEwnmCLV4BQnsA 阅读全文
摘要:
String path = System.getProperty("user.dir"); // 获取当前项目的实际路径 InputStream is = JwtUtil.class.getResourceAsStream("/application.yml"); // 获取项目配置文件信息(app 阅读全文
摘要:
https://mp.weixin.qq.com/s/eNzopxiMI6t1vi-g39vXYw #总结如下 #1. 数据库命名规范 1、数据库命名尽量不超过30个字符。 2、数据库命名一般为项目名称+代表库含义的简写,比如IM项目的工作流数据库,可以是 im_flow。 3、数据库创建时必须添加 阅读全文
摘要:
1. 微服务架构中高并发带来的问题 在微服务架构中,我们将业务拆分成一个个的服务,服务与服务之间可以相互调用, 但是由于网络原因或者自身的原因,服务并不能保证服务的100%可用。 如果单个服务出现问题,调用这个服务就会出现网络延迟,此时若有大量的网络涌入,会形成任务堆积,最终导致服务瘫痪。 1.1 阅读全文
摘要:
1. 微服务环境搭建 需求:用户下单案例。客户向订单微服务发起一个下单的请求。 模块设计 alibaba 父工程 shop-common 公共模块【主要放实体类】 shop-user 用户微服务 【端口: 807x】 shop-product 商品微服务 【端口: 808x】 shop-order 阅读全文
摘要:
#0. 若你控制台输入 mysql -v 若你已经安装了mysql,还是显示:'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件。 说明有可能是你没有配置mysql的环境,应该去环境变量里面配置。 #1. Mysql语法分类 DDL:对表结构的:create(创建),alter(修改 阅读全文
摘要:
1. 什么是分布式事务 1.1 事务 严格意义上的事务实现应该是具备原子性、一致性、隔离性和持久性,简称 ACID。通俗意义上来说,事务就是为了使得一些更新等操作要么都成功,要么都失败。 原子性(Atomicity):可以理解为一个事务内的所有操作要么都执行,要么都不执行。 一致性(Consiste 阅读全文
摘要:
1. Nacos简介 Nacos官方网址:https://nacos.io/zh-cn/ Nacos:由Spring Cloud Alibaba 提供的。 Nacos致力于帮助您发现、配置和管理微服务。 Nacos集成了netflix公司的ribbon,支持负载均衡(默认:轮询)。 Nacos支持单 阅读全文
摘要:
1. 什么是API网关 API网关:是一个服务器,是系统的唯一入口。同时也可以实现服务的路由、负载均衡、鉴权、限流、熔断等功能。 API网关出现的原因:是微服务架构的出现,不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信 阅读全文
摘要:
1. RabbitMQ简介 RabbitMQ是由erlang语言开发,基于AMQP(高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法。 RabbitMQ官方地址:http://www.rabbitmq.com 1.1 什么是消息队列 MQ:全称Message Queue,即消息队 阅读全文
摘要:
1. 传统单体应用架构 程序在编写完成之后会被打包并部署为一个具体的应用。Java Web项目打包成WAR包,Java项目打包成JAR包。 1.1 集群 随着用户人数的增加,一台机器可能满足不了系统的负载,此时我们就会考虑水平扩展。 什么是水平扩展:面对上述情况,我们通常会增加服务器的数量,并将打包 阅读全文
摘要:
1. 程序,进程,线程 程序:是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念。 进程:正在运行的程序,它是一个动态的概念。是系统资源分配的单位。 线程:是CPU调度和执行的的单位。通常在一个进程中可以包含若干个线程。 多线程: 指在一个程序中同时执行多个线程,每个线程都可以独立运 阅读全文
摘要:
1. Linux系统的目录结构 2. Linux的命令 Linux中命令的基本格式: 命令 [选项] [参数] 个别命令不遵循该格式 当命令中有多个选项时,可以写在一起。 基本命令不遵守该格式 2.1 Linux的基本命令 #1. 我是谁 who am i #2. 我在哪 pwd #3. 查看ip地 阅读全文
摘要:
#1. 什么是注解 Java 注解又称 Java 标注,是 JDK5.0 引入的一种注释机制。 注解其实就是一种标记,常常用于代替冗余复杂的配置,它本身并不起任何作用,起作用的在于「注解的处理程序」。 ==注解处理程序通过捕获被注解标记的代码然后进行一些处理,这就是注解工作的方式。== ##1.1 阅读全文
摘要:
1. RocketMQ基本概念 1.1 主题-Topic 主题:是RocketMQ中消息传输和存储的顶层容器,用于标识同一类业务逻辑的消息。主题是一个逻辑概念,并不是实际的消息容器。 1.2 队列-Message Queue 队列:是RocketMQ中消息存储和传输的实际容器,也是 RocketMQ 阅读全文
摘要:
前言: 在微服务架构中,分散在各个微服务中,不好统一配置和管理,微服务项目可能会有多个环境,而现在配置文件无法区分环境。修改了配置文件之后,必须重新启动微服务才能使配置生效,而现在不能实时更新 配置中心的思路: 把项目中各种配置全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。 当各个服务 阅读全文
摘要:
1. 基本概念 在微服务架构中,一个请求可能需要调用很多个服务,若其中出现了错误很难去定位。 链路追踪,就是将一次分布式请求还原成调用链路,进行日志记录,性能监控并将一次分布式请求的调用情况集中展示。比如各个服务节点上的耗时、请求具体到达哪台机器上、每个服务节点的请求状态等等。 1.1 常见链路追踪 阅读全文
摘要:
微服务架构应用设计目的为了应对高并发环境! 1. 什么是并发,并行 并发:指在同一时间段内,多个任务或进程同时执行或交替执行的能力。 并行:指多个任务在同一时间段内同时执行,需要多个处理器或多核处理器来实现。 总的来说,并发更多地强调任务之间的交替执行,而并行更多地强调任务的同时执行。 2. 高并发 阅读全文
摘要:
远程调用:在分布式系统中,我们使用springboot创建了各种各样服务,那么这些服务之间如何进行远程调用呢。如:订单微服务怎么去调用商品微服务? Ribbon:是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。 Ribbon支持的负载均衡策略: BestAvaila 阅读全文
摘要:
https://mp.weixin.qq.com/s?__biz=Mzg5MDUyNjQ0Ng==&mid=2247507189&idx=1&sn=3985735a3498ac5d509b67b91a653670&chksm=cfd9d374f8ae5a62e32bd6fa2c5a21a80a4ec 阅读全文
摘要:
视频:https://www.bilibili.com/video/BV1ge4y1378c?p=34&spm_id_from=pageDriver&vd_source=61b6fb4e547748656e36b17ee95125fb 1. 什么是工作流 工作流:就是通过计算机对业务流程自动化执行进 阅读全文
摘要:
https://mp.weixin.qq.com/s/1w9LJtWTg3gquO7RotdF6A 阅读全文
摘要:
https://www.bilibili.com/video/BV13a411q753?p=80&vd_source=61b6fb4e547748656e36b17ee95125fb 阅读全文
摘要:
概念: 在Spring框架中,BeanUtils是一个实用工具类。用于处理JavaBean对象的操作。它提供了一些方法,可以简化对JavaBean对象的属性复制、属性值获取和设置等操作。 Apache也提供了一个BeanUtils,常用方法可百度,大部分方法差不多,不过据简单了解,好像有些独特的方法 阅读全文