自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 ThreadLocal

ThreadLocal 提供线程的局部变量,每个线程都可以通过 get() 和 set() 对局部变量进行操作而不会对其他线程的局部变量产生影响,实现了线程之间的数据隔离。原理描述每个 Thread 维护着一个 ThreadLocalMap 的引用ThreadLocalMap 是 ThreadLocal 的内部类,用 Entry 来进行存储调用 ThreadLocal 的 set() 方法时,实际上就是往 ThreadLocalMap 设置值,key 是 ThreadLocal 对象,值是传递进来

2022-07-14 11:02:32 156 1

原创 Spring Cloud + Spring Cloud Alibaba 第五天

Eureka 基础知识经过前面几天的准备工作,今天终于要来到 Spring Cloud 的一个核心组件的学习了,它就是服务注册中心 Eureka。今天我们要添加服务注册中心 Eureka,并将 8001 和 80 两个服务注册到中心上。大家肯定有一个疑问:80 调用 8001 ,这么简单的调用,为什么要加入服务注册中心呢?这个先不着急,当服务多的时候,注册中心的作用就体现出来了(流量监控,是否有余量等等,进行统一调度协调)。我们先从以下几个方面来认识一下 Eureka什么是服务治理Spring

2022-03-08 16:35:37 220

原创 Spring Cloud + Spring Cloud Alibaba 第四天

消费者订单模块我们书接上文,看下图,我们上文已经创建了支付模块,现在该创建消费者订单模块,项目名称为:cloud-consumer-order80创建工程步骤和之前一样,不再赘述。修改 pom 文件<dependencies> <!--引入自己定义发布的jar包 自己定义的jar通过maven的clean和install指令进行发布到本地仓库--> <dependency> <groupId&gt

2022-03-08 16:34:50 284

原创 Spring Cloud + Spring Cloud Alibaba 第三天

父工程 pom 文件中 dependencyManagement 和 dependencies 的区别在上一篇文章中,我们创建完成了父工程,同时也编写了父工程的 pom 文件,有一点需要注意的是,父工程的 pom 文件中,引用使用的关键词为 dependencyManagement 而不是 dependencies ,那么他们有什么区别呢?dependencyManagement一般用在父模块,子模块继承之后:锁定版本 + 子模块不用写 groupid 和 version。元素能让所有在子项目中

2022-01-12 17:22:05 598

原创 Spring Cloud + Spring Cloud Alibaba 第二天

关于 cloud 各种组件的停更/升级/替换我们先来了解一下微服务中各个组件的停更/升级/替换服务注册中心Eureka 许多一开始使采用微服务架构的在使用 Eureka 作为服务注册中心zookeeper 与 Dubbo 成体系Consul 目前使用的较少(为了知识完整性,会学习一下)Nacos 阿里主推的,入驻 Spring Cloud,很重要服务调用RibbonLoadBalancer 正在萌芽阶段,有可能会取代 Ribbon服务调用2Feign 已经不再使用

2022-01-11 16:31:35 199

原创 Spring Cloud + Spring Cloud Alibaba 第一天

Spring Cloud + Spring Cloud Alibaba 第一天前言今天是挑战一个月学会 Spring Cloud + Spring Cloud Alibaba 的第一天,我们先不着急学习具体的知识,我们先从整体来了解一下微服务。首先我们先罗列一下在学习本课之前的前置技能:java8 + maven + git(github) + Nginx + RabbitMQ + SpringBoot2.0然后,我想说的是,整个的学习过程是艰辛的,但是最后胜利的果实是甘甜的,我希望你够从头到

2022-01-10 14:36:35 266

原创 你真的了解Netty吗?

你真的了解Netty吗?初识 Netty先来了解一下 Netty 的一些基本信息吧!首先是官网https://netty.io/这个还是很重要的,好多人学习新的技术的时候往往最先忽略的就是官网,然而官网上才是最权威的知识,还是很有必要了解一下的。Netty 是什么呢?Netty 是由 JBOSS 提供的一个 Java 开源框架,现为 Github 上的独立项目。Netty 是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络 IO 程序。Netty 主要

2022-01-10 13:58:07 326

原创 用一个月的时间带你学习Spring Cloud+Spring Cloud Alibaba微服务技术栈,持续更新中~

2020 年的时候,工作也三年多了,一直处于温水煮青蛙的状态,一直想着学一些东西,但是好像没有什么长性,后来一次偶然的机会,开始学习 SpringCloud + SpringCloud Alibaba,在这期间整理了三十多篇的笔记和几十个实例项目的代码。通过这次的学习,真的是让我受益匪浅,从以前只知道 CRUD ,到现在能够对微服务有比较深刻的认识(当然,不光要学这些东西,还有其它很多),只要你肯定努力,肯定能够用一个月的时间,从完全不了解微服务到对微服务有一个全面的了解。学习笔记下面是我在学习的过程

