自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(191)
  • 资源 (74)
  • 问答 (1)
  • 收藏
  • 关注

原创 SpringBoot配置加载优先级

SpringBoot配置加载优先级1:application.yaml配置先加载> application.properties配置后加载2:资源优先级由高到低:classpath:/,classpath:/config/,file:./,file:./config/*/,file:./config/

2023-09-20 17:57:26 405

原创 面试交流会

第一重境界:“昨夜西风凋碧树。独上高楼,望尽天涯路”。 第二重境界:“衣带渐宽终不悔,为伊消得人憔悴”。 第三重境界:“众里寻他千百度,蓦然回首,那人却在灯火阑珊处”。

2023-07-08 17:30:57 708

原创 G1垃圾收集器回收步骤

在执行垃圾回收操作之前,G1 垃圾回收器会将 PLAB 中的对象依次晋升到老年代中,这样可以减少老年代中的内存分配操作,对于每个线程,G1 垃圾回收器都维护了一个或多个 PLAB。内存结构:2048个Region,每个Region 大小在1-32M之间,默认年轻代初始大小整堆的5%,最大整堆的60%3:在并发标记和最终标记的过程中,计算出回收价值最大的Region(包含所有区的Region)放入CSet。检查每个已存活的对象所在的 Region,并将这些 Region 标记为 "可复制" 的备选区域。

2023-04-12 14:55:50 1175 2

原创 ChatGPT扩展系列之跨平台桌面客户端ChatBox

ChatGPT平替工具

2023-04-07 17:28:30 7339

原创 RabbitMQ 发送给延迟交换机的消息调用returnedMessage 方法及returnedMessage() 方法的作用

1:RabbitMQ 发送给延迟交换机的消息调用returnedMessage 方法2:returnedMessage() 方法的作用交换机返回消息的方法-消息未送达队列触发回调(1)常用于交换机无法路由回退消息。(2)如果交换机绑定了备用交换机则是路由到备用交换机,此方法不回调。(3)如果是发送到延迟交换机则回调此方法,所以如果使用延迟交换机则要对延迟交换机回调的消息过滤。

2023-03-23 23:05:34 1315 3

原创 RabbitMQ-死信队列-过期了的消息为什么不自动进入死信队列?

过期了的消息为什么不自动进入死信队列?结果如图:不管过去多长时间,第二条消息永远不会移至死信队列,因为判断过期时间在队列头部。因为消息1,没有被消费所以,队列判断不到消息2是否过期。是等消息到达队列顶部即将被消费时,才会判断其是否过期并删除或者移至死信队列。所以即使消息过期,也不会马上从队列中抹去。生产者代码:发送两个消息,将发送的第二条消息设置过期时间。

2023-03-20 17:56:50 1002 5

原创 RabbitMQ-死信队列-普通队列满了添加消息会怎样?

普通队列满了添加消息会怎样?发10条消息,到固定长度为6的普通队列,普通队列有哪些消息?死信队列有哪些消息?普通队列满了之后继续添加消息,前面的消息会挤出到死信队列中。

2023-03-20 17:29:42 683

原创 Consul提示Service Check有红叉的的一种解决方案

【代码】Consul提示Service Check有红叉的的一种解决方案。

2023-03-12 13:29:12 829

原创 Linux 安装 Consul并设置开机启动

Linux 安装 Consul并设置开机启动 发现报 :-bash: ./consul: cannot execute binary file 异常

2023-03-12 12:58:41 1909

原创 Nacos集群设置开机自启动

注意 创建服务文件 /etc/systemd/system/nacos.service 方式启动nacos集群不行,亲测。2、JAVA_HOME后面要改成自己的jdk路径,并注释下面三行内容,不然启动服务会提示找不到jdk。后来发现编写自动启动脚本xx.service只能起单个进程,所以起集群在这不合适。1:创建/etc/systemd/system/nginx.service 文件。2、修改/etc/rc.local 文件并赋予权限,即可开机启动。赋予/etc/rc.local 可执行权限。

2023-03-10 10:39:08 1039

原创 Docker 中遇到的问题

2.第二种情况就是CentOS在2020 年 12 月 8 号,CentOS 官方宣布了停止维护 CentOS Linux 的计划,并推出了 CentOS Stream 项目,CentOS Linux 8 作为 RHEL 8 的复刻版本,生命周期缩短,于 2021 年 12 月 31 日停止更新并停止维护(EOL)。第一天启动主机和虚拟机都可以正常访问,晚上睡觉的时候就挂起关机睡觉了,但到了第二天主机访问不了了,ping 也能ping 通,后来停掉容器,重启了虚拟机就好了,就很离谱。

2023-02-13 16:20:29 441

原创 Spring 整合 MyBatis 遇到的错误

解决办法:加入Mapper 扫描。

2022-11-23 20:39:17 392

原创 Spring Bean 的生命周期(看着图不迷路)

*** 实例化前后处理器*/@OverrideSystem.out.println(" 第1.1步-实例化之前-后期处理器");beanName);}@OverrideSystem.out.println(" 第1.1步-实例化之后-后期处理器");beanName);}}

