- 博客(38)
- 收藏
- 关注
原创 jvm-接口调用排查
并且线上其他接口正常,只有这个接口异常。这是不正常的,并且老年代长期占比90 即使gc之后也占比90左右,没有清理太多空间,调用完成之后开始下降。1、打日志代码不应该在循环里面打印大对象,非常占用内存,导致老年代的对象无法及时回收,出现内存泄露。线上碰到个问题,某个接口调用时间特别长,线上调用接口直接报gateway time out。然后比较本地和线上的环境和配置的差异,发现线上和本地日志级别不一样,并且线上不断打日志。S1 — Heap上的 Survivor space 1 区已使用空间的百分比。
2024-04-17 13:46:57 1039 1
原创 kaggle-Prediction of Obesity Risk
使用 LGBMClassifier。使用 XGBClassifier。使用stacking。
2024-03-26 15:53:46 238
原创 线程池的核心参数与拒绝策略
比如线程池的 corePoolSize 为 5,maximumPoolSize 为 10,任务队列容量为 100,随着任务被提交,我们的线程数量会从 0 慢慢增长到 5,然后就不再增长了,新的任务会被放入队列中,直到队列被塞满,然后在 corePoolSize 的基础上继续创建新线程来执行队列中的任务,线程会逐渐增加到 maximumPoolSize, 然后线程数不再增加,如果此时仍有任务被不断提交,线程池就会拒绝任务。链接:https://www.jianshu.com/p/979005fc1acc。
2024-03-06 17:35:43 804
原创 Synchronized的锁升级机制详解(JDK8)
在Java的并发编程当中,synchronzied无疑是最常用的关键字,用于保护代码块和方法在多现场场景下的,并发安全问题。在Java中,synchronized锁是基于对象实现的,通常的使用方式包括修饰同步方法和修饰同步代码块。![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/2429afdedc344e5994fc4396aec2853f.jpeg#pic_center)
2024-03-04 10:00:06 185
原创 使用redis实现分布式锁
NX :表示key不存在的时候,才能set成功,也即保证只有第一个客户端请求才能获得锁,而其他客户端请求只能等其释放锁,才能获取。PX milliseconds: 设定key的过期时间,单位为毫秒。EX seconds :设定key的过期时间,时间单位是秒。XX: 仅当key存在时设置值。1、利用过期时间防止死锁。
2024-01-17 15:16:14 359
原创 springboot集成knife4j配置问题
knife4j.setting.enableFilterMultipartApis false 针对RequestMapping的接口请求类型,在不指定参数类型的情况下,如果不过滤,默认会显示7个类型的接口地址参数,如果开启此配置,默认展示一个Post类型的接口地址。满足条件的Bean就会被注册到IOC容器中,不满足条件的Bean就不会被注册到IOC容器中。knife4j.setting.enableVersion false 是否开启界面中对某接口的版本控制,如果开启,后端变化后Ui界面会存在小蓝点。
2023-12-18 13:53:10 1314
原创 文件流转换问题
上面这种写法在某些浏览器发送的请求并不适配报404错误,通过日志看到已经获取到文件流在最后一步转换时出错。将inputStream 转换成outputStream 返回给前端。使用 BufferedOutputStream 包裹 返回即可解决。
2023-12-14 13:57:12 313
原创 websocket实现和配置
后端调用代码 应用场景是用户在任意前端点击就会触发,且在多个前端都可以获取响应,此时多个前端监听同一个websocket服务。1、websocket 统一实现代码。
2023-11-30 09:33:51 532
原创 解决excel导出报错问题
原因: nginx升级之后解析header出现code字符转移和gateway不适配。gateway添加 - transfer-encoding 解决。nginx旧版本1.18 nginx新版本 1.21。由于nginx升级出现的版本不适配gateway问题。查nginx日志发现报错 code 重复。excel导出报错502 bad。gateway版本2.1.5。以上是gateway配置。
2023-11-04 15:39:40 159
原创 解决内存报错问题--docker问题
经过排查,部署的服务本身没有问题(可以在另外一台机器上发布),服务器内存足够大。猜测是docker容器问题,添加docker内存配置即可。总之一堆错误,看出来是内存问题。
2023-10-31 15:33:04 1159 1
原创 maven问题 Malformed \uxxxx encoding.
直接在 自己的maven仓库文件夹(我的是 D:\maven\local_repository )搜索 resolver-status.properties。使用maven打包时出现 Malformed \uxxxx encoding.然后全部删除 还不行就在 .m2/repository 搜索也全部删除。
2023-08-17 11:27:45 47 1
原创 linux在线安装docker和docker-compose 脚本
【代码】linux在线安装docker和docker-compose 脚本。
2023-08-15 14:21:19 63 1
原创 多租户实现(3)feign调用拦截器和outh2
说明一下token的问题,如果没有开启新的线程那么请求头中的token是会进行传递的,如果是开启新的线程调用其他微服务,请求头会丢失,下面代码将一并解决这两个问题。另外想说token可以设置时效,如果的一般的多线程使用微服务接口调用,可以在第一次获取token之后缓存起来,在调用的时候先进行拦截之后再设置。替代使用资源拥有者的凭据,而是使用一个权限令牌token,它具有具体的范围限制,生命周期,以及其他的权限属性。3、第三方应用获得资源的广泛的权限,是的资源拥有者不能限制访问时间和权限。
2023-08-07 09:01:45 176 1
原创 sklearn.tree.DecisionTreeClassifier 调参
如果为float,则min_samples_leaf是分数,而ceil(min_samples_leaf * n_samples)是每个节点的最小样本数。4、min_samples_split:拆分内部节点所需的最少样本数:如果为int,则将min_samples_split视为最小值。如果为float,则min_samples_split是一个分数,而ceil(min_samples_split * n_samples)是每个拆分的最小样本数。如果未提供sample_weight,则样本的权重相等。
2023-08-04 14:26:53 81 1
原创 多租户实现(2)mybatis拦截器及其执行顺序,sql全局添加tenantId
通过调试源码可以看到 xml的sql解析过程在Executor 之后,ParameterHandler之前。所以如果xml有如下形式的写法的时,并且没有使用Executor而只使用ParameterHandler,那么在解析xml时就会解析不到设置的参数。详细讨论mybatis的执行流程和sql的生命周期。ParameterHandler在解析xml的sql之后执行。在查询的时候也一样需要把参数加进去,下面的查询的写法。Executor 在解析xml的sql之前执行。下面是insert的拦截写法。
2023-07-26 14:10:36 612 3
原创 多租户实现(1)controller层拦截器和ThreadLocal
解决了公司要求的多租户的一个功能,有些涉及的点,作为一个系列记录哈。前端统一在header里添加tenantId字段后,后端统一获取。
2023-07-26 13:06:57 190
原创 redis主从和哨兵模式
在软件的架构中,主从模式(Master-Slave)是使用较多的一种架构。主(Master)和从(Slave)分别部署在不同的服务器上,当主节点服务器写入数据时,同时也会将数据同步至从节点服务器,通常情况下,主节点负责写入数据,而从节点负责读取数据。Redis 主机会一直将自己的数据复制给 Redis 从机,从而实现主从同步。
2023-07-26 11:43:41 151 1
原创 文件预览,pdf、word相互转化
3、安装java环境 https://blog.csdn.net/A_yonga/article/details/125526307。代码地址 https://gitee.com/fxysss/word2pdf 注意下配置文件libreoffice的路径。3、 将字体放到"/usr/share/fonts/winFonts"路径下,并在该路径下创建一个文件夹;复制字体库到创建好的字体库目录/usr/share/fonts/15、 # mkfontdir //新增字体目录。中文安装(可以不执行)
2023-07-24 10:10:50 143
原创 CodeBlock 20.03安装
CodeBlock 20.03安装问题1、字体改不了问题default.conf10.2 改成 10闪退问题CodeBlocks\share\CodeBlocks\SpellChecker 加入链接: link.图片:带尺寸的图片: 居中的图片: 居中并且带尺寸的图片: 当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。如何插入一段漂亮的代码片去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.// An highlighted blo
2021-02-08 20:11:49 176
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人