自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小兔子的博客

奔跑中的兔子

  • 博客(34)
  • 资源 (9)
  • 收藏
  • 关注

原创 带你轻松玩转DevOps

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具。大多数互联网公司都采用Jenkins配合GitLab、Docker、Kubernetes 作为实现 devops的核心工具。Jenkins最强大的就在于插件,Jenkins官方提供了大量的插件库,来自动化CI/CD过程中的各种琐碎功能。Jenkins最主要的工作就是将GitLab上可的工程代码拉取、构建、发布到测试环境或是生产环境。一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布到生产环境。

2024-07-17 17:43:13 654 3

原创 Java网络编程

RPC(Remote Procedure Call ——远程过程调用),它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络的技术。服务消费方(client)以本地调用方式调用客户端存根;什么叫客户端存根?就是远程方法在本地的模拟对象,一样的也有方法名,也有方法参数,client stub接收到调用后负责将方法名、方法的参数等包装,并将包装后的信息通过网络发送到服务端;服务端收到消息后,交给代理存根在服务器的部分后进行解码为实际的方法名和参数;

2024-07-16 22:39:03 986

原创 Spring WebFlux高阶实战

根据前面的代码,第一个发出的事件必须是与订阅相关的事件,紧跟其后的事件必须是 foo 和bar 字符串。最后, StepVerifier#expectCompletion 定义终止信号的存在。在此例中,必须是 Subscriber#onComplete 的调用,或者成功完成给定的 Flux。要执行验证,或者说对创建流进行订阅,就必须调用 .verify() 方法。verify() 是一个阻塞调用,它阻塞执行,直到流发出所有预期的事件。

2024-07-14 22:56:02 684

原创 Spring webflux基础核心技术

一、 用操作符转换响应式流1 、 映射响应式流元素转换序列的最自然方式是将每个元素映射到一个新值。Flux 和 Mono 给出了 map 操作符,具有 map(Function<T,R>) 签名的方法可用于逐个处理元素。当操作符将元素的类型从 T 转变为 R 时,整个序列的类型将改变。Flux.map() 的弹珠图index 操作符可用于枚举序列中的元素。该方法具有以下签名: Flux<Tuple2<Long,T >> index() 。time

2024-07-14 22:23:14 1089

原创 Argo CD入门、实战指南

Argo CD 被实现为 Kubernetes 控制器,它持续监控正在运行的应用程序并将当前的实时状态与所需的目标状态(如 Git 存储库中指定)进行比较。已部署的应用程序的实时状态与目标状态有偏差,则被视为已部署应用程序OutOfSync。Argo CD 报告并可视化差异,同时提供将实时状态自动或手动同步回所需目标状态的功能。对 Git 存储库中所需目标状态所做的任何修改都可以自动应用并反映在指定的目标环境中。

2024-07-09 16:21:06 1214

原创 Spring6.0新特性详解

JIT(Just-in-time) 动态编译,即时编译,也就是边运行边编译,也就是在程序运行时,动态生成代码,启动比较慢,编译时需要占用运行时的资源。

2024-07-06 19:53:32 1033

原创 Spring源码之事务实现分析

然后我们在上面的中看到了这个对象,通过字面含义是事务定义。我们来看看结构。也就是中定义了事务的传播属性和隔离级别,然后来看看具体的体系结构DefaultTransactionDefinition:是事务定义的默认实现DefaultTransactionAttribute:扩展了TransactionAttribute中的属性的实现@Transactional:该组件就会被解析加载为对应的对象。

2024-06-29 16:14:41 626 1

原创 Spring源码之AOP分析

本文我们开始讲解Spring中的AOP原理和源码,我们前面手写了AOP的实现,了解和自己实现AOP应该要具备的内容,我们先回顾下,这对我们理解Spring的AOP是非常有帮助的。

2024-06-29 16:06:19 826

原创 Spring源码之DI实现

本文中我们重点来分析下Spring源码中Bean初始化过程中的DI实现——属性的依赖注入。

2024-06-29 15:51:11 636

原创 Spring源码之Bean实例化

首先我们来看看BeanDefinition的存放位置。因为Bean对象的实例化肯定是BeanFactory基于对应的BeanDefinition的定义来实现的,所以在这个过程中BeanDefinition是非常重要的,前面的课程讲解已经完成了BeanDefinition的定义。同时根据前面refresh方法的讲解我们知道了BeanFactory的具体实现是.所以BeanDefinition的相关信息是存储在的相关属性中的。

2024-06-29 15:45:51 413

原创 Spring源码之初始化分析

接下来我们详细分析下refresh方法的作用。

2024-06-26 23:45:21 449

原创 Spring源码之ApplicationContext

AbstractBeanDefinition我们可以称之为BeanDefinition的模板类。结构我们上面其实有梳理通过上面我们可以看到AbstractBeanDefinition 具备了 Bean元数据的获取和属性相关的操作。同时AbstractBeanDefinition的继承结构它主要用在spring内部的bean定义、把不同类型的bean定义合并成RootBeanDefinition(getMergedLocalBeanDefinition方法)。

