自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 xxl-job源码解析(技术分享)

XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。

2022-06-18 19:45:17 10226 19

原创 本地缓存:为什么要用本地缓存?用它会有什么问题?

随着不断的发展,这一架构也产生了改进,在一些场景下可能单纯使用Redis类的远程缓存已经不够了,还需要进一步配合本地缓存使用,例如Guava cache或Caffeine,从而再次提升程序的响应速度与服务性能。于是,就产生了使用本地缓存作为一级缓存,再加上远程缓存作为二级缓存的两级缓存架构。...

2022-04-04 11:18:11 23779 13

原创 注册中心eureka的介绍及源码探索

1. 背景1.1. 注册中心是什么注册中心可以说是微服务架构中的”通讯录“,它记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用。1.2. 为什么需要注册中心在分布式系统中,服务可能有上千个,然后每个服务都有好几个实例,如果通过 ip + port 进行服务之间通信则会使系统变得难维护,并且还需要考虑其他复杂的问题:服务注册后,如何被及时发现服务宕机后,如何及时下线服务如何有效的水平扩展如何获取服务列表注册中心如

2022-02-19 15:00:04 13458 2

原创 RocketMQ消息过滤是如何实现的?

RocketMQ根据Tag过滤消息的方式需要Consumer端和Broker端一起来完成

2022-07-29 22:12:37 553 2

原创 @Autowired实现的原理

使用@Autowired注入的bean对于目标类来说,从代码结构上来讲也就是一个普通的成员变量,@Autowired和spring一起工作,通过反射为这个成员变量赋值,也就是将其赋为期望的类实例。

2022-07-09 00:18:28 3335 5

原创 从分布式锁谈CAP

从分布式锁谈CAP;考虑分布式协议的CAP特性,因为这直接决定了分布式锁的强弱、性能的强弱。接下来看看AP、CP模型的分布式锁都将会有哪些表现。

2022-06-29 23:22:04 4267

原创 BloomFilter——大规模数据处理利器

大规模数据处理利器

2022-06-07 00:23:50 6807 7

原创 一文总结分布式搜索引擎ElasticSearch

ES是使用Java编写的一种开源搜索引擎,它在内部使用Lucene做索引与搜索,通过对Lucene的封装,隐藏了Lucene的复杂性,取而代之的提供一套简单一致的 RESTful API。一个分布式的实时文档存储,每个字段可以被索引与搜索。一个分布式实时分析搜索引擎。能胜任上百个服务节点的扩展,并支持 PB 级别的结构化或者非结构化数据。.........

2022-06-05 18:34:00 7570 4

原创 一图整理完分布式事务

以上就是我个人整理的分布式事务的框架图,需要原图或者xmind都可以私我。

2022-05-25 00:00:48 7379 4

原创 通俗易懂讲清502、503、504是什么

502灾难事件: 在某个连着两天的早晨9:00 左右,我们的服务器不幸挂掉了,影响了一批用户上班(早上着急上班骑不了自行车了,/捂脸)。当时打开我们的app和公司内部系统,报错都是502。问题原因:服务器冷不丁坏掉了解释:出现502错误,通常意味着一两个机器已经不正确,简单点说,就是机器挂掉了。理论点儿说,nginx执行请求的时候,却收到了上游服务器的无效响应503灾难事件:临时的服务器维护/过载,服务器当前无法处理请求,报503问题原因:请求用户量太多,服务器为了保护自己不挂掉,机智的拒绝某些

2022-04-22 23:21:02 15167 2

原创 SpringCloudAlibaba:Nacos

Nacos = eureka + config + bus1.1. 使用前提需要jdk1.8+ 和 maven下载nacos安装包,可以从github上下载 https://github.com/alibaba/nacos到nacos的 bin 找到对应的启动Nacos默认是的端口是8848,路径为 localhost:8848/nacos,账号密码都为 nacos,详情可看 config下的application.yml1.2. 快速搭建1.2.1. 服务提供者名称:cloudali

2021-03-15 19:44:20 10588 1

原创 IDEA maven 项目修改代码不生效,mvn clean、install 后才生效

前言  最近在做新项目,然后Maven项目进行修改时代码都不生效,需要mvc clean、mvc install后才会生效;历经找了两天的百度,各种方法都试了还是没有解决。小编决定加班一晚上,不解决不睡觉,后来真的解决了,前来分享解决方案。解决    Maven项目进行修改代码后我们重新运行代码,查看我们target目录下的clas...

2020-04-10 01:52:27 13159 8

原创 Java多线程

一、线程的生命周期     在线程的生命周期中,它经过了新建(NEW)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)五种状态。 当线程start后,它不能一直"独占"着CPU独自运行,所以CPU需要在多条线程之间切换,于是线程状态也会多次在运行、阻塞之间切换 。新建 New就绪 Runnable...

2020-02-17 01:59:25 4229 3

转载 5步解决CentOS7使用静态IP地址不能上网问题

https://blog.csdn.net/woailyoo0000/article/details/79506999

2020-02-05 15:49:05 4165 1

原创 网络协议

