springCloud知识点整理 1. 为什么会出现SpringCloud?单体架构的优缺点 优点: 部署简单:只有一个包 技术单一:同一个架构来说,基本上是一个一种技术,类似springboot + java 用人成本低:因为只需要一种技术 缺点: 代码结构混乱:业务复杂,导致代码量很大,管理会越来越困难。 经常需要解决冲突,开发效率低:开发人员同时维护同一套代码,很难避免代码冲突。开发过程中会伴随解决冲突,严重影响开发效 2022-08-23 微服务 #分布式 #整理
单体架构的优缺点 单体架构的优缺点优点: 部署简单:只有一个包 技术单一:同一个架构来说,基本上是一个一种技术,类似springboot + java 用人成本低:因为只需要一种技术 缺点: 代码结构混乱:业务复杂,导致代码量很大,管理会越来越困难。 开发效率低:开发人员同时维护同一套代码,很难避免代码冲突。开发过程中会伴随解决冲突,严重影响开发效率。 排查解决问题成本高:线上发现了bug,可能bu 2022-08-17
postgreSQL、mysql、Mongoldb、redis的对比 1 postgreSQL 和 mysql的对比目前国内Mysql是主流,PG屈于二线。 mysql和Pg早期就是两个极端,mysql基本上就是满足数据库语法的大号KV,对关系型数据库的高级语法支持的不是很好。早期的很多互联网公司只是使用它存储,而复杂的一些计算都在服务器完成,由于确实部分高级功能和数据一致性保障,mysql支持简单SQL更加具备速度优势。 mysql多线程模型,并发支持良好,P 2022-08-16 数据库 #面试题 #redis #mysql #postgreSQL #mongo #es
kafka知识点整理 kafka和RabbitMq的对比 存储上: kafka支持了分布式存储,也就是分区。相当于把原来rabbitMq 的queue拆分成了很多个小队列,分布式存储在不同的服务上,提高了消息的发送的效率(一次可以发到多个分区),提高了消费效率,不同分区,使用不同的消费者,提高了并发处理能力。 应用场景上: RabbitMQ,遵循AMQP协议,用在实时的对可靠性要求比较高的消息传递上。 kafk 2022-08-16 Kafka #整理
java 代理 代理 代理是一种设计模式 定义:通过代理对象访问目标对象。 好处:可以在不修改目标对象的基础上,扩展目标对象的功能 代理类可以分为静态代理和动态代理。 1.静态代理和动态代理静态代理 定义: 通过声明一个明确的代理类来访问源对象。需要和目标对象一起实现相同的接口或者继承相同的父类。 特点:在编译器确定代理对象,在程序运行前,代理类的.class文件就已经存在了。 优点:可以做到不修改目标 2022-08-16 Java基础 #面试题
Spring知识点整理 1. Spring是什么?有什么优点 Spring是一个轻量级的java框架,Spring的核心是IOC和AOP。主要的优点包括: 方便解耦,简化开发。通过Spring提供的IOC容器,我们可以将对象的依赖关系交给Spring进行控制,避免硬编码造成的耦合性高。简单来说,之前,如果我们controller 需要一个service,则需要new service,现在是Spring发现你的contro 2022-08-16 Java基础 #整理
死锁 死锁 定义:死锁是两个或两个以上的线程互相都持有对方所需要的资源,导致这些线程都处于等待状态。 死锁产生的条件: 互斥条件:一个资源只能被一个进程占用。 请求和保持条件:一个进程因请求被占用资源而发生阻塞时,对已获得的资源保持不变。 不剥夺条件:任何一个资源在没被该进程释放之前,其他线程都无法对他剥夺占用。 循环等待:当发生死锁时,所等待的线程会进入一个类似死循环,造成阻塞。 如何避免 2022-08-16 Java基础 #整理
NIO,BIO,AIO 1.BIO、NIO、AIO定义Java共支持3种网络编程模型IO模式 BIO:(blocking io)同步并阻塞(传统阻塞型),服务器实现模式为一个连接一个线程,即客户端有连接请求时,服务器就要启动一个线程进行处理,如果这个链接不做任何事,就容易造成不必要的线程开销。当一个线程调用 read() 或 write() 时,该线程被阻塞,直到有一些数据被读取,或数据完全写入。该线程在此期间不能再干 2022-08-15 Java基础
计算机网络知识点整理 1. get和post的区别 表现形式 get 请求的数据会附在url之后,以?形式分割URL和传输的数据,参数之间以&连接。 post请求的数据是提交在HTTP的包体中。 对数据长度的限制 get是通过URl提交数据,所以他的长度受浏览器的限制 post是没有数据长度的限制的,起限制作用的是:服务器的处理能力。 安全性 与post相比,Get安全性较差。get提交数据的时候,用户 2022-08-15 计算机网络 #整理
三次握手 三次握手 定义:三次握手,顾名思义,就是客户端与服务端的三次通信 流程: 第一次握手:建立连接。客户端发送请求连接报文段,然后客户端进入SYN_SEND(连接请求)状态,等待服务端的确认。 第二次握手:服务端收到客户端的SYN报文段,对这个报文段进行确认,同时,自己还要发送请求建立连接信息,服务端要将所有的信息放到一个报文段(即SYN+ACK报文段)中,一并发送给客户端,此时服务端进入SY 2022-08-15 计算机网络 #TCP