2024-06-26 23:41:15 628

原创 Spring源码之Bean定义配置化

xml方式的流程如下:我们可以自己写一个解析器,专门来解析对应的xml文件需要定义的注解类要不要配置为Bean @ComponentBeanName Scope和Primary @Scope @Primary工厂方法 工厂Bean @Bean初始化方法、销毁方法 @PostConstruct @PreDestory构造参数依赖 @Autowired @Value属性依赖 @Qualifier。

2024-06-26 23:38:48 592

原创 Spring源码之手写AOP

Spring源码之手写AOP

2024-06-26 01:12:15 651

原创 Docker、Containerd添加代理

Docker、Containerd配置代理

2024-06-25 15:58:46 789

原创 Spring源码之手写DI

DI(Dependency injection)依赖注入。对象之间的依赖由容器在运行期决定,即容器动态的将某个依赖注入到对象之中。说直白点就是给Bean对象的成员变量赋值。在这里我们就需要明白几个问题。

2024-06-23 21:42:39 609

原创 Spring源码之手写IOC容器

手写Spring IOC容器 源码

2024-06-23 00:14:41 1135

原创 JDK21特性

解决大型互联网应用中的C10K、C10M问题,在JDK21中,从JVM层面提供了更优解。

2024-06-22 00:04:36 935

原创 JDK19特性

JDK19 新特性

2024-06-21 23:22:17 906

原创 JDK18特性

Java 18 在 2022 年 3 月 22 日正式发布,Java 18 不是一个长期支持版本,这次更新共带来 9 个新功能。

2024-06-21 22:53:46 933

原创 JDK17特性

JDK 16 刚发布半年(2021/03/16),JDK 17 又如期而至(2021/09/14)

2024-06-20 23:34:26 673

原创 JDK16特性

2021年3月16日正式发布,一共更新了17JEP

2024-06-20 23:04:15 833

原创 JDK15特性

就是不能直接被其他class的二进制代码使用的class. 主要被一些框架用来生成运行时类,但是这些类不能被用来直接使用的,是通过反射来调用的比如JDK8中引入的lambda表达式,编译时不会将lambda表达式转换为专门的类,而是在运行时将相应的字节码动态生成相应的类对象另外使用动态代理也可以为某些类生成新的动态类。

2024-06-17 23:08:27 976

原创 JDK14特性

Java Flight Recorder(JFR)是JVM的诊断和性能分析工具。JAVA14之前只能做离线的分析,现在可以做实时的持续监视它可以收集有关JVM以及在其上运行的Java应用程序的数据。JFR是集成到JVM中的,所以JFR对JVM的性能影响非常小,我们可以放心的使用它。一般来说,在使用默认配置的时候,性能影响要小于1%。JFR的历史很久远了。早在Oracle2008年收购BEA的时候就有了。JFR一般和JMC(Java Mission Control)协同工作。

2024-06-17 22:51:05 1101

原创 JDK13特性

2019年9月17日,国际知名的OpenJDK开源社区发布了Java编程语言环境的最新版本OpenJDK13。Features:总共有5个新的JEP(JDK Enhancement Proposals):Features:350:Dynamic CDS Archives:动态CDS档案351:ZGC: Uncommit Unused Memory:ZGC:取消使用未使用的内存353:Reimplement the Legacy Socket API:重新实现旧版套接字API。

2024-06-16 23:01:44 1028

原创 JDK12特性

上面介绍了 Java 12 中增强了 G1 垃圾收集器关于混合收集集合的处理策略,这节主要介绍在 Java 12 中同时也对 G1垃圾回收器进行了改进,使其能够在空闲时自动将 Java 堆内存返还给操作系统,这也是 Java 12 中的另外一项重大改进。目前 Java 11 版本中包含的 G1 垃圾收集器暂时无法及时将已提交的 Java 堆内存返回给操作系统。为什么呢?G1目前只有在full GC或者concurrent cycle(并发处理周期)的时候才会归还内存,由于这两个场景都是G1极力避免的,

2024-06-16 22:44:25 903

原创 JDK11特性

2018年9月26日,Oracle官方发布JAVA11.这是JAVA大版本周期变化后的第一个长期支持版本,非常值得关注.最新发布的JAVA11将带来ZGC HttpClient等重要特性,一共17个需要我们关注的JEP,参考文档具体的特性介绍。

2024-06-16 22:34:01 1006

原创 JDK10特性

2018年3月21日, Oracle官方宣布JAVA10正式发布JAVA9和java10 都不是 LTS (Long-Term-Support)版本.和过去的JAVA大版本升级不同,这两个只有半年左右的开发和维护时间. 而JAVA11 也是就是18.9,才是JAVA之后的第一个长期支持版本JAVA10 一共定义了109个新特性,其中包含JEP,对程序员来说,真正的新特性也就一个,还有一些新的API和JVM规范以及JAVA语言规范上的改动.

2024-06-16 22:29:32 788

原创 JDK8新特性