一、简述OSI的七层及TCP/IP五层(网络模型)OSI( Open System Interconnection )开放式网络互连,把网络通信工作分为7层,分别是物理层、表示层、会话层、传输层、网络层、数据链路层和物理层。OSI参考模型及解释’TCP/IP五层协议和OSI的七层协议对应关系如下在每一层都工作着不同的设备,比如我们常用的交换机就工作在数据链路层;一般的路由器是工作...

2020-02-05 01:23:34 5219 2

原创 SpringCloud知识点

一、系统架构的演变单机版把我们的所有的模块都放置一个项目上,最后将项目打包成war包或者jar包部署到你的服务器上; ​优点:1、方便开发;2、部署简单​缺点:1、代码耦合,开发维护困哪;2、并发性差、容错率高;3、无法针对对不同的模块进行优化分布式不同的业务在不同的模块上,然后发布在不同的服务器上,物理上的分离,逻辑上的集中优点:1、降...

2020-01-30 00:53:29 8407 2

原创 Java集合框架知识点

一、集合框架体系图二、Java集合框架的基本接口Collection为集合层次的根节点。一个集合代表了一组对象,这些对象即为它的元素。Java提供这个接口的任何直接实现类。List:是一个有序集合;它可以包含重复元素。你可以通过它的索引来访问它的任何元素。List更像一个长度可变的数组Set:是一个无序集、不可以包含重复元素。Map是一个key映射到value的对象。一个...

2020-01-17 23:51:17 4786 2

原创 数据库知识点

1.数据库有哪几种范式并举例第一范式(1NF):数据库表中的每一个字段都是单一属性的,这个属性由基本数据类型组成,如为地址这个属性可以分为XX省XX市XX区XX详细地址**第二范式(2NF):**在第一范式的基本上,数据库表中不存在对非关键字段对候选码关键词的部分依赖,如学号,课程号,成绩,和性别;主键为学号和课程号,但是性别这个字段完全依赖于学号,存在着非关键字段对候选码的部分依靠;第三范...

2019-12-27 22:50:29 4868 1

原创 集群、分布式、微服务的理解以及区别

集群什么是集群集群:计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件或者硬件连接起来高度紧密地协作完成计算机工作。提高了服务的稳定和可持续,但增加了成本。集群技术的特点通过多台计算机完成同一个工作,达到更高的效率,提高可持续和提高服务器的性能两机或多机内容、工作过程等完全一样。如果一台服务器死机,另外一个也完全可以起作用。比如写了多级分销系统发布到服务器上,现在访问的...

2019-12-26 01:12:09 4396

原创 Tomcat的优化策略

一、加大对Tomcat的运行内存例如默认的256M增大到2G二、服务器资源服务器所能提供的CPU、内存、磁盘等性能会对处理能力有决定作用1.对于高并发情况下会有大量的运算,那么CPU的速度会直接影响到处理速度;2.内存在处理大量数据的情况下,将会有较大的内存需求,可以用-XMS -XMX -xx:MaxPermSize等参数对内存不同功能进行划分;SET CATALINA_OPTS= ...

2019-12-25 00:55:22 4469

原创 “读写分离”、“缓存”和“水平切分”

“读写分离”概念:“读写分离”就是将数据库分为主从库,一个主库用于写数据,多个从库用于完成读数据的操作,主从库之间通过某种机制进行数据同步,是一种常见的数据库架构。数据库分组架构解决什么问题?大部分的互联网业务,往往都是读多写少,数据库的读首先会成为数据库的瓶颈。这时我们就希望能够线性的数据库提高读性能,消除读写锁冲突从而提高数据库的写性能,那么就可以使用**“分组架构”**。用一句话概...

2019-12-22 01:17:33 977

原创 没有找到站点和本地项目上传到云服务器

没有找到站点解决用宝塔面板提示“您的请求在Web服务器中没有找到对应的站点”这是什么原因?出现这个界面说明域名解析已经正确并生效,这是由于域名没有绑定好,很可能是由于www域名和不带www域名没有填好导致的解决方案1.点击网站,新建一个站点2.对新建的站点进行设置3.选择网站目录,选择这个域名要执行的项目通过以上这三步,就可以完成我们的域名绑定啦!使用xshell和xftp将...

2019-12-20 00:52:29 4549

原创 反射.class、class.forname() 和 getClass() 的区别

反射概念Java的反射机制在运行的状态,对于任何一个实体类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能被称为java语言的反射机制。可以理解为在运行时期获得对象类型信息的操作。传统的编程方法要求程序员在编译阶段决定使用哪些类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代码。...

2019-12-19 00:55:25 5690 1

原创 redis的基本操作及持久化存储和适用场景

redis的基本操作及持久化存储和适用场景常用操作redis 持久化情景可以如下常用操作Redis是一个类似于hashMap的key-value键值对的内存数据库。开启redis客户端:1.redis-cli2.auth 密码Key操作‘DEL 删除Key, del key1 key2EXPIRE 设置或者更新到期时间,到期后自动清除,单位秒 设置为-1表示永不过期。 EXPI...

2019-12-18 01:06:15 4133

空空如也

空空如也

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

TA关注的人

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