2022-11-02 21:45:37 620

原创 并发的可达性分析

原始快照要破坏的是第二个条件,当灰色对象要删除指向白色对象的引用关系时,就将这个要删除的引用记录下来,在并发扫描结束之后,再将这些记录过的引用关系中的灰色对象为根,重新扫描一次。增量更新要破坏的是第一个条件,当黑色对象插入新的指向白色对象的引用关系时,就将这个新插入的引用记录下来,等并发扫描结束之后,再将这些记录过的引用关系中的黑色对象为根,重新扫描一次。显然在可达性分析刚刚开始的阶段,所有的对象都是白色的,若在分析结束的阶段,仍然是白色的对象,即代表不可达。表3-1 并发出现“对象消失”问题的示意。

2022-10-20 09:57:26 138

原创 G1垃圾回收器(面试被问到)

Garbage First收集器Garbage First(简称G1)收集器是垃圾收集器技术发展历史上的里程碑式的成果,它开创了收集器面向局部收集的设计思路和基于Region的内存布局形式。早在JDK 7刚刚确立项目目标、Oracle公司制定的JDK 7 RoadMap里面,G1收集器就被视作JDK 7中HotSpot虚拟机的一项重要进化特征。从JDK 6 Update 14开始就有Early Access版本的G1收集器供开发人员实验和试用,但由此开始G1收集器的“实验状态”(Experimental)持

2022-10-20 09:55:43 280 1

原创 一把搞懂线程中stop、sleep、supend、yield、wait、notify

stop/supend/yield/wait/sleep停止暂停让步等待睡眠线程都死了锁也就不存在了不让出锁让出CPU让出锁不让出锁。

2022-10-13 23:56:15 1060

原创 IO流体系

其内部维护着一个缓冲区(字节数组),使用该流在读取一个字节时,该流会尽可能多的一次性读取若干字节并存入缓冲区,然后逐一的将字节返回,直到缓冲区中的数据被全部读取完毕,会再次读取若干字节从而反复。相反,我们有这样一个字节序列需要将其转换为对应的对象,这个过程就称为对象的反序列化。如果声明的类的对象序列化存到硬盘上面,之后随着需求的变化更改了类的属性(增加或减少或改名),那么当反序列化时,就会出现InvalidClassException,这样就会造成不兼容性的问题。该类的读写是基于指针的操作。

2022-02-10 17:13:00 300

原创 Zookeeper技术:分布式架构详解、分布式技术详解、分布式事务

Zookeeper技术:分布式架构详解、分布式技术详解、分布式事务Java高级架构进阶2018-11-03 21:11:39一、分布式架构详解1、分布式发展历程1.1 单点集中式特点:App、DB、FileServer都部署在一台机器上。并且访问请求量较少1.2 应用服务和数据服务拆分特点:App、DB、FileServer分别部署在独立服务器上。并且访问请求量较少1.3 使用缓存改善性能特点:数据库中频繁访问的数据存储在缓存服务器中,减少数据库的访问次数,降低.

