要在线上查看gc情况,进入k8s容器的bash,ps -ef 发现目标的java线程的进程号是1,运行jmap 报错:
```bash
Unable to get pid of LinuxThreads manage thread
```
查询了一下,原来是1是默认的启动进程,Dockerfile的ENTRYPOINT的执行默认就是 1。
说是要用tini来启动。但是里边是内网,又找不到tin
2021-08-03 11:35
标签
报错解决
,
k8s
,
docker
,
java
2021-08-03 11:35
标签
报错解决
,
k8s
,
docker
,
java
要在线上查看gc情况,进入k8s容器的bash,ps -ef 发现目标的java线程的进程号是1,运行jmap 报错:
```bash
Unable to get pid of LinuxThreads manage thread
```
查询了一下,原来是1是默认的启动进程,Dockerfile的ENTRYPOINT的执行默认就是 1。
说是要用tini来启动。但是里边是内网,又找不到tin
前言
在日常开发中,我们常常会遇到这样的业务场景,业务在执行完某项操作之后,需要通知其它子系统。
例如客户下单完成之后,订单系统需要通知数据分析系统,记录下单数据;通知发货系统,开始处理发货;通知会员回馈系统,客户下了单增加了积分,可以适当的发个红包。
这些通知和客户下单这件事有关系。但是和下单是否成功并无关系。
客户希望能快速得到下单成功的页面。这些通知该如何处理呢?
比较简单的方法是
2021-07-13 19:19
标签
java
,
高并发
2021-07-13 19:19
标签
java
,
高并发
前言
在日常开发中,我们常常会遇到这样的业务场景,业务在执行完某项操作之后,需要通知其它子系统。
例如客户下单完成之后,订单系统需要通知数据分析系统,记录下单数据;通知发货系统,开始处理发货;通知会员回馈系统,客户下了单增加了积分,可以适当的发个红包。
这些通知和客户下单这件事有关系。但是和下单是否成功并无关系。
客户希望能快速得到下单成功的页面。这些通知该如何处理呢?
比较简单的方法是
前言
在当前的系统中,我们可能会在一个事务中,执行多项操作,调用多个外部服务,查询数据或者更新数据,进行一系列逻辑处理之后返回给客户一个结果。
例如,以下是一个顾客下单的流程模拟:
```shell
1、获取基本产品信息(此处查询数据库)
2、获取每一个产品的价格(假设此处需要通过第三方服务平台进行实时定价,产品不同调用的平台亦不同,所有此处是挨个获取)
3、计算产品总价
4、获取用户余额(此
2021-07-13 14:41
标签
java
,
高并发
2021-07-13 14:41
标签
java
,
高并发
前言
在当前的系统中,我们可能会在一个事务中,执行多项操作,调用多个外部服务,查询数据或者更新数据,进行一系列逻辑处理之后返回给客户一个结果。
例如,以下是一个顾客下单的流程模拟:
```shell
1、获取基本产品信息(此处查询数据库)
2、获取每一个产品的价格(假设此处需要通过第三方服务平台进行实时定价,产品不同调用的平台亦不同,所有此处是挨个获取)
3、计算产品总价
4、获取用户余额(此
7、SPEL表达式支持
spel表达式,SpEL(Spring Expression Language),即spring 表达式语言,它是一种轻量的、灵活的语言,通过spring的解析工具进行解析。
在前文中,我们搭建实现的数据查询缓存通用模型,是通过cacheKeyCreater的机制来生成key的,这种方式可以实现很高的定制化,但是也有个缺点,那就是要写的代码更多,也不够直观。例如,先前的构造
2021-07-13 11:37
标签
缓存
,
java
2021-07-13 11:37
标签
缓存
,
java
7、SPEL表达式支持
spel表达式,SpEL(Spring Expression Language),即spring 表达式语言,它是一种轻量的、灵活的语言,通过spring的解析工具进行解析。
在前文中,我们搭建实现的数据查询缓存通用模型,是通过cacheKeyCreater的机制来生成key的,这种方式可以实现很高的定制化,但是也有个缺点,那就是要写的代码更多,也不够直观。例如,先前的构造
六、前端页面
前端页面采用H5 + 原生js6语法写成,界面设计以简洁轻量实用为主。
2021-07-12 12:39
标签
Redis
,
java
2021-07-12 12:39
标签
Redis
,
java
六、前端页面
前端页面采用H5 + 原生js6语法写成,界面设计以简洁轻量实用为主。
三、核心类介绍
1、RedisLogComponent
RedisComponent是日志组件类,用于存储组件信息,使用了lombok的注解,来减少编码量:
这里的@NoArgsConstructor增加了一个无参构造,因为redis反序列化json为java类时,要求这个java类具有无参构造函数,并且还要有对应属性的getter和setter。
2021-07-03 12:25
标签
Redis
,
java
2021-07-03 12:25
标签
Redis
,
java
三、核心类介绍
1、RedisLogComponent
RedisComponent是日志组件类,用于存储组件信息,使用了lombok的注解,来减少编码量:
这里的@NoArgsConstructor增加了一个无参构造,因为redis反序列化json为java类时,要求这个java类具有无参构造函数,并且还要有对应属性的getter和setter。
1、概述
该组件的开发目的,是试图制造一个,能够实时查阅的、高性能的、轻量级、易于使用的日志组件。
在我们的系统开发中,日志无疑是极其重要的一环。没有日志,排查错误、分析用户使用情况、追溯业务事件就无从谈起。
通常,Java web开发中,使用的日志一般是Slf4j。
2021-06-30 21:10
标签
Redis
,
java
2021-06-30 21:10
标签
Redis
,
java
1、概述
该组件的开发目的,是试图制造一个,能够实时查阅的、高性能的、轻量级、易于使用的日志组件。
在我们的系统开发中,日志无疑是极其重要的一环。没有日志,排查错误、分析用户使用情况、追溯业务事件就无从谈起。
通常,Java web开发中,使用的日志一般是Slf4j。
该组件使用简单、可靠该组件实现了以下算法
LRU (Least recently used) 最近最少使用,如果数据最近被访问过,那么将来被访问的几率也更高。
LFU (Least frequently used) 最不经常使用,如果一个数据在最近一段时间内使用次数很少,
那么在将来一段时间内被使用的可能性也很小。
FIFO (Fist in first out) 先进先出, 如果一个数据最先
2021-06-29 22:37
标签
缓存
,
java
2021-06-29 22:37
标签
缓存
,
java
该组件使用简单、可靠该组件实现了以下算法
LRU (Least recently used) 最近最少使用,如果数据最近被访问过,那么将来被访问的几率也更高。
LFU (Least frequently used) 最不经常使用,如果一个数据在最近一段时间内使用次数很少,
那么在将来一段时间内被使用的可能性也很小。
FIFO (Fist in first out) 先进先出, 如果一个数据最先
备案号:
闽ICP备19015193号-1
关闭特效