自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猿谋人、

混迹码界的CRUD程序猿。

  • 博客(19)
  • 资源 (5)
  • 收藏
  • 关注

原创 Redis简述|以及它能用于做什么?

Redis是一种开源的NoSQL内存数据库,用于高性能的数据存储和访问。Redis支持多种数据类型,包括字符串、哈希、列表、集合和有序集合,并且支持分布式存储和操作。Redis的特点包括快速、高可用和易扩展等,适用于各种应用场景。Redis作为一款高性能的NoSQL数据库,具有快速、高可用和易扩展等优点,广泛应用于互联网、电商、游戏和金融等领域。在使用Redis时,需要考虑数据的特性和访问模式,选择合适的数据类型和持久化机制,同时进行性能优化和容错处理,保证系统的高可用和稳定性。

2023-02-16 08:30:00 25770 1

原创 jrebel debug启动不起来,run jrebel可以正常启动,jrebel无错误日志

经过各种操作依旧还是无法解决。删除IDEA缓存,重新构建 X。卸载jrebel,重新安装 X。APPLY后,正常启动项目。删除项目,重新拉取 X。

2023-12-18 19:09:12 994

原创 关于Java中:PO、VO、BO、DO、DAO、DTO、POJO区别

在Java开发中,经常会遇到各种不同的数据对象模型,如PO、VO、BO、DO、DAO、DTO、POJO等。这些模型有助于我们更好地组织和管理数据,提高代码的可维护性和可读性。在本文中,列举出每种模型并且提供详细的说明和示例代码。

2023-09-16 16:02:04 158

原创 使用Spring Boot和MDC实现跨线程链路日志追踪

在分布式系统中,链路日志追踪是一项至关重要的功能,可以帮助我们快速定位问题,了解每个请求在系统中的完整调用链路。本文将介绍如何在Spring Boot应用中使用MDC(Mapped Diagnostic Context)实现链路日志追踪,以及如何在使用@Async注解的异步任务中传递traceId。

2023-03-29 16:10:43 3149 2

原创 如何基于Spring中的事件驱动编程实现业务解耦?ApplicationEventPublisher

Spring基于事件类EventObject和事件监听类ApplicationListener..实现了一套事件驱动模型,它类似于消息队列(MQ)中的 发布/订阅 模式,也类似于设计模式中的观察者模式。

2022-08-01 17:15:08 389

原创 parallelStream引发的生产环境BUG

背景线上有个接口需要查询返回一个列表数据,原来是采用了Stream进行遍历数据过滤的,随着数据的增长,这个接口一次性需要处理的数据越来越多,然后这期需要对其进行优化。除去一些其它的DB方法优化,也改动到这里了,改成了parallelStream进行处理。没做好并发处理,埋了个雷!经过优化后,性能提升也还算比较明显有用,极端数据的情况下缩短了近一半开销。效果这么好,我笑了事故然后顺利的通过测试,发布上线...结果第二天就出现异常,还是偶发性异常,根据日志本地重现也无法.

2022-04-01 10:32:59 753

原创 Linux服务器被植入kthreaddk挖矿程序后处理方案

今天早上一过来上班就收到客户反馈,小程序无法上传图片了,经过日志排查发现服务器tmp文件目录被删了,导致上传失败异常。同时我发现服务器CPU爆满,查看进程就发现不对劲,似乎有问题。查询了一下占用进程名,发现是个挖矿木马。使用top命令,查看内存消耗。我发现kill了过一段时间又会重新启动,删除定时任务也无法解决。最后为了保证服务器的可用先,我直接停止了定时任务的使用。crontab -r再kill了进程,服务器不堵塞恢复正常使用了。然后慢慢清理木马!...

2022-03-30 11:43:47 4841

原创 阿里巴巴开发手册2020泰山版和嵩山版资源记录分享!

链接: https://pan.baidu.com/s/1MotvqPhJVaMLXI5uDZ5M5Q密码: o49h

2021-08-03 00:11:31 378

