摘要:
1、正确声明线程池 线程池必须手动通过 ThreadPoolExecutor 的构造函数来声明,避免使用Executors 类创建线程池,会有 OOM 风险。 Executors 返回线程池对象的弊端如下: - FixedThreadPool 和 SingleThreadExecutor :使用的是 阅读全文
摘要:
GitHub[itexpdf] https://github.com/itext/itextpdf 第一步:编辑模板 使用可以编辑表单的pdf编辑器编辑pdf表单,效果如下。(我用的是迅捷pdf编辑器。) 第二步:使用iTextPdf设置表单属性值,支持多种类型,可自主研究 简单代码记录如下: ①导 阅读全文
摘要:
全文转载自姐夫聊架构-Redis缓存设计与优化 Redis缓存设计与优化 多级缓存架构 缓存设计 缓存穿透 缓存穿透 是指查询一个缓存和数据库中都没有的,根本不存在的数据数据,导致所有的请求都落到数据库上,造成数据库短时间内承受大量请求而崩掉 造成缓存穿透的基本原因有两个: 自身业务代码或者数据 阅读全文
摘要:
代码托管地址:https://gitee.com/ZomiCC/code/tree/master/exception ##非统一异常处理 A代码:try...catch... B代码:try...catch... C代码:try...catch... D代码:try...catch... ##统一异 阅读全文
摘要:
此文代码托管地址: https://gitee.com/ZomiCC/code/tree/master/validate 我们平时都会碰到很多通用校验的场景:比如字段非空校验、字段长度校验等等。如下所示: @Null:被注释的元素必须为null @NotNull:被注释的元素不能为null @Ass 阅读全文
摘要:
螺丝厂 你有没有遇到过像螺丝厂一样的流水线式事情。像下面这样,A-B-C-D-E-F...... 那这种的,用代码如何实现呢?我们很容易会想到使用责任链设计模式去实现。 什么是责任链 责任链模式是一种行为设计模式, 允许你将请求沿着处理者链进行发送。收到请求后, 每个处理者均可对请求进行处理, 或将 阅读全文
摘要:
来源 | https://www.cnblogs.com/littlecharacter/p/9342129.html 一、数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至 阅读全文
摘要:
一、安装准备 1)修改配置 修改runserver文件: vi runserver.sh 修改为如下所示: 修改runbroker文件: vi runbroker.sh 修改为: 2)启动rocketmq 启动nameserver # 前台启动 ./mqnamesrv # 后台启动 nohup ./ 阅读全文
摘要:
[TOC]## 一、Docker的核心概念docker 包含四个基本概念: 镜像(Image) 容器(Container) 仓库注册中心(Registry) 仓库(Repository) 理解了这四个概念,就理解了 docker 的整个生命周期了! ![1597733250429](https://img2020.cnblogs.com/blog/1923305/20200... 阅读全文
摘要:
[TOC]### 引言三张图引出logstash。![1597665100114](https://img2020.cnblogs.com/blog/1923305/202008/1923305-20200825104024692-1246149486.png)![1597665149249](https://img2020.cnblogs.com/blog/1923305/202008/1923... 阅读全文