- 博客(81)
- 收藏
- 关注
原创 sop 防呆,减少人为错误
本人在工作中出现过严重问题,而出现问题的原因仅仅是某个环节被忽略了。如何减少这类错误的发生,我选择将工作的这项事务sop化,实际上很简单,列出12345,严格按照顺序执行,每执行一项标记一项完成,只有上一项完成才继续下一项。所谓SOP,是 Standard Operating Procedure三个单词中首字母的大写 ,即标准作业程序,指将某一事件的。步骤和要求以统一的格式描述出来,用于指导和规范日常的工作。SOP的精髓是将细节进行量化,通俗来讲,SOP就是对某一程序中的。
2024-07-27 19:50:43
330
原创 win11 内存占用过大优化尝试
win+r 输入services.msc打开服务-搜索windows 更新-双击打开设置-选择禁用。找到硬件和声音-电源选项-选择电源按钮的功能-去掉勾选启用快速启动。win+s打开搜索 控制面板,打开控制面板。
2024-06-30 11:00:38
328
原创 保证系统的稳定性措施
灾难恢复演练:定期演练灾难恢复方案,确保紧急情况下能够迅速恢复系统。员工培训:定期培训运维和开发人员,提高其应对突发问题的能力。备份机制:定期备份重要数据,确保在出现故障时可以快速恢复。代码审查和优化:定期对代码进行审查和优化,提升运行效率。自动报警:设置告警规则,当系统异常时,及时通知相关人员。压力测试:模拟高负载情况,验证系统在极端条件下的表现。日志管理:集中化日志收集和分析,快速发现和定位问题。数据库优化:索引、缓存和查询优化,减少数据库瓶颈。漏洞扫描:定期进行安全扫描,修复潜在漏洞。
2024-05-18 16:26:41
244
原创 idea git commit全局ignore配置
在开发时,提交开发代码到git,需要剔除一些不需要提交的文件。那么可以配置一个全局ignore文件。我的是在C:\Users\Windows,文件名.gitconfig。
2024-04-27 21:59:30
362
1
原创 记录取值精度丢失的问题
单id最终处理类型是Long ,与实际差异1。接收结果经过2层处理,接口的数据第一次是接收,通过Object接收,接收类型是Double,问题就出在这里,浮点型接收产生了误差。后续再转换成Long,数据就不对了。访问第三方接口,查的数据丢单了,跟踪查询接口,发现某个单id查不到数据。将原始返回结果拉出来一看,发现有单的id值产生了变化。返回结果直接转换成对应的类型,指定类型接收结果。
2024-04-27 20:34:19
138
原创 idea 没有代码提示解决方法
File-Settings-Editor-General-Code Completion:勾选Show suggestrions as you type。今天写代码发现没有代码提示了,很难受。我的是这个问题,勾选上就ok了。
2024-03-24 15:00:12
866
原创 集成Mybatis Generator dao层代码生成
我们在使用mybatis开发的时候,需要去写表的基本的crud,这些咱们通常定义到dao层里面去,而mybatis generator可以帮我们把这件事情自动完成,大大节省时间并且可以规范dao层的代码。
2024-03-12 21:22:25
414
原创 阿里云增加数据库访问白名单
我们希望在外网访问数据库时,可能会遇到无法连接的问题,这有可能是被拦截了。这时就需要去查看自己的ip有没有在白名单里面,没有的话就把ip加入到白名单。选择左侧栏白名单与安全组,选择分组修改,按规则填入ip。选择需要增加白名单的实例,点击管理或双击进入。
2024-02-06 14:11:40
1300
原创 记一次PageHelper分页使用错误导致的其他接口查询异常
在功能模块的某个接口中,有PageHelper开启了分页,但是条件判断未走查询。最终导致后续某个查询接口分页查询结果异常。仔细查看发现sql带了分页查询,而接口中并没有任何关于分页的代码。PageHelper 开启分页影响本地线程变量,当开启分页,而分页未消耗,分页会给到下一个使用该线程的查询。最终把这个无效的开启分页干掉后,查询数据错误再没有出现。3、排查集群服务接口不一致,测试环境保留一个服务,功能测试接口有偶然不一致。测试某个线上功能模块时,反馈某个接口查询结果偶然不一致。
2024-01-20 17:31:55
443
原创 循环业务异常外部处理导致的问题
在业务执行循环中,异常捕捉处理在循环外。当循环中的某个业务执行异常时,会影响后续业务的执行,因为没有采取相应措施来处理该异常并继续循环执行。以下是示例代码,演示了在循环中执行多个业务操作并在异常发生时捕获处理。
2023-12-30 20:48:26
410
原创 linux防火墙相关命令
(–permanent 为永久生效,不加为单次有效(重启失效))(–permanent 为永久生效,不加为单次有效(重启失效))3、开放单个端口(开放后需要要重启防火墙才生效);4、开放多个端口(开放后需要要重启防火墙才生效)5、关闭端口(关闭后需要要重启防火墙才生效)12、查看防火墙设置开机自启是否成功;13、 禁止防火墙开机启动;2、 查看端口是否被占用;11、设置开机启动防火墙;6、查看端口是否打开;linux防火墙相关命令。7、查看防火墙状态;10、重启防火墙;
2023-10-14 13:33:14
210
原创 go-基础-3-函数-记录
最后执行,多个的情况下,先定义的后执行,类似栈;引用传递:传递的是引用类型的数据。一个函数可以作为另一个函数的参数。值传递:传递的类型是值类型数据。类似JavaScript。
2023-08-26 16:50:41
397
原创 go-基础-2-流程控制-记录
加fallthrough穿透,不管下一个条件是否满足都会执行。默认匹配一个值就不会继续执行了。同java,有不同的写法。同java,不同点如下。
2023-08-26 16:50:11
73
原创 解决Idea 多模块,maven项目是多层级文件夹的子项时无法加入git管理的问题
多模块项目,引入模块无法做git管理,第一个项目没有git分支标志,也不能像其他项目一样右键出git选项。发现该模块是多层级的文件夹结构,也就是项目本身在一个文件夹下。应该是要管理该文件夹。将要做git管理的文件夹添加到其中。
2023-08-13 14:30:42
816
原创 Go语言介绍
Go,也被称为Golang,是一种开源的编程语言,由Google开发并于2009年首次发布。它的设计目标是提供一种简单、高效、可靠的编程语言,适用于大规模软件开发。
2023-07-31 18:17:09
431
原创 CPU 飙高问题排查和解决方法
本文档记录了排查 CPU 飙高问题的处理过程和解决方法,从多个方面进行分析和排查。在排查 CPU 飙高问题时,需要采用多种方法进行分析和排查,才能找到问题发生的原因。在解决 CPU 飙高问题时,需要优化代码、优化系统、优化算法等多方面进行考虑和分析,才能最终解决问题。
2023-05-27 20:07:54
4575
2
原创 MapStruct - 让java实体映射更容易
MapStruct 是一个 Java 注释处理器,用于为 Java Bean 类生成类型安全和高性能的映射器。它使您免于手动编写映射代码,这是一项繁琐且容易出错的任务。该生成器具有合理的默认值和许多内置类型转换,也可以通过配置实现一些特殊行为。与在运行时工作的映射框架相比,MapStruct具有以下优点:若要在两种类型之间创建映射,请声明如下所示的映射器接口:在编译时,MapStruct将生成此接口的实现。生成的实现使用纯 Java 方法调用来映射源对象和目标对象,即不涉及反射。默认情况下,如果属性在源和
2023-05-16 19:02:56
1409
原创 Cron 表达式
Cron表达式是一种用于定时任务的格式,它由6个字段组成,分别表示分钟、小时、日、月、周、年,每个字段都有特定的取值范围和设置方法。下面是Cron表达式的格式:│ │ │ │ │ └ year (可选)│ │ │ │ └───── day of week (0 - 7) (0或7表示周日)例如,下面是一个表示每个星期一的上午8点执行任务的Cron表达式:0 8 * * 1这个表达式中,0表示分钟为0,8表示小时为8,
2023-05-11 11:19:07
505
原创 springboot 2.6.7 集成mapStruct 及找不到符号 变量log问题记录
最近接触一个新项目,出于对性能的考虑,写东西时做对象转换不使用BeanUtils来处理,手写对象转换代码挺费时间,于是引入对象转换神器mapstruct,记录下过程。
2023-03-02 21:45:53
490
原创 阿里云RDS mysql实例过期恢复处理记录
查看后端服务是在linux服务器上通过hosts映射ip去连接数据库,而恢复后的mysql实例和原来的实例并不是同一个地址了。由于阿里云给出的mysql地址不是ip形式,需要将该地址等同的ip找出来,通过ip查询获取到ip。前几天发现有个网站登录不上去,排查发现是阿里云上的RDS mysql实例过期了。/etc/init.d/networking restart 执行重启网络;找到过期实例,在过期实例后面点击恢复,在交完费后实例恢复。将linux服务器上的hosts对应的ip映射替换。重启后端服务,搞定。
2023-02-11 11:34:42
365
原创 高并发异步多线程处理例子
原理是web应用启用一个子线程,而Tomcat线程立即返回,不再等待Web应用将请求处理完,这样Tomcat线程可以立即被回收到线程池,用来响应其他请求。用户发起请求打到web层,tomcat从线程池拿出一个线程处理,这线程会调用web应用,web应用在处理请求的过程中,该线程会一直阻塞,web应用处理完毕才能再输出响应,最后才回收该线程。譬如根据id或编号查询,其实可以合并多个查询给到批查询。在web层的异步写法,开启带返回结果的子线程来处理,tomcat线程可以立马回收。
2023-01-26 16:43:39
834
原创 记一次springboot @Async处理导致后续request请求参数获取为空的坑
近期有个导入excel功能的需求,要求是异步处理导入。于是配置了线程池,使用@Async 异步执行导入方法。做完后发现一个现象,在导入后的接下来的一次请求,接口调用异常。经调试发现后端request未获取到参数(parameterMap大小为0),而实际前端有传值,再次调用同接口后正常。
2022-11-02 17:02:53
2608
原创 RabbitMQ系列08-springboot集成-TTL(消息)
配置照例,定义交换机、队列,绑定关系。import org.springframework.amqp.core.Binding;import org.springframework.amqp.core.BindingBuilder;import org.springframework.amqp.core.DirectExchange;import org.springframework.amqp.core.Queue;import org.springframework.context.anno
2022-05-29 18:03:49
131
原创 RabbitMQ系列07-springboot集成-TTL(队列)
概述当我们遇到业务场景,在规定时间内要处理完某业务,就可以用到TTL(time to live生存时间)。RabbitMQ 允许为消息和队列设置 TTL。消息 TTL 可以应用于单个队列、一组队列或逐个消息应用。配置照例,定义交换机、队列,绑定关系。队列设置参数"x-message-ttl"=5000(ms);import org.springframework.amqp.core.Binding;import org.springframework.amqp.core.BindingBuild
2022-05-29 17:43:21
249
原创 RabbitMQ系列06-springboot集成-topic方式
本篇实现topic方式。topic是在direct的基础上,强化路由模糊匹配,在topic交换机发布消息时带上路由key,绑定的队列路由key与消息发布的路由key模糊匹配上时会接收到消息。配置交换机、队列及绑定关系可以在消费端,这里实现一种在消费端注册队列和绑定的写法。生产端交换机import org.springframework.amqp.core.*;import org.springframework.context.annotation.Bean;import org.sprin
2022-05-28 13:04:21
231
原创 RabbitMQ系列05-springboot集成-direct方式
接上篇RabbitMQ系列04-springboot集成-fanout方式,本篇代码实现direct方式。direct是在fanout的基础上,增加路由过滤,在Direct交换机发布消息时带上路由key,绑定的队列路由key与消息发布的路由key相同时会接收到消息。生产端配置交换机、队列及绑定关系import org.springframework.amqp.core.*;import org.springframework.context.annotation.Bean;import org
2022-05-28 10:28:39
156
原创 RabbitMQ系列04-springboot集成-fanout方式
建springboot工程主要引入springweb 及rabbitmq。pom <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </depe
2022-05-27 22:12:56
146
原创 RabbitMQ系列03-rabbitmq快速入门案例
maven依赖 <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.14.2</version> </dependency>图简单模式(simple)producer 生产者1.创建连接工厂2.创建连接3.获取通道
2022-05-26 18:40:38
240
原创 RabbitMQ系列02-windows 10下管理界面及授权
登录管理界面登录http://127.0.0.1:15672,默认用户密码都是guest。新建用户授权新建用户由于默认的guest账户只能做本地登录,如果需要远程访问,就要新建用户授权。命令:rabbitmqctl add_user admin admin。即创建用户名为admin 密码为admin的用户。后续提示需要给用户授权。分配角色1)none不能访问 management plugin2)management列出⾃⼰可以通过AMQP登⼊的virtual hosts查看⾃
2022-05-25 18:40:15
460
原创 RabbitMQ系列01-windows 10下安装
在项目中没有机会使用到消息中间件,比较几款主流的消息中间件,最终选择rabbitmq(spring相关、开源稳定、功能齐全)在windows 下安装打算做些demo了解下RabbitMQ的使用。官网RabbitMQ官网下载otp_win64_25.0.exerabbitmq-server-3.10.2.exe安装rabbitmq基于erlang语言,需要先安装erlang环境,类似javajdk的安装,双击安装包exe,一直下一步。erlang环境变量配置。新建系统变量名为:ERLA
2022-05-25 11:09:30
302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人