原创 Spring AOP实现接口请求参数的日志打印以及接口安全、合法性校验

一、缘由在我们日常系统的开发中,不可避免的需要对外提供一些接口,比如公司多个系统需要调用我们负责的系统中某个接口、功能。而这类接口往往涉及到公司的数据,对于安全性需要一定的保证,总不能写一个接口,所有的调用都响应吧?所以就有了此文分享。二、方案任何技术和方案都具有多面性,有利也有弊,我们只能根据自己的实际业务作出取舍。1.基于token等机制做统一权限校验市面上开源权限框架有很多,如Shiro、Spring Security、Sa-Token...利:安全...

2021-07-19 14:54:47 834 2

原创 什么是消息队列?什么场景用消息队列?用消息队列会产生什么问题?

一、什么是消息队列?消息队列,一般我们会简称它为MQ(Message Queue),它本质就是一个消息转发器,一个不赚差价的“中间商”。先说一下队列,应该都很熟悉,队列 = 一种按顺序排好队的数据结构。把数据放到消息队列叫做“生产者” 从消息队列里边取数据叫做“消费者”二、为什么要用消息队列?主要解决了三个问题异步 解耦 削峰1.首先异步,在我们平常接口和方法调用的时候,需要一个一个按顺序调用,那对于一个重要的业务功能来说,可能调用的链路特别长...链

2021-05-24 18:57:23 574

原创 shell脚本停止/启动java项目

使用说明:需要修改的地方:SERVICE_NAMESERVICE_DIR#!/bin/sh## 服务名称 nameSERVICE_NAME=base-auth##jar 包路径SERVICE_DIR=/root/.jenkins/workspace/base-auth/base-auth/target/## 包名称JAR_NAME=$SERVICE_NAME\.jar## pidPID=$SERVICE_NAME\.pid ##先进入 服务项目路径下cd $SER

2021-03-23 22:40:28 613

原创 基于【SpringBoot】的微服务【Jenkins】自动化部署

前言关于自动化部署的好处,我就不再赘述了,经历过打包上传杀进程...都懂。特别是现在很多项目都开始模块化,一个项目启动的项目数十个,一个个人工操作,会累死。有jenkins就可以解放了,一杯茶点点点即可构建完成!(配置麻烦,后续解放)一、前期准备JDK环境GIT环境jenkins启动完成Maven环境3.6.3(以上就不展示了,都是最基础的环境搭建)二、项目结构首先看一下我们这个项目的结构。根项目,下面有6个子项目,6个子项目分别有自己的子项目,多级互相依赖!

2021-01-19 16:02:47 409

原创 什么是接口幂等性?如何保证幂等性?用真实的场景说一下

案例前段时间,我修改的一个功能涉及的接口,经过测试小姐姐的仔细盘查,出BUG了...而且是很严重的BUG。可以看到同样的数据产生两条了,如果不注意,两条都审核通过...那就是白花花的银子,会被祭天的!我一寻思,我也没改什么重要逻辑,就是加个字段,怎么就加出BUG了???然后我一顿常规操作,发现问题依旧存在...嗯确认是BUG无疑了。经过我翻阅代码发现这个接口业务比较繁琐,调用链路有点长,所以处理需要一点时间,如果再加上前端没有做按钮限制,很容易就出现重复提交的情况

2020-12-18 10:33:39 401 1

原创 一次线上错误引发的事故,主角: java.util.NoSuchElementException: No value present

背景今天无意间使用一个没什么太大用的功能点时,突然我的小美不停的给我发消息...别误会,小美不是“人”,是机器人,诺~就是下面这货!根据小美的提示找到代码位置,一看,我傻了,这么取值,不是写BUG吗?VAllCustomer customer = vAllCustomerRepository.findById(consume.getCustomerId()).get();我们可以看到IDEA都有提示:SonarLint: Call "Optional#isPrese

2020-12-14 15:34:16 642 1

原创 Mysq数据量不大查询速度却很慢,记录一次left join查询优化

