
为何不推荐使用@Async的默认线程池配置-带你深度阅读Spring Async源码
最近看了一篇关于线程池的文章,突然想起来很久以前有文章说过要慎用Spring的 `Async`注解,可能会发生OOM,猜测应该是 `Async`注解默认使用的线程池可能最大线程数太大,或者使用的是无界队列,会导致线程无限增加。 今天刚好有空,就来阅读一下 `Aysnc`的源码验证一下我的猜想。 准备 {#准备} -------- 为了不被其他代码所干扰,我创建了一个全新的...
最近看了一篇关于线程池的文章,突然想起来很久以前有文章说过要慎用Spring的 `Async`注解,可能会发生OOM,猜测应该是 `Async`注解默认使用的线程池可能最大线程数太大,或者使用的是无界队列,会导致线程无限增加。 今天刚好有空,就来阅读一下 `Aysnc`的源码验证一下我的猜想。 准备 {#准备} -------- 为了不被其他代码所干扰,我创建了一个全新的...
格式 {#格式} -------- 打开文本编辑器(如vi或vim ),创建一个后缀名为 ` sh ` 的文件;开头第一行提示Shell使用的解释器类型,如 ` #!/bin/bash ` ,为保证解析正确建议写上。 例如编写一个名为 ` test.sh ` 的脚本: |-------------|-------------------------------------...
为什么接口要使用多个版本 {#为什么接口要使用多个版本} ---------------------------- 一般来说,Restful API接口是提供给其它模块,系统或是其他公司使用,不能随意频繁的变更。然而,需求和业务不断变化,接口和参数也会发生相应的变化。如果直接对原来的接口进行修改,势必会影响线其他系统的正常运行。这就必须对api 接口进行有效的版本控制。 有...
<h2>条件测试语句 {#条件测试语句}</h2> <h3>基本语法 {#基本语法}</h3> <p>(1) <code>test <条件></code></p> <p>(2) <code>[ <条件> ...
<h2>数组的类型 {#数组的类型}</h2> <h3>普通数组 {#普通数组}</h3> <ul> <li>索引:通常是从0开始的整数,表示数组中的位置 <ul> <li>例如,第一个元素的索引是0,第二个元素的索引是1,依此类推</li> </ul> &l...
<h2>别名 {#别名}</h2> <h3>格式 {#格式}</h3> <p>在Linux中,别名的命令为 <code>alias</code> ,其使用方法为: <code>alias 别名="表达式"</code></p>...
使用Spring框架的优点:简化Java开发 {#使用spring框架的优点简化java开发} =============================================== Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但Spring不仅仅局限于服务器端开发,任何Java应...
<h3>1. Element plus组件 {#1.-element-plus%E7%BB%84%E4%BB%B6}</h3> <p>使用Element plus的Menu 菜单和Container 布局容器。 <a href="https://element-plus.org/zh-CN/component/menu.htm...
<h3>Token {#token}</h3> <p>Token是一种广泛使用的身份验证机制,它代表了一种凭证,通常用于在客户端和服务端之间传递身份验证信息。通常在http请求头中包含token用以验证身份,并在请求结束后返回一个新的token并交由客户端保存。</p> <br /> <h3>使用JWT生成...
<p>Vue中响应式(拿reactive举例)实现其实是一系列的依赖收集,使用Proxy对传入的对象进行代理监听,返回处理好的代理对象。</p> <pre><code class="language-javascript">//对象的响应式原理 class Depend { static activeR...