2022-01-09 18:35:35 1072 1

原创 volatile关键字

首先直接给出总结:volatile是虚拟机提供的轻量级同步机制,主要包含以下三个特点:保证可见性不保证原子性禁止指令重排下面我们针对几个特点展开说说:可见性根据JMM(Java内存模型),我们可以知道:各个线程对主内存中共享变量的操作都是各个线程各自拷贝到自己的工作内存进行操作后再写回到主内存中的。这就可能存在一个线程AAA修改了共享变量X的值但还末写回主内存时,另外一个线程BBB又对主内存中同一个共享变量X进行操作,但此时A线程工作内存中共享变量x对线程B来说并不可见,这种工作内存与主内存

2021-12-02 16:41:47 176

原创 Java常见异常

面试中经常会被问到一个“小”问题,就是“你能说出来5个常见的Java异常吗”?之所以“小”字加了引号,是因为其实这个问题看似简单,但是却很考验你的技术功底和平时的编码难易程度。首先,来一个大家都能直接想到的回答:NullPointerExceptionClassCastExceptionArrayIndexOutOfBoundsExceptionNumberFormatExceptionIOException具体异常是什么意思和在什么场景下会出现,我在这里就不展开说了,毕竟这都是最最最基本

2021-11-23 15:02:31 90

原创 CIM一套完善的消息推送框架

一套基于Netty的完善的消息推送框架文章目录一套基于Netty的完善的消息推送框架一、背景二、快速入门三、大致流程四、框架优势五、总结一、背景​ 公司项目有许多需要发送即时消息的场景,之前一直采用的是传统的websocket连接,它会存在掉线严重,不可重连,不支持高并发等缺点,在这样的背景下,急需一款成熟稳定的即时通讯系统。此时发现了一个优秀的开源框架–CIM。CIM是一套基于Netty框架下的推送系统,目前CIM支持websocket,android,ios,桌面应用,系统应用等多端接入支持,可

2021-10-08 15:13:58 1968 8

原创 xxl-job分布式任务调度系统

推荐一个分布式任务调度平台–xxl-job文章目录推荐一个分布式任务调度平台--xxl-job一、背景二、和Quartz的对比Quartz的不足XXL-JOB的特性三、快速入门四、效果图展示1.运行报表(首页)2.任务管理3.调度日志4.执行器管理5.用户管理五、系统架构六、总结一、背景​ 近期项目需要改革,找出之前项目的痛点,然后对症下药。其中就包括定时任务的管理,项目中定时任务众多,不方便管理,不支持分布式调度,此时发现了一个很好用的开源项目【分布式任务调度平台 XXL-JOB】。目前已经集成项

2021-10-08 14:27:34 172

原创 Spring的循环依赖还不会?

Spring的循环依赖还不会?一、什么是循环依赖?循环依赖就是循环引用,就是两个或多个bean相互之间的持有对方,比如CircleA引用CircleB,CircleB引用CircleA,则它们最终反映为一个环。例如:public class A{ private B b; }public class B{ private A a;}//A和B两个对象,A对象中引用B,B对象中引用A,这样就形成了循环依赖二、如何解决循环依赖问题?注入方式是setter且singleto

2021-09-24 14:33:06 107 1

原创 几张图给你说明白Spring Bean的生命周期

几张图给你捋明白Spring Bean的生命周期文章目录几张图给你捋明白Spring Bean的生命周期背景面试官怎么问?什么是bean生命周期准备创建创建BeanFactoryBeanFactory和FactoryBean的区别创建对象实现aware接口调用init-method调用BPP的after获得完成对象完整流程图完整文字描述背景Spring Bean的生命周期绝对是面试中必考的问题,虽然知道是必考,但是有的人就是记不住,下面这几张图帮你搞定Spring Bean的生命周期,想忘都难。PS

2021-06-24 17:31:19 253

原创 RabbitMQ(1)——先从MQ聊起

RabbitMQ(1)——先从MQ聊起文章目录RabbitMQ(1)——先从MQ聊起一、什么是MQ二、为什么要用MQ1.流量削峰2.应用解耦3.异步处理3.1异步为何不用多线程调用而使用MQ三、MQ的分类1.ActiveMQ2.Kafka3.RocketMQ4. RabbitMQ四、MQ的选择1.Kafka2.RocketMQ3.RabbitMQ3.RabbitMQ一、什么是MQMQ(message queue),从字面意思上看,本质是个队列,FIFO 先入先出,只不过队列中存放的内容是message

2021-06-22 15:13:03 131

excel转pdf,解决aspose100次转换限制问题|excel2PdfNoLicense.zip

excel转pdf,用新奇的思路解决aspose100次转换限制的问题,仅供学习和参考,请勿商用!水印的问题可以通过添加一张空白图片到pdf上解决!

2020-11-17

空空如也

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

TA关注的人

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