自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 nacos和eureka对比

nacos和eureka都是注册中心,都具有各自的负载均衡策略,eureka分为生产者、消费者、和eureka主题,生产者把服务存放在eureka主体中,消费者就可以从eureka中获取服务,Nacos有自己的配置中心,Eureka需要配合config实现配置中心,且不提供管理界面,nacos是动态刷新的,它采用Netty保持长连接实时推送,eureka需要配合MQ实现配置动态刷新阿里的nacos : 性能最好他同时支持AP和CP模式,他根据服务注册选择临时和永久来决定走AP模式还是CP模式eurek

2020-12-04 09:51:29 25601 3

原创 分布式事务

一、搭建事务管理器新建项目编写pom.xml<dependencies> <dependency> <groupId>com.codingapi.txlcn</groupId> <artifactId>txlcn-tm</artifactId> <version>5.0.2.RELEASE</version> </dependency&g

2021-01-07 10:11:07 107

原创 HashMap

HashMap底层采用hash表是一个线程不安全的数据结构,储存键值对实现快速存取,允许为null,key值不可重复若key值重复则覆盖,jdk8后采用数组+链表+红黑树的数据结构,HashMap做存储是先对键做一个hashCode()的计算找到他在数组中的存储位置存储对象,当储存的容量达到一定的大小,数组就会扩容...

2020-12-30 11:06:52 90

原创 redist的增删改查

import java.io.Serializable;import java.util.HashSet;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Set;import java.util.concurrent.TimeUnit;import org.springframework.beans.factory.annotation.Autowired;impor

2020-12-29 10:36:53 262

原创 SQL优化

1.在建立表时给列添加not null 约束或default 默认值(分情况)2…避免全表扫描对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3.避免负向条件应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。负向条件有:!=、<>、not in、not exists、not like 等4.避免使用or逻辑应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引

2020-12-21 16:25:29 92

原创 Spring MVC运行原理

1、 用户发送请求至前端控制器DispatcherServlet。2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。4、 DispatcherServlet调用HandlerAdapter处理器适配器。5、 HandlerAdapter经过适配调用具体的处理器(Controller,也叫

2020-12-18 10:49:04 96 1

原创 Spring的AOP和IOC

AOP面向切面编程。为某个流程添加前置切点、后置切点、环绕切点,可以在流程执行的过程中在切点上添加事件,降低模块的耦合度,使系统容易扩展IOCIOC(控制反转)就是依赖倒置原则的一种代码设计思路。就是把原先在代码里面需要实现的对象创建、对象之间的依赖,反转给容器来帮忙实现。Spring IOC容器通过xml,注解等其它方式配置类及类之间的依赖关系,完成了对象的创建和依赖的管理注入。实现IOC的主要设计模式是工厂模式。集中管理,实现类的可配置和易管理。降低了类与类之间的耦合度。...

2020-12-18 10:33:58 59

原创 CAP

CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)可用性(A):保证每个请求不管成功或者失败都有响应。分区容忍性(P):系统中任意信息的丢失或失败不会影响系统的继续运作。CAP原则的精髓就是要么AP,要么CP,要么AC,但是不存在CAP。如果在某个分

2020-12-17 09:36:36 53

原创 缓存雪崩缓存击穿缓存穿透

前端发送请求从缓存取数据,缓存没有就查询数据库,把查询到的数据放到缓存中,如果数据库没有返回空缓存穿透缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。解决方案接口层增加校验,id<=0的直接拦截;从缓存取不到的数据,在数据库中也没有取到,这时也可以将key-value对写为key-null,缓存有效时间可以设置短点。这样可以防止攻击用户反复用同一个id暴力攻击缓存击穿缓

2020-12-15 13:50:15 69

原创 vue部署nginx

Nginx安装一、安装编译工具及库文件#yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel二、首先要安装 PCRE1、下PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gzcd /usr/local/src/wget http://downloads.sourceforge.ne

2020-12-15 13:39:33 150

原创 线程和进程的区别

进程是资源分配的最小单位,线程是CPU调度的最小单位做个简单的比喻:进程=火车,线程=车厢线程在进程下行进(单纯的车厢无法运行)一个进程可以包含多个线程(一辆火车可以有多个车厢)不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘)同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易)进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源)进程间不会相互影响,一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中间的一节车厢着

2020-12-07 14:02:30 267

原创 tcp三次握手四次挥手

三次握手(1)男孩喜欢女孩,于是写了一封信告诉女孩:我爱你,请和我交往吧!;写完信之后,男孩焦急地等待,因为不知道信能否顺利传达给女孩。(2)女孩收到男孩的情书后,心花怒放,原来我们是两情相悦呀!于是给男孩写了一封回信:我收到你的情书了,也明白了你的心意,其实,我也喜欢你!我愿意和你交往!;写完信之后,女孩也焦急地等待,因为不知道回信能否能顺利传达给男孩。(3)男孩收到回信之后很开心,因为发出的情书女孩收到了,并且从回信中知道了女孩喜欢自己,并且愿意和自己交往。然后男孩又写了一封信告诉女孩:你的心意

2020-12-07 13:55:57 190

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除