2022-01-18 16:57:40 353

原创 Nginx 限流方法

Nginx 限流方法运维猿2018-10-23 17:25:31限流(rate limiting)是Nginx众多特性中最有用的,也是经常容易被误解和错误配置的,特性之一。该特性可以限制某个用户在一个给定时间段内能够产生的HTTP请求数。请求可以简单到就是一个对于主页的GET请求或者一个登陆表格的POST请求。限流可以用于安全目的上,通过限制请求速度来防止外部暴力扫描,或者减慢暴力密码破解攻击,可以结合日志标记出目标URL来帮助防范DDoS攻击,也可以解决流量突发的问题(如整点活动),一般地说.

2022-01-18 16:57:22 2529 2

原创 RabbitMQ的五种队列模式与实例

RabbitMQ的五种队列模式与实例3.1 简单模式Hello World简单模式Hello World功能:一个生产者P发送消息到队列Q,一个消费者C接收生产者实现思路:创建连接工厂ConnectionFactory,设置服务地址127.0.0.1,端口号5672,设置用户名、密码、virtual host,从连接工厂中获取连接connection,使用连接创建通道channel,使用通道channel创建队列queue,使用通道channel向队列中发送消息,关闭通道和连接。

2022-01-17 17:04:11 638

转载 JAVA8-Future和CompletableFuture

如果还想处理结果(没有异常的情况),那就用handle,比whenComplete友好一些,handle不仅能处理异常还能返回一个异常情况的默认值。Future:我们的目的都是获取异步任务的结果,但是对于Future来说,只能通过get方法或者死循环判断isDone来获取。异常情况就更是难办。thenCombine:至少两个方法参数,一个为其它stage,一个为用户自定义的处理函数,函数返回值为结果类型。3. 如果有复杂任务,比如依赖问题,组合问题等,同样可以写好处理函数来处理(能应付复杂任务的处理)

2022-01-17 17:03:27 793

转载 JAVA8-Function接口

Java8增加了函数式编程这一新特性,我这几天也在慢慢学习,现在就来讲讲Function接口。

2022-01-17 17:02:39 265

原创 SLB-负载均衡

负载均衡技术原理浅析https://help.aliyun.com/knowledge_detail/39444.html?spm=5176.7839438.2.6.XBbX5l阿里定制版的LVC 开源地址:https://github.com/alibaba/LVS?spm=5176.7739444.2.10.WxLaqZ更新时间:2016-07-12 13:21:101、技术架构2、LVS技术特点 FULLNAT技术概述 SYNPROXY技术概述 集群...

2022-01-17 17:02:04 4438

转载 Volatile关键字

volatile 是一个类型修饰符。volatile 的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略。

2022-01-17 17:01:36 101

原创 String,StringBuilder,StringBuffer三者的区别

01:String,StringBuilder,StringBuffer三者的区别一、Java String 类——String字符串常量字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。需要注意的是,String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,这样不仅效率低下,而且大量浪费有限的内存空间。

2022-01-16 19:07:43 388

原创 RabbitMQ-01-每一步都是坑

01:主机无法访问虚拟机MQ查询指定端口是否已开firewall-cmd --query-port=15672/tcp添加指定需要开放的端口:firewall-cmd --add-port=15672/tcp --permanent重载入添加的端口:firewall-cmd --reload查询指定端口是否开启成功:firewall-cmd --query-port=15672/tcp移除指定端口:firewall-cmd --permanent --...

2021-11-07 01:33:28 1658

原创 Tomcat的server.xml详解

Tomcat服务器是由一系列可配置的组件构成,其核心组件是Catalina Servlet容器,它是所有其他Tomcat组件的顶层容器。Tomcat的组件可以在<CATALINA_HOME>/conf/server.xml文件中进行配置,每个Tomcat的组件在server.xml文件中对应一种配置元素.一下代码以XML的形式展示了各种Tomcat组件之间的关系:<Server>元素 代表了整个Catalina Servlet容器,它是To...

