3 严的博客

尚未进行身份认证

想好好提升技术

等级
TA的排名 1w+

spring boot 特性一:自动配置原理分析

Spring Boot中引入了自动配置,让开发者利用起来更加的简便、快捷,本篇分析下Spring Boot中的自动配置原理。注解结构:文章目录一、启动类:二、@SpringBootApplication注解三、@EnableAutoConfiguration一、启动类:二、@SpringBootApplication注解进入@SpringBootApplication的注解类,会发现...

2020-02-16 17:49:54

消息中间件之RabbitMQ专题之五:RabbitMQ的面试题

文章目录1、什么是RabbitMQ?为什么使用RabbitMQ?2、RabbitMQ有什么优缺点?3、如何保证RabbitMQ的高可用?4、RAM node 和 disk node 的区别?5、RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?6、如何保证RabbitMQ不被重复消费?7、如何保证RabbitMQ消息的可靠传输?8、如何保证RabbitMQ消息的顺序...

2020-02-13 21:00:32

消息中间件之RabbitMQ专题四:spring boot 整合rabbitmq 消息确认、消息预取、死信交换机

文章目录一、消费者如何确认消费?二、消息预取(一)rabbitmq消息的发放机制问题(二)解决办法三、死信交换机四、死信交换机案例一、消费者如何确认消费?为什么要确认消费? 默认情况下 消费者在拿到rabbitmq的消息时 已经自动确认这条消息已经消费了, 讲白话就是rabbitmq的队列里就会删除这条消息了, 但是 我们实际开发中 难免会遇到这种情况, 比如说 拿到这条消息 发现我处理不了 ...

2020-02-10 22:58:13

消息中间件之RabbitMQ专题三:spring boot 整合rabbitmq 消息发送,失败回调,发送确认

文章目录一、引入spring boot -AMQP的依赖:二、配置连接,创建交换机,队列三、如何确保消息一定发送到Rabbitmq了?(一)失败回调(二)发送方确认模式四、完整案例一、引入spring boot -AMQP的依赖: <dependency> <groupId>org.springframework.boot</...

2020-02-10 16:49:26

消息中间件之RabbitMQ专题二:RabbitMQ介绍

文章目录一、消息中间件介绍二、RabbitMq介绍&AMQP介绍(一)AMQP(二)AMQP 协议中的基本概念(三)Exchange的类型(四)队列Queue(五)Virtual Hosts(六)基础对象三、RabbitMq快速开始一、消息中间件介绍我们用java来举例子, 打个比方我们客户端发送一个下单请求给订单系统(order)订单系统发送了一个请求给我们的库存系统告诉他需要更改...

2020-02-08 15:28:45

消息中间件之RabbitMQ专题一:docker安装RabbitMQ

自从有了docker,安装这些软件真的简单多了,一个字:爽!文章目录一、选择RabbitMQ的版本二、docker安装RabbitMQ一、选择RabbitMQ的版本大家搜索镜像文件时,可直接到Docker的商店搜索,地址为:https://hub.docker.com/,RabbiMQ的相关镜像为:https://hub.docker.com/_/rabbitmq/,查看tags,可查看版本...

2020-02-07 15:24:34

分布式系统专题四:Zookeeper详细功能介绍

文章目录一、节点类型(znode)二、Stat三、Zxid四、Watch五、常用命令(一)创建节点(znode)(二)获取数据 、设置数据(三)创建子节点、列出子节点、移除Znode六、ACL一、节点类型(znode)持久节点,所谓持久节点,是指在节点创建后,就一直存在,直到有删除操作来主动清除这个节点。临时节点,和持久节点不同的是,临时节点的生命周期和客户端会话绑定。也就是说,如果...

2020-02-06 21:45:08

JAVA面试专题二:线程

文章目录1、创建线程有几种不同的方式?你喜欢哪一种?为什么?2、什么是线程池? 为什么要使用它?3、线程池的有几种实现方式4、Runnable接口和Callable接口的区别5、start()方法和run()方法的区别6、概括的解释下线程的几种可用状态。7、请说出与线程同步以及线程调度相关的方法8、为什么wait, notify 和 notifyAll这些方法不在thread类里面?9、为什么wa...

2020-02-05 15:17:27

分布式系统专题三:Zookeeper集群搭建

