<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Mr_Punk的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Mr_Punk</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Mr_Punk]]></copyright><item><title><![CDATA[IDEA2021.2版SpringBoot开启devtools（热部署）功能]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/127584271</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/127584271</guid><author>Mr_Punk</author><pubDate>Sat, 29 Oct 2022 12:05:11 +0800</pubDate><description><![CDATA[在此说明一下，因为IDEA的版本不一样，所有更改的配置也不一样，所有本文章仅仅针对IDEA2021.2版本。]]></description><category></category></item><item><title><![CDATA[Spring Boot 2.7 开始官方不推荐使用spring.factories了]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/127501004</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/127501004</guid><author>Mr_Punk</author><pubDate>Mon, 24 Oct 2022 21:47:02 +0800</pubDate><description><![CDATA[了解Spring Boot的用户都知道，当我们要引入某个功能的时候，只需要在pom.xml配置文件中直接引入对应的starter就可以了。

了解starter原理的用户都知道，Spring Boot利用spring-boot-autoconfigure.jar包下的META-INF/spring.factories这个文件来指定要加载的默认配置。这样当Spring Boot的启动类在启动的时候，就会根据引入的各种starter中的/META-INF/spring.factories文件所指定的配置类去加载]]></description><category></category></item><item><title><![CDATA[spring-boot-starter-actuator的简单理解及应用]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/127477279</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/127477279</guid><author>Mr_Punk</author><pubDate>Sun, 23 Oct 2022 17:27:36 +0800</pubDate><description><![CDATA[所有的应用开发完成之后，其最终目的都是为了上线运行，SpringBoot应用也不例外，而在应用运行的漫长生命周期内，为了保障其可以持续稳定的服务，我们通常需要对其进行监控，从而可以了解应用的运行状态，并根据情况决定是否需要对其运行状态进行调整。

顺应需求，SpringBoot 框架提供了 spring-boot-starter-actuator 自动配置模块用于支持 SpringBoot 应用的监控。Actuator 这个词即使翻译过来也不是很容易理解（比如翻译成“制动器；传动装置；执行]]></description><category></category></item><item><title><![CDATA[Node.js到底是什么东西 ? 简单易懂]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/127361182</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/127361182</guid><author>Mr_Punk</author><pubDate>Mon, 17 Oct 2022 13:13:57 +0800</pubDate><description><![CDATA[​
什么是JavaScript?

JavaScript 是一种语言，JavaScript的标准是 ECMAScript。

什么是 ECMAScript？

我们说的 ES5， ES6……就是指的 ECMAScript 不同标准。ECMAScript 只是一个标准，而JavaScript是对这个标准的实现。

什么是Node.js？

原文：


翻译：

Node.js 是基于 Chrome 的 V8 JavaScript 引擎的 JavaScript 运行环境。Node.js 采用事件驱动、非堵塞 I]]></description><category></category></item><item><title><![CDATA[thymeleaf模板引擎，使用${@XXX}能拿到Spring中的bean]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/126980831</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/126980831</guid><author>Mr_Punk</author><pubDate>Wed, 21 Sep 2022 21:08:44 +0800</pubDate><description><![CDATA[thymeleaf模板引擎，使用${@XXX}能拿到Spring中的bean]]></description><category></category></item><item><title><![CDATA[thymeleaf常用的工具对象,通过${#XXX}获取]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/126980504</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/126980504</guid><author>Mr_Punk</author><pubDate>Wed, 21 Sep 2022 20:57:16 +0800</pubDate><description><![CDATA[thymeleaf常用的工具对象,通过${#XXX}获取]]></description><category></category></item><item><title><![CDATA[jQuery的ajax方法里的success方法第一次不执行，第二次才执行的问题]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/126674287</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/126674287</guid><author>Mr_Punk</author><pubDate>Sat, 03 Sep 2022 10:33:00 +0800</pubDate><description><![CDATA[在表单中的button默认类型是submit，如果你触发ajax请求的是button，而你的button又在表单中，那么在你发送请求后，在执行success回调方法之前会提交表单，如果我们好好了解一下表单和ajax请求区别的话，可以知道表单是要刷新整个界面的，所以当你发送请求后，会提交表单，这时候你的界面就不是你之前的界面了，所以我们要让他发完请求后不要提交表单，也就是用return false终止。注意最后一行代码，即return false;这条代码一定要加上，为了禁止提交表单。]]></description><category></category></item><item><title><![CDATA[观察者模式 vs 发布订阅模式]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/124261247</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/124261247</guid><author>Mr_Punk</author><pubDate>Mon, 18 Apr 2022 22:37:38 +0800</pubDate><description><![CDATA[观察者模式

观察者模式定义了对象间的一种一对多的依赖关系，当一个对象的状态发生改变时，所有依赖于它的对象都将得到通知，并自动更新。观察者模式属于行为型模式，行为型模式关注的是对象之间的通讯，观察者模式就是观察者和被观察者之间的通讯。

观察者模式要完成整个流程需要两个角色：目标 和 观察者

简单流程如下：

目标&lt;=&gt;观察者，观察者观察目标（监听目标）-&gt; 目标发生变化-&gt; 目标主动通知观察者。

发布订阅模式

大概很多人都和我一样，觉得发布订阅模式里的Publisher，就是]]></description><category></category></item><item><title><![CDATA[正向代理和反向代理的区别]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/124200937</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/124200937</guid><author>Mr_Punk</author><pubDate>Fri, 15 Apr 2022 18:11:11 +0800</pubDate><description><![CDATA[正向代理和反向代理的区别

虽然正向代理服务器和反向代理服务器所处的位置都是客户端和真实服务器之间，所做的事情也都是把客户端的请求转发给服务器，再把服务器的响应转发给客户端，但是二者之间还是有一定的差异的。

1、正向代理其实是客户端的代理，帮助客户端访问其无法访问的服务器资源。反向代理则是服务器的代理，帮助服务器做负载均衡，安全防护等。

2、正向代理一般是客户端架设的，比如在自己的机器上安装一个代理软件。而反向代理一般是服务器架设的，比如在自己的机器集群中部署一个反向代理服务器。

3、正向代理中，服务]]></description><category></category></item><item><title><![CDATA[技术白话：分布式和集群，一看就明白]]></title><link>https://blog.youkuaiyun.com/Mr_Punk/article/details/124087228</link><guid>https://blog.youkuaiyun.com/Mr_Punk/article/details/124087228</guid><author>Mr_Punk</author><pubDate>Sun, 10 Apr 2022 22:37:06 +0800</pubDate><description><![CDATA[1、分布式

小明的公司有3个系统：系统A、系统B和系统C ，这三个系统所做的业务不同，被部署在3个独立的机器上运行， 他们之间互相调用（当然是跨域网络的）， 通力合作完成公司的业务流程。



将不同的业务分布在不同的地方， 这就构成了一个分布式的系统，现在问题来了， 系统A是整个分布式系统的“脸面”， 用户直接访问，用户量访问大的时候要么是速度巨慢，要么直接挂掉， 怎么办？

由于系统A只有一份， 所以会引起单点失败。

2、集群（Cluster）

小明的公司不差钱，就多买几台机器吧， 小明把系统A.]]></description><category></category></item></channel></rss>