2021-09-29 16:58:57 424

原创 Mysql解决中文乱码

目录:1、什么是数据库2、MySql指令集3、数据库访问优化法则4、Oracle数据库两个基本概念1、什么是数据库 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,随着信息技术和市场的发展,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前..

2021-09-27 00:46:40 22713

转载 Mysql全套看这一篇就够了特别详细

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。Mysql是开源的,可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。MySQL使用标准的SQL数据语言形式。Mysql可以允许于多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

2021-05-15 09:17:27 317

原创 Nginx、HAProxy、LVS三者的优缺点

一、Nginx优点:1、工作在网络7层之上,可针对http应用做一些分流的策略,如针对域名、目录结构,它的正规规则比HAProxy更为强大和灵活,所以,目前为止广泛流行。2、Nginx对网络稳定性的依赖非常小,理论上能ping通就能进行负载功能。3、Nginx安装与配置比较简单,测试也比较方便,基本能把错误日志打印出来。4、可以承担高负载压力且稳定,硬件不差的情况下一般能支撑几万次的并...

2019-04-07 02:36:13 1591 1

原创 Nginx应用场景

详解Nginx主要应用场景|反向代理|负载均衡|动静分离|HTTP服务器波波说运维2018-10-20 00:08:39今天只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,这里是根据之前使用过和了解过总结出来的。Nginx能做什么? 反向代理 负载均衡 HTTP服务器(包含动静分离) 1. 反向代理反向代...

2019-04-07 02:31:53 197 2

原创 Redis缓存和MySQL数据一致性方案详解

Redis缓存和MySQL数据一致性方案详解需求起因在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节。所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库。这个业务场景,主要是解决读数据从Redis缓存,一般都是按照下图的流程来进行业务操作。读取缓存步骤一般没有什么问题,但是一旦涉及到数据更新:数据...

2019-04-07 02:26:11 190 2

原创 Rabbitmq-关于消息队列的使用

关于消息队列的使用一、消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ二、消息队列应用场景以下介绍消息队列在实际应用中常用的使用场景。异步处理,应用解耦,流量削锋和...

2019-04-07 02:18:51 595 1

原创 解析Tomcat内部结构和请求过程

解析Tomcat内部结构和请求过程概述Tomcat是一个JSP/Servlet容器。其作为Servlet容器,有三种工作模式:独立的Servlet容器、进程内的Servlet容器和进程外的Servlet容器。Tomcat的组织结构 Tomcat是一个基于组件的服务器,它的构成组件都是可配置的,其中最外层的是Catalina servlet容器,其他组件按照一定的格式要求配置在这个...

2019-04-06 15:16:57 167 1

原创 Tomcat和Weblogic的区别

Tomcat和Weblogic的区别Tomcat和WeblogicJ2ee开发主要是浏览器和服务器进行交互的一种结构.逻辑都是在后台进行处理,然后再把结果传输回给浏览器。可以看出服务器在这种架构是非常重要的。接触到两种Java的web服务器,做项目用的Tomcat,看视频看的是WebLogic Server(WLS),都是web服务器,有什么区别和联系呢?(一)先简单介绍...

2019-04-06 15:16:14 218 1

原创 手写LinkList和arrayList

03-JAVAAPI-数据结构目录:1、自己写的LinkList和arrayList。2、基本数据结构:链表(list)为了加深理解,我就自己写了下LinkList和arrayList。下面贴下代码链表代码链表代码 public class MyTwoLinkedList<AnyType> implements Iterable...

2019-04-06 15:14:05 275

转载 Synchronized原理

分析Synchronized原理文章简介synchronized想必大家都不陌生,用来解决线程安全问题的利器。同时也是Java高级程序员面试比较常见的面试题。这篇文正会带大家彻底了解synchronized的实现。扩展阅读:「阿里面试系列」搞懂并发编程,轻松应对80%的面试场景「阿里面试系列」Java线程的应用及挑战「阿里面试系列」面试加分项,从jvm层面了解线程的启...

