nginx-location路由匹配
摘要:一、语法规则一、语法规则 符号 含义 = 开头表示精确匹配 ^~ 开头表示 uri 以某个常规字符串开头,理解为匹配 url 路径即可。nginx 不对 url 做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格) ~ 开头表示区分大小写的正则
阅读全文
探针
摘要:kubernetes 提供了三种探针(支持exec、tcp和http方式)来探测容器的状态: LivenessProbe: 容器存活性检查,用于判断容器是否健康,告诉 kubelet 一个容器什么时候处于不健康的状态。如果 LivenessProbe 探针探测到容器不健康,则 kubelet 将删除
阅读全文
metrics监控
摘要:依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> 在 application.properti
阅读全文
ApplicationContextAware使用场景:获取Bean
摘要:定义 @Component public class ApplicationContextHelper implements ApplicationContextAware { private static ApplicationContext _context; @Autowired @Prima
阅读全文
HandlerMethodArgumentResolver使用场景:自定义参数解析,如认证
摘要:依赖 <dependency> <groupId>javax.inject</groupId> <artifactId>javax.inject</artifactId> <version>1</version> </dependency> 添加拦截: HandlerInterceptorAdapt
阅读全文
多线程处理
摘要:@Component public class OkThreadPool { private static final Integer CORE_POOL_SIZE = 20; private static final Integer MAX_POOL_SIZE = 40; private stat
阅读全文
处理一对多关系
摘要:Map<String, PlantBatchDO> plantingBatchMap = PlantingBatchDOList.stream().collect(Collectors.toMap(it -> it.getBatchId(), it -> it));
阅读全文
分组
摘要:Map<Integer, List<TraceFactorDO>> traceFactorMappers = traceFactorDOS.stream().collect(Collectors.groupingBy(TraceFactorDO::getValueFormat));
阅读全文
判断null抛异常
摘要:Optional.ofNullable(queryTraceDTO.getGenerated()).orElseThrow(() -> new RuntimeException(FCodes.REQUEST_PARAM_ERROR));
阅读全文
去重
摘要:Map<String, TraceDTO> filterTraceDTOMap = traceDTOList.stream() .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comp
阅读全文
排序
摘要:// 排序 return dtoList.stream().sorted(Comparator.comparing(TracePlanDTO::getEndDate)).collect(Collectors.toList());
阅读全文
Object多层判空
摘要:dto.setBaseName(Optional.ofNullable(baseDO).map(it -> it.getBaseName()).orElse(""));
阅读全文
查看jvm占用
摘要:-Xloggc:gc.log -XX:+PrintGCTimeStamps -XX:+PrintGCDetails
阅读全文
Jmx远程监控CPU,内存
摘要:不带密码 vim jmxremote.access ##on linux monitorRole readonly controlRole readwrite 带密码 vim jmxremote.password ##on linux monitorRoleUser jmx controlRoleU
阅读全文
内存过高排查
摘要:[root@dev-209 ~]# top -c top - 11:05:49 up 30 days, 23:21, 4 users, load average: 2.29, 2.23, 1.97 Tasks: 170 total, 3 running, 162 sleeping, 5 stoppe
阅读全文
CPU利用率过高
摘要:## 1. 首先显示线程列表 ps -mp ${pid} -o THREAD,tid,time ## 2. 其次将需要的线程ID转换为16进制格式: printf "%x\n" ${tid} ## 3. 最后打印线程的堆栈信息: jstack ${pid} |grep ${tid} -A 30
阅读全文
调用InitializingBean之后想要销毁,使用DisposableBean
摘要:java @Log4j2 @Component public class Neo4jStore implements InitializingBean, DisposableBean{ private GraphDatabaseService graphDb; private final BoltC
阅读全文
Bean实体启动初始化顺序&整体项目启动顺序
摘要:Bean实体启动初始化顺序 Construct > @Autowired(依赖注入) > @postConstruct > InitializingBean 整体项目启动顺序 CommandLineRunner & ApplicationRunner > ApplicationListener 参考
阅读全文
CommandLineRunner等的使用场景: 应用层加载json,xml,redis等数据
摘要:java @Component @Order(value = 1) public class RoleStartRunner implements CommandLineRunner { private static AppDataProcessor processor = new AppDataP
阅读全文
mapper.xml-where应用场景: curd-条件语句
摘要:mapper.java int deleteRelationsByRoleids(@Param("roleIds") Integer[] roleIds); mapper.xml <delete id="deleteRelationsByRoleids"> DELETE FROM user_role
阅读全文
mapper.xml-if应用场景: curd-传参判空和集合判断元素个数
摘要:mapper.java int deleteRelationsByRoleids(@Param("roleIds") Integer[] roleIds); mapper.xml <delete id="deleteRelationsByRoleids"> DELETE FROM user_role
阅读全文
mapper.xml-foreach应用场景: curd-批量处理, 拼接等
摘要:mapper.java int deleteRelationsByRoleids(@Param("roleids") Integer[] roleids); mapper.xml <delete id="deleteRelationsByRoleids"> DELETE FROM user_role
阅读全文