工作问题
晴天M雨天
某互联网公司高级开发工程师
展开
-
canal同步mysql数据到kafka, kafka消费存入clickhouse
环境winmysql5.7如果不想看步骤可以直接下载我打包好的文件,修改相关数据库配置就行。原创 2023-02-13 12:57:53 · 869 阅读 · 0 评论 -
mongo的date类型查询
时间上和存入的时间差了8小时 时间格式iso。mongoTemplate 注意。时间查询转ISODate。根据条件和时间查询如下。数据类型格式一定要匹配。原创 2023-02-08 17:27:46 · 943 阅读 · 0 评论 -
datax数据迁移mysql到mongo
mysql的多余数据迁移到mongo。原创 2023-02-08 08:47:46 · 841 阅读 · 0 评论 -
redis红锁算法
3客户端计算获取锁所需的时间通过从当前时间减去步骤1中获得的时间戳,当且仅当客户端能够在大多数实例(至少3个)中获取锁时,获取锁所花费的总时间小于锁有效时间,则认为已获取锁。2在5个实例上依次获取锁,在所有实例中使用相同的key名字和随机值,在步骤2期间,当设置锁再每个实例时,客户端使用与总锁自动释放时间相比小的超时来获取它。首先,我们假设客户端能够在大多数实例中获取锁所有实例都将包含一个具有相同生存时间的密钥,然而,这个key是在不用时间设置的,所以过期也会在不同的时间过期,加锁时客户端执行以下操作。原创 2022-12-15 14:38:49 · 476 阅读 · 0 评论 -
Nginx HA高可用实现记录
nginx高可用性能部署HA高可用先制作镜像再创建两个容器根据第三条来创建两个容器,你会发现有大量的重复操作,我们可以先制作一个镜像,再根据该镜像创建两个容器,从而避免了大量重复操作。1、配置模板容器(1)、下载centos:7.6.1810镜像(2)、启动并进入容器(3)、安装基础工具(4)、安装nginx的依赖库和安装nginx先安装nginx依赖再安装nginx(5)、修改index.html的标题title改为Master。原创 2022-11-15 08:44:33 · 311 阅读 · 0 评论 -
PageHelper1对多查询结果的分页问题
之前因为关联查询返回多列,mybatis返回时又做了折叠处理,所以有问题,就是把带有分页参数的sql和collection 的查询分开就可以了。collection 中的column中的id 是返回集合中的id,也是第二个查询中的参数。首先自定义一对多的关系,多余的字段我省略了,这里主要为了展示。就可以返回正确结果了。原创 2022-10-19 10:59:42 · 896 阅读 · 0 评论 -
easypoi自定义模板导出
easypoi自定义模板导出原创 2022-08-05 16:33:59 · 561 阅读 · 0 评论 -
spring之AOP切面不生效!!!!!原因在这
需要在扫描controller的那个xml中配置有时候配置到applicationContext.xml中是不生效的,切入的类和被切入的类必须是被spring管理的(springIOC),如果是自己new出来的,切入无效。只有Spring生成的对象才有AOP功能,因为Spring生成的代理对象才有AOP功能。而且所对应的切入方法不能是static修饰的。项目配置如下就可以生效了。...原创 2022-07-26 11:04:23 · 5924 阅读 · 1 评论 -
lvs看这篇就够了
1lvs 的由来1公司的钱大部分都花在了获客,营销上,营销效果好就会带来新的流量,如果自身应用承接不住大的流量将会造成很大的经济损失。所以lvs负载均衡技术就此诞生了。当然不差钱也可以使用F5 等硬件lvs 学名Linux虚拟服务器LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。想要说明白lvs 需要一定的网络知识,我就先从一个案例说起吧比如你要访问百度,访原创 2022-07-13 12:43:03 · 13080 阅读 · 0 评论 -
记一次生产sql优化
总结优化思路1分析当前业务2定位慢查询arthas3分析查询参数,优化查询参数 ,优化返回结果4explan 分析慢查询 根据sql 分解sql,看哪一个子查询慢,优化索引,优化查询顺序结构等5以上都不行 前期就应该建立分库分表 或者使用ck nosql 进行查询arthas 分析结果如下[arthas@25356]$ trace com.rfca.dao.mapper.ParkingMapper QueryLatePhotoPress Q or Ctrl+C to abort.Aff原创 2022-05-20 10:26:59 · 395 阅读 · 0 评论 -
前端展示状态属性,从数据库中数字代号转换为中文解释
直接上代码public interface CodeEnum { Integer getCode();}public enum AlarmDataStatus implements CodeEnum { warn(1, "提醒"), commonly(2, "一般"), warning(3, "警告"), serious(4, "严重"); private Integer code; private String message; A原创 2022-05-11 11:27:51 · 462 阅读 · 0 评论 -
项目添加svn版本号
yml配置app-config: isDev: 1 version: ${prefix.revision}maven 配置 <!--svn版本号--> <plugin> <groupId>com.google.code.maven-svn-revision-number-plugin</groupId> <artifactId>maven-s原创 2022-04-02 16:55:37 · 631 阅读 · 0 评论 -
vue element-ui icon打包后放在springboot中icon没有显示的问题
Vue java Springboot原创 2022-04-01 09:36:24 · 362 阅读 · 0 评论 -
springboot和Vue合并部署
springboot和Vue合并部署原创 2022-03-24 16:51:16 · 1141 阅读 · 0 评论 -
通过队列和线程池提升任务的执行效率
线程池 内存队列原创 2022-03-11 16:49:54 · 462 阅读 · 0 评论 -
idea2020生成webservice 客户端代码
webservice客户端代码原创 2022-03-11 16:39:30 · 4307 阅读 · 0 评论 -
java中锁的使用经验
java 锁 锁竞争 面试原创 2022-01-25 10:30:18 · 405 阅读 · 0 评论 -
sentinel接口限流初探
sentinel 基本概念开发的原因,需要对吞吐量(TPS)、QPS、并发数、响应时间(RT)几个概念做下了解,查自百度百科,记录如下:响应时间(RT) 响应时间是指系统对请求作出响应的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。由于一个系统通常会提供许多功能,而不同功能的处理逻辑也千差万别,因而不同功能的响应时间也不尽相同,甚至同一功能在不同输入数据的情况下响应时间也不相同。所以,在讨论一个系统的响应时间时,人们通常是指该系统所有功原创 2021-11-18 16:49:07 · 229 阅读 · 0 评论 -
线上千万级大表查询从10分多钟降到4.197484秒我是怎么做到的
原始sql下面展示一些 内联代码片。 SELECT max( a.number ) as number , sum( a.dodmoney ) as billmoney, a.carno, a.color, a.parkinglotid, b.name as parkinglotName FROM ( SELECT count(*) AS nu原创 2021-09-29 22:45:31 · 253 阅读 · 0 评论 -
线上cpu飙高问题
1 top -c查询对应的pid2 top -Hp pid找到占用高的线程3 jstack pid > stack.txt4把pid转为16进制printf “%xn” 307485下载下来查找就行6或者jstack 30748 | grep 781dn原创 2021-09-09 09:20:28 · 82 阅读 · 0 评论 -
线上内存溢出排查
1启动arthas2选择对应的进行3heapdump --live /tmp/dump.hprof4mat分析结果主要看看那些大对象导致的5结合查看这个最后结合代码观察室redis 连接没有释放导致内存溢出的问题总结,以后在使用任何连接的时候,使用完记得释放 归还。...原创 2021-09-09 09:05:34 · 126 阅读 · 0 评论 -
采用多线程在Redis更新完以后批量更新状态
今天遇到一个为题在更新较多状态时,springboot定时任务可能会导致应用连接池出问题采用批量更新采用多线程在Redis更新完以后批量更新状态package com.reformer.demo2.job;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import com.baomidou.mybatisplus.core原创 2021-09-03 18:35:04 · 781 阅读 · 0 评论 -
SpringBoot整合Swagger3生成接口文档
前后端分离的项目,接口文档的存在十分重要。与手动编写接口文档不同,swagger是一个自动生成接口文档的工具,在需求不断变更的开发环境下,手动编写文档的效率实在太低。与新版的swagger3相比swagger2配置更少,使用更加方便。一、pom文件中引入Swagger3依赖io.springfoxspringfox-boot-starter3.0.0二、Application上面加入@EnableOpenApi注解复制代码@EnableOpenApi@SpringBootApplicat原创 2021-08-10 17:42:20 · 1034 阅读 · 0 评论 -
20213/16总结
最近在写程序,饶了一些弯路,其实这些都可以本来都可以避免。因为数据库的一个状态值,找错误找了半天,总结如下:1首先遇到问题不要心浮气躁2理清楚不同阶段时期状态值该是什么,如果不清楚不同时期的状态值,很容易混乱,这些细节真的后续出了问题也比较难找。3根据某一个时刻周期,看日志进行SQL查找,根据程序逻辑把SQL走一遍,或者dubug看到底什么导致了程序错误,基本走一个周期就能查出问题。在不太熟悉的程序逻辑下只能先这么操作了。...原创 2021-03-17 19:28:25 · 83 阅读 · 0 评论 -
wps个人版宏设置
首先找到对应宏资源;然后解压;点击第一个.exe文件,无脑下一步最后重启wps如下图原创 2021-01-19 12:52:00 · 672 阅读 · 2 评论