2019-04-06 15:07:16 148 1

原创 JAVA锁详解

独享锁/共享锁+公平锁/非公平锁+乐观锁/悲观锁在Java并发场景中,会涉及到各种各样的锁如公平锁,乐观锁,悲观锁等等,这篇文章介绍各种锁的分类:公平锁/非公平锁可重入锁独享锁/共享锁乐观锁/悲观锁分段锁自旋锁乐观锁 VS 悲观锁乐观锁与悲观锁是一种广义上的概念,体现了看待线程同步的不同角度,在Java和数据库中都有此概念对应的实际应用。1.乐观...

2019-04-06 14:56:28 164 1

原创 强引用,软引用,弱引用,虚引用

强引用,软引用,弱引用,虚引用1、强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下:Object o=new Object(); // 强引用 当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足...

2019-04-06 14:54:16 77 1

原创 HashMap多线程下发生死循环的原因

HashMap通常会用一个指针数组(假设为table[])来做分散所有的key,当一个key被加入时,会通过Hash算法通过key算出这个数组的下标i,然后就把这个插到table[i]中,如果有两个不同的key被算在了同一个i,那么就叫冲突,又叫碰撞,这样会在table[i]上形成一个链表。我们知道,如果table[]的尺寸很小,比如只有2个,如果要放进10个keys的话,那么碰撞非常频繁,于是一个O(1)的查找算法,就变成了链表遍历,性能变成了O(n),这是Hash表的缺陷。

2019-04-06 14:44:19 880

linux操作系统3.html

jy-13-LINUX——Linux

2021-10-25

jy-12商品基本数据.zip

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-21

addressAdmin.jsp

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-18

addressAdmin.jsp

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-18

user_password.jsp

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-18

userMapper.xml

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

spring-db.xml

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

db.properties

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

学子商城 web.xml

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

porject-day12.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY11.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY10.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY09.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY08.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY07.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY06.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY05.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY04.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY03.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

PORJECT-DAY02.html

《jy-12-SPRINGMYBATIS02——学子商城-@成恒》

2021-10-17

cluster.zip

《py-20-JTWEB02》

2022-01-17

py-19 amoeba.xml

<py-19-JTWEB01>

2022-01-16

KindEditor.jsp

《py-19-JTWEB01》

2022-01-15

JAVA多线程编程核心技术.xmind

《03-JAVAAPI-JAVA多线程编程核心技术》

2022-01-15

jtdb-baiduyunde.sql

《py-19-JTWEB01》

2022-01-13

py-18 jtsys.sql

py-18-PROJECT4

2022-01-11

py-16 Blog.java

《py-16-MyBatis》所需文件

2021-12-30

BlogMapper.xml

《py-16-MyBatis》所需文件

2021-12-30

mybatis-configs.xml

《py-16-MyBatis》所需文件

2021-12-30

config.properties

《py-16-MyBatis》所需文件

2021-12-30

py-13-RA2 jt_sys.sql

《py-13-RA2》

2021-12-14

CGB-JT-SYS-V1.04.zip

《py-13-RA2》资源

2021-12-14

c3p0-config.xml

<py-08-PROJECT1>所需内容

2021-12-01

jt-crawler.zip

《py-02-爬虫比价器》

2021-11-14

7.2 恢复,jtds.sql

《py-02-DATABASE》

2021-11-14

尚硅谷_消息中间件RabbitMQ_课件.docx

尚硅谷_消息中间件RabbitMQ_课件

2021-11-07

jy-16 jtdb.sql

《jy-16-T-STORE——陈子枢总结》

2021-11-01

linux操作系统之安装服务器.html

jy-13-LINUX——Linux

2021-10-25

linux操作系统命令2.html

jy-13-LINUX——Linux

2021-10-25

linux操作系统1.html

jy-13-LINUX——Linux

2021-10-25

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

TA关注的人

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