因为是在单机环境下模拟集群环境,所以需要用不同端口来模拟不同主机。搭建集群前,我们先来了解Zookeeper集群的角色;文章目录一、集群的角色二、集群环境搭建(一)复制配置文件一、集群的角色1)领导者(Leader) : 负责进行投票的发起和决议,最终更新状态。2)跟随者(Follower): Follower用于接收客户请求并返回客户结果。参与Leader发起的投票。3)观察者(ob...

2020-02-04 15:25:18

分布式系统专题二:Zookeeper介绍

Apache ZooKeeper是Apache软件基金会的一个软件项目,他为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册。ZooKeeper曾经是Hadoop的一个子项目,但现在是一个独立的顶级项目。一、下载与安装下载地址:https://zookeeper.apache.org/解压配置进入到conf文件夹,找到zoo_sample.cfg文件,并复制为zoo.cfg...

2020-02-03 22:53:48

slfj、log4j等通用日志框架及Spring5日志新特性

文章目录一、主流的log技术名词二、各种日志技术的关系和作用三、spring日志技术分析一、主流的log技术名词log4j可以不需要依赖第三方的技术直接记录日志 <dependency> <groupId>log4j</groupId> <artifactId>log4j&l...

2020-01-30 23:05:23

微服务架构专题十一:Spring-Cloud 之 Sleuth、zipkin 分布式链路跟踪

文章目录一、分布式链路跟踪介绍(一)sleuth介绍:(二)sleuth介绍图:二、sleuth整合Zipkin实现分布式链路跟踪(一)Zipkin简介:(二)为什么要Zipkin(三)编写一个Zipkin Server(四)sleuth微服务整合Zipkin三、zipkin server 数据持久化问题(一)使用Elasticsearch 做数据持久化一、分布式链路跟踪介绍本节课来讨论微服务...

2020-01-27 23:09:10

微服务架构专题十:Spring-Cloud 之 config 分布式配置中心

文章目录一、config是什么?二、怎么使用config?三、客户端从config上获取配置四、spring cloud config 高可用一、config是什么?我们既然要做项目, 那么就少不了配置,传统的项目还好,但是我们微服务项目, 每个微服务就要做独立的配置, 这样难免有点复杂, 所以, config项目出来了,它就是为了解决这个问题: 把你所有的微服务配置通过某个平台:比如 gi...

2020-01-23 13:31:53

微服务架构专题九:Spring-Cloud 之 HystrixDashbord

文章目录一、/actuator/hystrix.stream二、HystrixDashbord(一)什么是HystrixDashbord/如何使用?(二)Hystrix仪表盘解释:一、/actuator/hystrix.streamHystrix(注意 是单纯的Hystrix) 提供了对于微服务调用状态的监控(信息), 但是,需要结合spring-boot-actuator 模块一起使用.在...

2020-01-22 15:08:48

微服务架构专题八:Spring-Cloud组件 Zuul

一、zuul是什么?Zuul包含了对请求的路由和过滤两个最主要的功能:其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础.Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过Zuul跳...

2020-01-22 10:35:16

分布式系统专题一:分布式系统介绍

文章目录一、发展背景二、什么是分布式系统?三、分布式系统所遇到的挑战(一)分布式session(二)分布式配置中心(三)分布式事务(四)分布式锁五、CAP理论六、BASE理论七、分布式定时任务一、发展背景1、单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。。2、垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干...

2020-01-17 22:11:30

Mysql专题八:Mysql 锁

文章目录一、读锁与写锁(一)读操作(二)写操作二、行锁与表锁(一)行锁READ COMMITTED级别下REPEATABLE READ级别下(二)表锁(三)、悲观锁和乐观锁(四)死锁一、读锁与写锁• 读锁:共享锁、Shared Locks、S锁。• 写锁:排他锁、Exclusive Locks、X锁。• select :不加锁(一)读操作对于普通 SELECT 语句,InnoDB 不...

2020-01-17 16:48:57

Mysql专题七:Mysql事务

文章目录一、事务的ACID原则二、事务的使用三、隔离性详解一、事务的ACID原则事务的概念:我们把需要保证原子性、隔离性、一致性和持久性的一个或多个数据库操作称之为一个事务。场景:小明向小强转账10元原子性(Atomicity)转账操作是一个不可分割的操作,要么转失败,要么转成功,不能存在中间的状态,也就是转了一半的这种情况。我们把这种要么全做,要么全不做的规则称之为原子性。隔离性...

2020-01-17 16:19:48

Mysql专题六:Mysql常见的优化手段和Explain关键字

explain select * from t1 join t2;一、性能按type排序system > const > eq_ref > ref > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL二、性能按Ext...

2020-01-17 11:04:29

Mysql专题五:关于JOIN的优化和子查询的优化

JOIN的含义就如英文单词“join”一样,连接两张表,大致分为内连接,外连接,右连接,左连接,自然连接。这里描述先甩出一张用烂了的图,然后插入测试数据。文章目录一、语法二、连接的原理(一) 嵌套循环连接(Nested-Loop Join)(二)基于块的嵌套循环连接(Block Nested-Loop Join)三、外连接消除四、关于子查询的优化(一)按返回的结果集区分子查询(二)按与外层查询...

2020-01-17 10:31:24

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。