Activiti DB中各个表的作用 Activiti的后台是有数据库的支持,所有的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。 用途也和服务的API对应。 ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。 AC ...
分类:
编程语言 时间:
2021-01-15 12:12:43
阅读次数:
0
JDK就能实现动态代理,为什么还需要CGLib动态代理 CGLib动态代理不要求委托类实现接口,没有接口照样能实现代理业务 CGLib动态代理能够实现基于方法级别的拦截处理 CGLib动态代理执行方法,不是使用反射执行Method.invoke() CGLib可以针对同一个委托类的不同方法可以使用不 ...
分类:
其他好文 时间:
2021-01-15 12:06:49
阅读次数:
0
数据库瓶颈 不管是IO瓶颈还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载的活跃连接数的阈值。在业务service来看, 就是可用数据库连接少甚至无连接可用,接下来就可以想象了(并发量、吞吐量、崩溃)。 IO瓶颈 第一种:磁盘读IO瓶颈,热点数据太多,数据库缓存放不下 ...
分类:
其他好文 时间:
2021-01-15 11:48:39
阅读次数:
0
神器的Limit 1 如果明知道只会有一条返回数据,则可避免全表扫描,在第一次找到数据时就返回 like语句的优化 like语句一般业务要求都是 '%关键字%'这种形式,但是依然要思考能否考虑使用右模糊的方式去替代产品的要求 批量插入 INSERT into person(name,age) val ...
分类:
数据库 时间:
2021-01-14 10:58:08
阅读次数:
0
对比监控出现性能毛刺时间点的GC日志和业务日志,发现JVM停顿了较长时间,且停顿时GC日志中有大量的“Allocation Stall”日志。 原因就是堆内存被占满,导致部分线程阻塞,如下图中的 High used已经达到100% 解决办法: 1.最直接有效的办法就是增加堆大小 2.增加jvm参数 ...
分类:
其他好文 时间:
2021-01-14 10:54:13
阅读次数:
0
1、业务隔离 不同的业务使用不同的redis集群,或者协议使用redis的不同db。 2、良好的Redis Key的设计 格式:业务标识:系统名称:模块名称:关键词简写 比如:保险:用户管理:用户申请:手机号 Redis Key:bx:um:reg:mobile 以上在实际的生产环境中,应该同时存在 ...
分类:
其他好文 时间:
2021-01-14 10:52:46
阅读次数:
0
AOP 什么是AOP ? 面向切面编程。通过预编译的方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生泛型,利用AOP可以对业务逻辑的各个部分进行隔离,从而使业务逻辑各个部分的耦合度降低,提 ...
分类:
编程语言 时间:
2021-01-14 10:40:40
阅读次数:
0
前言 整体来看,kube-state-metrics是为prometheus采集k8s资源数据的exporter。prometheus 的exporter任务是将和业务相关的数据指标转换成prometheus的数据模型,当然prometheus 为这种转换提供了方法。 kube-state-metr ...
分类:
其他好文 时间:
2021-01-13 11:20:24
阅读次数:
0
“单一职责”模式 在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任。 典型模式? Decorator? Bridge 代码示例: 1 //业务操作 2 class Stream{ 3 public: 4 vir ...
分类:
其他好文 时间:
2021-01-12 11:21:21
阅读次数:
0
*存储过程* *概念:* 之前我们编写的plsql程序可以进行表的操作,判断、循环逻辑处理的工作,但无法重复调用。 可以理解之前的代码全部编写在了main方法中,是匿名程序,java可以通过封装对象和方法来解决复用问题。 Plsql是将一个个plsql的业务员处理过程存储起来进行复用,这些被存储起来 ...
分类:
数据库 时间:
2021-01-12 11:21:03
阅读次数:
0