JDK8新特性​ Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机,Java 仍是企业和开发人员的首选开发平台内容介绍了解Java发展史Lambda表达式接口的增强函数式接口方法引用Stream APIOptional新时间日期API其他新特性一、Java发展历史1. Java的发展历史​ Sun公司在1991年成立了一个称为绿色计划( Gre

2024-06-16 22:17:39 1450

原创 修改Kubernetes集群Node主机名

修改Kubernetes集群Node主机名

2024-06-14 16:56:44 371

原创 Kubernetes集群UI及主机资源监控

Kubernetes集群UI及主机资源监控通过dashboard能够直观了解Kubernetes集群中运行的资源对象,可以直接管理(创建、删除、重启等操作)资源对象

2024-06-14 16:54:43 881

原创 Kubernetes高可用集群二进制部署(Runtime Docker)

Kubernetes高可用集群二进制部署(Runtime Docker)Kubernetes(简称为:k8s)是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了资源调度、部署管理、服务发现、扩容缩容、监控,维护等一整套功能,努力成为跨主机集群的自动部署、扩展以及运行应用程序容器的平台。 它支持一系列容器工具, 包括Docker、Containerd等。

2024-06-14 16:46:55 1364

原创 网络模型及TCP连接过程

三次握手中有一个第二次握手,服务端向客户端应答请求,应答请求是需要客户端IP的,攻击者就伪造这个IP,往服务器端疯狂的发送第一次握手的内容,由于第一次握手中的客户端IP地址是伪造的,在服务端忙于进行第二次握手时,便不可能得到客户端的响应,直到超时,最终导致服务器端资源耗尽而死机。这种方法不停监视所有的连接,包括三次握手的,还有握手一次的,反正是所有的,当达到一定(与)阈值时拆除这些连接,从而释放系统资源。这种方法对于所有的连接一视同仁,不管是正常的还是攻击的,所以这种方式不推荐。

2024-02-27 09:54:00 854

原创 揭秘MySQL Undo日志

FIL_PAGE_UNDO_LOG页面我们前边唠叨表空间的时候说过,表空间其实是由许许多多的页面构成的,页面默认大小为16KB。

2024-02-22 01:46:01 765

bootstrap_ace_admin_v1.4.0

1、兼容BootStrap,兼容Jquery UI。所以可以用bootstrap和jqueryui的功能。当然还有jquery了。这太省心了! 2、图标使用font awesome 3.2,可以使用字体图标,这就免去了,查找png图标的工作。 3、表格可以用bootstrap的表格,也可以用jqueryui的表格,也可以用jqgrid的表格,jqgrid我用的还是比较多,功能很强大。 4、图表的话,我看ace里有jquery.flot 和?jquery.easy-pie-chart。不过我自己使用的百度的 Echarts,这个功能比较强大。 5、还有一个比较不错的js插件,bootbox.js这个 做提示框我很喜欢! 6、日历插件,有daterangepicker.min.js等,不过我用的My97DatePicker这个也很赞。 7、另外ace admin还预设了4中样式效果,根据自己喜好进行选择;固定页面中一些元素,宽屏窄屏等等。也比较不错。

2017-09-26

bootstrap-admin-ace-v1.4.0

基于Bootstrap3,拥有强大的功能组件以及UI组件,基本能满足后台管理系统的需求,而且能根据不同设备适配显示,而且还有四个主题可以切换……(需要使用容器发布,否则可能看不到部分样式)

2017-09-26

linux shell知识集锦

如果说会linux,却不熟悉shell,请别再说你会linux!“shell脚本学习指南”可以带你走进linux的内心深处,让你领会到linux的强大之处,并从此深爱上她!

2015-06-06

ORACLE从入门到精通+实战版+秦靖+机械工业出版社.pdf

《Oracle从入门到精通》特色:基本概念→语法讲解→示例讲解→实践练习→项目,322个实例、4个项目案例、71个技巧、116个练习题,超值DVD-ROM,11小时多媒体语音教学视频,超值赠送SQL Server学习视频。《Oracle从入门到精通(视频版)》习题、《Oracle从入门到精通(视频版)》教学PPT。“程序员书库”是专门为学习编程的朋友们精心打造的一套图书。本选择了编程入门人员必学的一些编程语言和技术.讲解时遵循“基本概念-语法讲解-示例讲解-实践练习-项目”的模式,由浅入深,层层深入,可以指引读者快速掌握各种编程技术。本专门配有配套的多媒体语音教学视频,帮助读者更加高效、直观地学习。

2014-10-17

java class 文件反编译工具-简单实用

一款简单实用的java class文件反编译工具,让开发人员不再因为jar包中class文件源码而烦恼!

2014-10-14

subSVN.rar

用于在win7上搭建svn服务器,我已经搭建过多次都没问题!希望可以帮到想在win7上搭建svn服务器的朋友!

2014-08-08

Delete SVN Folders.reg

从svn服务器上下载的资源中都带有.svn文件(是用来记录文件状态的文件),有了它,你再也不用手动的去删除这些文件了,只需要双击运行这个文件,然后在需要清楚svn记录的文件夹上点击鼠标右键,选择“delete svn”,就可以删除该文件夹中所有的svn文件

2014-08-08

空空如也

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

TA关注的人

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