背景趁着周末闲来无事,想起来之前看过的SQL优化,试一试效果。效果为了提现查询慢,所以...无视这烂SQL吧。优化前优化前效果可以清楚的看到上面短短5W余条数据,居然要一分钟,这能忍?优化后优化后效果神奇吧,这就是用好索引的效果,同样一条烂SQL,效果千差万别。看完了效果,接下来我们说一下优化过程。首先用explain这个命令来查看一下SQL语句的执行计划,看看该SQL语句有没有使用上了索引,有没有做全表扫描,这些都可以通过explain命令来查看。.

2020-12-14 09:34:13 3195

原创 记录一次完整的java线上项目堆内存溢出触发GC

前言记录一次线上JVM堆外内存泄漏问题的排查过程与思路,其中夹带一些常用的JVM问题排查指令和工具分享,希望能为大家带来帮助。故障发生和描述今天早上刚上班,运维那边钉钉发消息给我说昨晚服务器CPU负载太高,且发生报错。叫他把日志拉取下来,一看…这不就是大名鼎鼎的内存溢出吗?头顶不断冒出 经验+1 经验+1...默默的看了一眼眼前的《深入理解Java 虚拟机》,我枯了…终于派上用场了。我等你等的好辛苦…其实昨晚就有迹象了,监控异常的小美,连续群里轰炸,已经麻木了...

2020-12-11 17:07:24 391

原创 Java处理多个List集合中对象数据合并处理数据后为同一个List集合对象

描述现有三个接口,分别返回相同的列数据,字段名相同但是数据归属业务不同。但最终要的结果是几个集合的所有数据!(三个接口来源数据并无关联关系,都是互相独立)最终效果:实际三个接口查询出来,使用list.addAll()进行拼接:无法满足业务要求,如下才是满足业务要求:下面是解决方案:对。上代码!三个list数据接口//产品List<ProductSalesVO> productRanking=objectJsonResult.getDa.

2020-09-01 10:09:16 7193 4

原创 基于Spring AOP实现自定义注解记录系统操作记录日志

前言近期公司历史项目需要增加一个记录操作记录的功能,但由于项目已经是中后期了,无可避免的增加耦合度。![产品给出的原型图](https://img-blog.csdnimg.cn/20200826152800140.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI0MzczNTMz,size_16,color_FFFFFF,t_70#p

2020-08-26 16:19:09 407

原创 OCR文字识别,基于腾讯云的demo,Ajax+Struts2上传图片进行文字识别

接口概述服务简介通用 OCR 技术提供图片整体文字的检测和识别服务,返回文字框位置与文字内容。支持多场景、任意版面下整图文字的识别,以及中英文、字母、数字的识别。应用场景:印刷文档识别、广告图文字识别、街景店招识别、菜单识别、视频标题识别、互联网头像文字识别等。计费说明计费方式腾讯云文字识别(OCR)按照实际使用量付费,采用后付费方式,次月 1~3 日会出本月账单,进行...

2018-07-13 20:52:51 894

表白 纪念 谷歌插件前端css+js新标签页展示

谷歌插件 情人节 程序猿表达爱意 表白 七夕 情人节 HTML JS

2022-08-09

windows Erlang otp_win64_22.3+rabbitmq-server-3.8.3.rar

windows64位系统专用rabbitMQ安装包+Erlang环境安装包! 官网下载太慢,可以下载这个!

2020-04-24

微信公众号客服功能开发头像上传demo

适用于微信公众号客服管理本地开发,新建客服账号上传头像。

2018-07-27

OCR文字识别demo(Ajax+Struts2)

支持多场景、任意版面下整图文字的识别,以及中英文、字母、数字的识别。 应用场景:印刷文档识别、广告图文字识别、街景店招识别、菜单识别、视频标题识别、互联网头像文字识别等。

2018-07-13

java编写微信跳一跳弱智辅助

用于微信跳一跳辅助,需要手机开启USB调试模式,并且连上电脑,同时还需要一个安卓屏幕显示软件投射到电脑上进行尺寸比对!

2018-01-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除