Nicksxs's Blog
https://nicksxs.me/icon.png
What hurts more, the pain of hard work or the pain of regret?
2023-11-19T13:16:29.095Z
https://nicksxs.me/
Nicksxs
Hexo
Tomcat 系列篇九-介绍下 Tomcat 里的 ContainerBase
https://nicksxs.me/2023/11/19/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E4%B9%9D-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Tomcat-%E9%87%8C%E7%9A%84-ContainerBase/
2023-11-19T13:15:56.000Z
2023-11-19T13:16:29.095Z
<p>前面介绍过 Tomcat 的层次结构,</p>
<pre class="line-numbers language-markup" data-language="markup"><code class="language-markup"><span
记录下一次服务器迁移
https://nicksxs.me/2023/11/12/%E8%AE%B0%E5%BD%95%E4%B8%8B%E4%B8%80%E6%AC%A1%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%81%E7%A7%BB/
2023-11-12T12:19:00.000Z
2023-11-12T12:19:58.559Z
<p>因为服务器续费即使是这次双十一还是太贵了,之前在 tx 买的三年 2c4g 3m 的一台服务器,原来价格是三年 800+,现在续费三年要
Tomcat 系列篇八-介绍下 Tomcat 里的线程池用处
https://nicksxs.me/2023/11/05/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E5%85%AB-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Tomcat-%E9%87%8C%E7%9A%84%E7%BA%BF%E7%A8%8B%E6%B1%A0%E7%94%A8%E5%A4%84/
2023-11-05T11:38:56.000Z
2023-11-05T11:38:56.345Z
<p>线程池在 Tomcat 中也是非常重要的工具,这里我们简单介绍下 Tomcat 中的线程池,在 container 的启动过程中<br>org.apache.catalina.core.ContainerBase#initInternal</p>
<pre
Tomcat 系列篇七-介绍下 Filter 注册逻辑
https://nicksxs.me/2023/10/29/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E4%B8%83-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Filter-%E6%B3%A8%E5%86%8C%E9%80%BB%E8%BE%91/
2023-10-29T11:27:03.000Z
2023-10-29T11:27:03.414Z
<p>在<br>org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext#createWebServer 的时候会调用</p>
<pre class="line-numbers
Tomcat 系列篇六-介绍下 Lifecycle
https://nicksxs.me/2023/10/21/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E5%85%AD-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Lifecycle/
2023-10-21T12:30:32.000Z
2023-11-05T11:09:18.860Z
<p>Tomcat 中的很多组件都是继承了LifecycleBase这个抽象类的,包括之前讲过的 connector,server,service,context,host 这些组件都是,我们先来看下接口<br>主体是分为两部分,第一部分是定义状态时间,如
聊聊对 FunctionalInterface 注解的一些理解
https://nicksxs.me/2023/10/15/%E8%81%8A%E8%81%8A%E5%AF%B9-FunctionalInterface-%E6%B3%A8%E8%A7%A3%E7%9A%84%E4%B8%80%E4%BA%9B%E7%90%86%E8%A7%A3/
2023-10-15T12:13:42.000Z
2023-10-15T12:14:55.934Z
<p>在看 Tomcat 代码过程中碰到了一个小问题,可以用代码来举例讲一下<br>先定义一个简单的接口</p>
<pre class="line-numbers language-java" data-language="java"><code
Tomcat 系列篇五-介绍下 Service 启动过程
https://nicksxs.me/2023/10/07/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E5%9B%9B-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Service-%E5%90%AF%E5%8A%A8%E8%BF%87%E7%A8%8B/
2023-10-07T08:03:56.000Z
2023-10-07T08:04:46.198Z
<p>这里开始介绍下 Service 的启动过程,Tomcat 的启动过程中</p>
<pre class="line-numbers language-java" data-language="java"><code class="language-java"><span
Tomcat 系列篇四-介绍下 Valve 架构
https://nicksxs.me/2023/10/01/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E5%9B%9B-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Valve-%E6%9E%B6%E6%9E%84/
2023-10-01T11:54:06.000Z
2023-10-01T11:54:37.988Z
<p>valve 是 Tomcat 架构中比较重要的一个组成部分,<br>之前说到 </p>
<pre class="line-numbers language-java" data-language="java"><code
Tomcat 系列篇三-介绍下 Coyote
https://nicksxs.me/2023/09/24/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E4%B8%89-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Coyote/
2023-09-24T13:36:43.000Z
2023-09-24T13:36:43.402Z
<p>前面介绍了 connector,这里边还有个很重要的概念是 Coyote,真正将前面的 connector 跟后面的 container
Tomcat 系列篇二-介绍下整体架构
https://nicksxs.me/2023/09/16/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E4%BA%8C-%E4%BB%8B%E7%BB%8D%E4%B8%8B-Engine/
2023-09-16T07:20:57.000Z
2023-09-16T07:24:08.607Z
<p>前面那一篇感觉上来的有点突兀,还是应该按照架构去慢慢解析,所以这里回归下我们整体的 Tomcat 架构,这里我们通过一个 Tomcat 的配置文件来看看</p>
<pre class="line-numbers language-markup"
Tomcat 系列篇一-介绍下 connector
https://nicksxs.me/2023/09/10/Tomcat-%E7%B3%BB%E5%88%97%E7%AF%87%E4%B8%80-%E4%BB%8B%E7%BB%8D%E4%B8%8B-connector/
2023-09-10T13:30:22.000Z
2023-09-11T00:23:37.251Z
<p>tomcat的主体架构里,connector 作为核心的连接器<br><img
springboot 处理请求的小分支-跳转 & cookie
https://nicksxs.me/2023/09/03/springboot-%E5%A4%84%E7%90%86%E8%AF%B7%E6%B1%82%E7%9A%84%E5%B0%8F%E5%88%86%E6%94%AF-%E8%B7%B3%E8%BD%AC-cookie/
2023-09-03T13:29:12.000Z
2023-09-03T13:29:12.447Z
<p>首先是跳转,应该说设置状态,其中跳转是其中一个状态,</p>
<pre class="line-numbers language-java" data-language="java"><code class="language-java"><span
springboot 请求响应处理流程
https://nicksxs.me/2023/08/27/springboot-%E8%AF%B7%E6%B1%82%E5%93%8D%E5%BA%94%E5%A4%84%E7%90%86%E6%B5%81%E7%A8%8B/
2023-08-27T14:47:19.000Z
2023-09-05T09:19:33.385Z
<p>Tomcat 会把请求委托到<br><code>org.springframework.web.servlet.DispatcherServlet#doService</code> </p>
<pre class="line-numbers language-java"
springboot web server 启动逻辑
https://nicksxs.me/2023/08/20/springboot-web-server-%E5%90%AF%E5%8A%A8%E9%80%BB%E8%BE%91/
2023-08-20T09:38:56.000Z
2023-09-05T09:27:00.552Z
<p>springboot 的一个方便之处就是集成了 web server 进去,接着上一篇继续来看下这个 web server 的启动过程<br>这边是基于 springboot 的 2.2.9.RELEASE 版本,整个 springboot
springboot mappings 注册逻辑
https://nicksxs.me/2023/08/13/springboot-mappings-%E6%B3%A8%E5%86%8C%E9%80%BB%E8%BE%91/
2023-08-13T12:38:31.000Z
2023-08-13T12:39:57.156Z
<p>前面讲了怎么获取 mapping url,继续说下这些mappings 是怎么注册进去的,<br>来看下这个 <code>RequestMappingHandlerMapping</code> 的继承关系<br><img
springboot 获取 web 应用中所有的接口 url
https://nicksxs.me/2023/08/06/springboot-%E8%8E%B7%E5%8F%96-web-%E5%BA%94%E7%94%A8%E4%B8%AD%E6%89%80%E6%9C%89%E7%9A%84%E6%8E%A5%E5%8F%A3-url/
2023-08-06T13:16:36.000Z
2023-08-06T13:17:46.005Z
<p>最近有个小需求,要把我们一个 springboot 应用的 request mapping 给导出来,这么说已经是转化过了的,应该是要整理这个应用所有的接口路径,比如我有一个 api.baidu1.com
java 中发起 http 请求时证书问题解决记录
https://nicksxs.me/2023/07/29/java-%E4%B8%AD%E5%8F%91%E8%B5%B7-http-%E8%AF%B7%E6%B1%82%E6%97%B6%E8%AF%81%E4%B9%A6%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3%E8%AE%B0%E5%BD%95/
2023-07-29T07:43:53.000Z
2023-07-29T07:43:53.648Z
<p>再一次环境部署是发现了个问题,就是在请求微信 https 请求的时候,出现了个错误<br><code>No appropriate protocol (protocol is disabled or cipher suites are
《寻羊历险记》读后感
https://nicksxs.me/2023/07/23/%E3%80%8A%E5%AF%BB%E7%BE%8A%E5%8E%86%E9%99%A9%E8%AE%B0%E3%80%8B%E8%AF%BB%E5%90%8E%E6%84%9F/
2023-07-23T13:40:37.000Z
2023-07-23T13:40:37.203Z
<p> 最近本来是在读《舞舞舞》,然后看到有介绍说,这个跟《寻羊历险记》是有情节上的关联,所以就先去看了《寻羊历险记》,《寻羊历险记》也是村上春树的第一本成规模的长篇小说,也可以认为是《舞舞舞》的前篇。<br>
关于 npe 的一个小记忆点
https://nicksxs.me/2023/07/16/%E5%85%B3%E4%BA%8E-npe-%E7%9A%84%E4%B8%80%E4%B8%AA%E5%B0%8F%E8%AE%B0%E5%BF%86%E7%82%B9/
2023-07-16T13:29:08.000Z
2023-07-16T13:29:08.754Z
<p>Java 中最常见的一类问题或者说异常就是
headscale 添加节点
https://nicksxs.me/2023/07/09/headscale-%E6%B7%BB%E5%8A%A0%E8%8A%82%E7%82%B9/
2023-07-09T14:18:34.000Z
2023-07-09T14:18:34.828Z
<h1 id="添加节点"><a href="#添加节点" class="headerlink" title="添加节点"></a>添加节点</h1><p>添加节点非常简单,比如 app store 或者官网可以下载 mac 的安装包,</p>
<p>安装包直接下载可以在<a