- 博客(153)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 解决GateWay报错:Exceeded limit on max bytes to buffer : 262144
gateway-2.2.3以上版本修复了该bug,在GatewayAutoConfiguration中加入了配置写入,但只限ReadBodyPredicateFactory类,如自定义类型需要使用方案二。重写ReadBodyPredicateFactory,注入ServerCodecConfigurer,使用ServerCodecConfigurer.getReaders()获取相关配置。直接重写SpringGateway底层处理请求请求的。网上查了很多种常见的解决方案无效之后 直接重写底层。
2023-12-13 14:53:03
3908
1
原创 JAVA结合AE(Adobe After Effects)AE模板文件解析生成视频实现类似于逗拍(视频DIY)的核心功能
解析AE模板文件 核心功能是实现的类似于传之前的逗拍的视频DIY功能,用户查找自己心仪的视频模板,选择好模板后替换模板中出现的图片,文字,背景音乐,再把任务提交到后台执行渲染,最后就能拿到和原先模板一样的具有很感觉的视频特效啦。第一步:首先你得先学1天的AE基本使用,不然接下来的活对于你来说简直是东方夜谈,字体可能有点歪啊 换个字体就行了。
2023-08-19 15:34:37
2451
2
原创 Nacos配置中心优雅配置JSON数据格式
具体使用 只需要 在 NacosConfig 中nacosConfigLocalCacheInfoMap方法添加对应配置映射即可,如下。默认不支持Json格式配置,需要搭配监听器获取配置中心Json数据,返回给客户端。Nacos配置代码: feign-demo→order-service-nacos。6. NacosConfigLocalCatch 核心监听触发类。在我业务开发中,需要在配置中心配置Json数据,返回给前端。二、搭配Nacos配置Josn数据。2. nacos配置-测试案例。
2023-03-24 15:57:23
3238
原创 tomcat启动报错 IOException parsing XML document from ServletContext resource [/WEB-INF/classes/applicati
控制台错误信息如下/Users/fujiakai/devTools/apache-tomcat-7.0.79/bin/catalina.sh runConnected to the target VM, address: '127.0.0.1:57374', transport: 'socket'[2022-04-27 12:09:04,206] Artifact hxtk:war exploded: Waiting for server connection to start artifact
2022-04-27 12:12:10
644
原创 微服务如何实现联合查询
微服务架构下,用户信息、机构信息这种基础数据,在多个系统中都会用到,数据库设计该怎么搞?比如我们现在有个核心系统放代理人信息,要再开发一个代理人管理子系统,里面对于代理人的名称和所属机构两边都要用,数据库设计怎么处理?思路:1.代理人子系统数据库中设计冗余字段缺点:一致性问题,一旦主系统改了信息,子系统同步更新复杂2.把代理人信息同步到子系统中缺点:这样不能做到实时同步,需要定时同步数据,无法解决查询时效问题3.分次查询,调用两个服务分别查询,再组装数据缺点:数据量大效率低其他人遇到
2022-04-19 15:08:04
1396
原创 SpringCloud 请求报错 Input length must be multiple of 16 when decrypting with padded cipher
今天在调试某个接口的时候 app那边反馈说其中一个接口加密的数据解密不出来。一开始我没当回事 觉得是他们的解密方法有问题,直到他们百般尝试以后还是不行才引起了我的注意!于是就来调试一下吧。反正闲着也是闲着!分析:一开始可能觉得是api服务端返回的数据有问题导致AES加密的串出了问题 所以导致没发解密!后来一顿分析 过程如下!报错信息报错的接口:当时在这个接口服务分析错误 花费了非常多时间 大概是觉得原因有两点1:这个接口返回的数据有问题 可能会有特殊符号导致无法被返回
2022-04-08 10:40:48
5753
原创 spring boot 自定义注解过滤返回字段
启动类package com.fuhang.mall;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.cli...
2022-04-03 11:13:29
2683
原创 Spring Gateway 报错java.lang.IllegalStateException: COMPLETED 解决
今天测试网关请求时报错 报错信息如下java.lang.IllegalStateException: COMPLETED at org.springframework.http.server.reactive.AbstractListenerReadPublisher$State.subscribe(AbstractListenerReadPublisher.java:451) ~[spring-web-5.3.15.jar:5.3.15] at org.springframework.http.
2022-03-29 16:24:01
3696
2
转载 阿里分布式事务框架Seata集成详情
大家好,我是曹尼玛 从大学毕业5年,一直努力学习,努力工作,追求新技术,不保守。 上个月我来到一家新公司上班,月薪20K,这家公司老板人很好,对员工很关爱,公司氛围不错,同事们也努力把公司项目搞搞好。除了那个混日子的10年开发经验的老王(老板小舅子) 由于老板对客户比较负责,业界口碑好,公司的项目越做越大,单子也越来越多,但是很多客户项目要求分布式微服务,因为大部分是金融外贸项目,搞了微服务后,偶尔出现分布式事务不一致性问题...
2022-03-15 13:44:38
1370
原创 OAuth 2.0 的四种方式
OAuth 2.0 的四种方式上一篇介绍了 OAuth 2.0 是一种授权机制,主要用来颁发令牌(token)。本文接着介绍颁发令牌的实务操作。下面我假定,你已经理解了 OAuth 2.0 的含义和设计思想,否则请先阅读这个系列的上一篇文章。RFC 6749OAuth 2.0 的标准是RFC 6749文件。该文件先解释了 OAuth 是什么。OAuth 引入了一个授权层,用来分离两种不同的角色:客户端和资源所有者。......资源所有者同意以后,资源服务器可以向客户端颁发令牌。..
2022-03-12 11:02:43
324
原创 OAuth 2.0 的简单概念解释
OAuth 2.0 的一个简单解释OAuth 2.0是目前最流行的授权机制,用来授权第三方应用,获取用户数据。这个标准比较抽象,使用了很多术语,初学者不容易理解。其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,OAuth 2.0 到底是什么。一、快递员问题我住在一个大型的居民小区。小区有门禁系统。进入的时候需要输入密码。我经常网购和外卖,每天都有快递员来送货。我必须找到一个办法,让快递员通过门禁系统,进入小区。如果我把自己的密码,告诉快.
2022-03-12 10:47:18
372
原创 nacos配置中心提示com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNAVAILABLE: io exceptio
SpringCloud远程连接NACOS报错, 报错显示连接本地localhost:8848 1、问题描述 在一次项目架构中,使用Spring Cloud Alibaba微服务架构,服务发现和配置中心使用的是阿里巴巴开源的组件nacos,nacos-server。一开始使用本地localhost坏境运行一切正常,开发完成...
2022-02-15 11:05:31
23871
1
原创 SpringCloud Spring Cloud Alibaba各个组件对应版本
转自官方GitHub 官方推荐版本地址 截至2021年9月9日 组件版本关系 Spring Cloud Alibaba VersionSentinel VersionNacos VersionRocketMQ VersionDubbo Vers...
2022-02-14 14:46:31
1199
原创 SpringBoot jar启动方式 指定外部yml文件不生效问题
我的目录其中 config是放的是yml文件此时启动命令source /etc/profile && java -Xms1024m -Xmx1024m -XX:+PrintGC -XX:+PrintGCDetails -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8080 -Dcom.sun.management.jmxremote.authenticate=false -Dco..
2021-09-11 15:40:55
4111
1
原创 max-http-header-size 10000000 引发的血案
原因:MAX-HTTP-HEADER-SIZE 引发的一起血案(附:查GC方法)最近在做项目的时候发现其中一个服务出现了性能上的问题,随去查堆内存的使用情况(在cmd命令窗口直接输入Jvisualvm ,然后连上对应的服务即可查看)。查堆内存使用情况打开cmd命令窗口Jvisualvm 查看堆内存使用情况 分析然后找到占用空间的类,当时是byte[]占用99%的空间,然后点开查看实例发现是http占据了绝大部分的空间(如图)。突然...
2021-08-19 21:06:46
1100
原创 MySQL性能评估
一、数据库设计1、表结构设计-表中的自增列(auto_increment属性)推荐使用bigint类型-首选使用非空的唯一键, 其次选择自增列或发号器不使用更新频繁的列,尽量不选择字符串列,不使用UUID MD5 HASH-业务中选择性很少的状态status、类型type等字段推荐使用tinytint或者smallint类型-业务中IP地址字段推荐使用int类型-业务活跃的大表中必须有行数据的创建时间字段create_time和最后更新时间字段update_time-表中所有
2021-08-04 17:33:35
565
原创 解决IDEA编译项目一直报java: 找不到符号 符号: 方法 getUserId()异常
解决办法是发现IDEA没有走指定的maven 走的是默认C:\Users\Administrator\.m2 路径下的maven解决办法:直接删除C:\Users\Administrator\m2 默认文件夹即可 记得刷新项目哦记录解决第二个问题 :在maven构建项目时候发现跟本地Idea编译项目时不一致!表现为 . ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\...
2021-07-31 11:35:37
21112
2
原创 Redis不是一直号称单线程效率也很高吗,为什么又采用多线程了?
Redis是目前广为人知的一个内存数据库,在各个场景中都有着非常丰富的应用,前段时间Redis推出了6.0的版本,在新版本中采用了多线程模型。因为我们公司使用的内存数据库是自研的,按理说我对Redis的关注其实并不算多,但是因为Redis用的比较广泛,所以我需要了解一下这样方便我进行面试。总不能候选人用过Redis,但是我非要问人家阿里的Tair是怎么回事吧。所以,在Redis 6.0 推出之后,我想去了解下为什么采用多线程,现在采用的多线程和以前版本有什么区别?为什么这么晚才使用多线程?R
2021-07-30 14:10:50
390
原创 java8中lambda的用法(map转list,list转map等等)
注意List 使用前需要做非空处理1.以某个属性分组Map<String,List<User>> map= userList.stream().collect(Collectors.groupingBy(User::getName));2.获取集合中的某个属性转为集合pictureList.stream().map(Picture::getSrc).collect(Collectors.toList());3.根据集合中的某个属性进行升序重排roomLis.
2021-07-27 16:41:27
3584
原创 extundelete 文件恢复安装教程
用extundelete恢复Ext文件系统中误删的文件Linux有时候执行了rm -rf等操作误删了文件绝对是一件可怕的事情,好在有一些解决的办法可以临时救急。如果我们的Linux的文件系统属于ext文件系统,那么可以用一款叫做extundelete的工具。工具原理Linux下执行rm并不会真正删除文件,而是将该文件的inode节点所在的数据块释放。在数据块被系统重新分配前,这部分数据还是可以找回来的。因此删除文件后要立即umount这个分区,这样做其实是为了让外界不再写入,当然我们也可..
2021-05-31 17:56:23
1271
原创 java NIO AIO 区别
AIO 是彻底的异步通信。NIO 是同步非阻塞通信。有一个经典的举例。烧开水。假设有这么一个场景,有一排水壶(客户)在烧水。AIO的做法是,每个水壶上装一个开关,当水开了以后会提醒对应的线程去处理。NIO的做法是,叫一个线程不停的循环观察每一个水壶,根据每个水壶当前的状态去处理。BIO的做法是,叫一个线程停留在一个水壶那,直到这个水壶烧开,才去处理下一个水壶。可以看出AIO是最聪明省力,NIO相对省力,叫一个人就能看所有的壶,BIO最愚蠢,劳动力低下。简单的描述一下BIO的服务端通信模型:
2021-03-15 15:15:23
425
原创 Window10 右键菜单卡死 终极解决方案
搬一个贴吧里大神的回答,亲测有效:“ 我也被這問題困擾好幾個月,剛剛一鼓作氣打算解決它,搜尋時看到你跟我有同樣的問題。很幸運地,後來我找到解決方法了,希望你也能順利解決。困擾你我的問題大概是第三方軟體導致,你得先到http://www.nirsoft.net/utils/shexview.html下載一個程式 (進入網頁後按 Ctrl+F 搜尋 Download ShellExView 就可以迅速找到下載的連結)。下載好的壓縮檔解壓縮後,執行 shexview.exe (要以系統管理員身分執行)
2020-12-29 11:07:46
2595
1
转载 理解阻塞非阻塞与同步异步的区别
阻塞”与"非阻塞"与"同步"与“异步"不能简单的从字面理解,提供一个从分布式系统角度的回答。1.同步与异步同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)所谓同步,就是在发出一个*调用*时,在没有得到结果之前,该*调用*就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由*调用者*主动等待这个*调用*的结果。而异步则是相反,*调用*在发出之后,这个调用就直接返回了,所以没有返回结果。换句话说,当一
2020-12-15 15:22:10
70
原创 SpringGateway调用服务 接受不到参数问题
在使用Gateway 调用一个文件上传服务时 前端传来的File的base64字符串怎么都接受不到 但是用Body方式请求就能接收到后来经过各种尝试得知是Tomcat设置了formdata POST的大小限制解决办法tomcat: max-http-post-size: 1024MB哎! 一个bug真的是找了一天 主要刚开始一直以为是网关的问题 各种网关源码调试 而刚好网关的parms为空 导致一直认为是网关某个地方不对 唉 害人啊!网关拦截器调试信息 可以看到确实是null
2020-12-08 18:56:48
2374
8
原创 爬虫中的那些反爬虫措施以及解决方法
在爬虫中遇到反爬虫真的是家常便饭了,这篇博客我想结合我自己的经验将遇到过的那些问题给出来,并给出一些解决方案。1、UserAgent UserAgent的设置能使服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本等信息。对于一些网站来说,它会检查我们发送的请求中所携带的UserAgent字段,如果非浏览器,就会被识别为爬虫,一旦被识别出来, 我们的爬虫也就无法正常爬取数据了。解决方法 收集常见的useragent作为配置文件,每次访问的时候取出一个作为头部发送请求,需要
2020-12-07 11:12:28
5518
8
原创 Feign使用RequestInterceptor拦截器实现路由分发和跳转(动态路由)
获取请求内容最近项目中需要用到feign还要能实现转发,在网上找了很多基本都是一个模板。比如下面这种:https://www.jianshu.com/p/919d066a07aahttps://blog.youkuaiyun.com/xdsm1234/article/details/78834893但是这种写法实际上是url字符串拼接的方式进行转发参数。虽然低级了点,但是大多数情况下也满足我们的需要。最近在使用过程中发现特殊字符在转发之后全变成空格了。比如+&>这些,在业务端都不能正常接收到。在网
2020-11-24 11:24:01
2735
原创 SpringFeign 携带复杂参数 进行文件上传
网上百度了很多办法均太过简单,大多都是携带几个简单的参数和一个File对象,如果将File和其他参数封装到一个对象或者DTO内就不行了网上的例子MultipartFileFeign 无法直接传递文件参数,需要在client端引入几个依赖io.github.openfeign.form:feign-form:3.0.3io.github.openfeign.form:feign-form-spring:3.0.31. 创建服务端方式与普通的文件上传方法一致@Re...
2020-11-19 18:50:29
4199
21
原创 关于 MappedByteBuffer文件句柄释放问题
今天在做大文件上传时遇到了一个bug 多次上传一个大点的文件会出现一个异常 异常表现为核心代码 上传 @Override public void uploadFileByMappedByteBuffer(MultipartFileParam param) throws IOException { //获取文件名称 String fileName = param.getName(); //获取文件上传路径与文件名 S
2020-11-17 14:48:25
1468
原创 Java对Android apk进行编辑 添加渠道标识 等三方信息
前言 项目中的手机客户端需要根据下载用户的不同附带不同的信息,所以就需要在WEB服务器端动态生成APK,于是有了下面的经历。历程 1.一开始的想法就是在APK本身就是个ZIP压缩包嘛,我把他解压缩,在里面中放一个配置文件,然后下载的时候,WEB服务器根据用户信息的不同动态替换这个配置文件,最后重新压缩成apk,然后APP运行的时候,读取这个配置文件就可以了。代码写好了,生成的安装包放手机一安装,安装包解析失败! 2.于是各种找资料,好多博客里面也都写Java动态往APK中添加配置文件,
2020-11-11 16:29:36
1797
19
原创 红旗H5车机安装软件教程
第一步对车机版本进行降级(注意仅限19 20 款H5 18款可不用 升级 直接跳过该步骤) 升级包请移步到下方网盘,包内都有各种版本 请自行选择19 款 20 款对应的包是6093a(系统SM2.12 MCU2.06).rar(软件版本一定要是 2.xxx版本).rar (注意该升级过程请严格按照下方说明来升级,升级失败本人概不负责 只提供方案),最好能找个懂技术的朋友帮忙指导下,因为接下来的破解过程涉及到使用Fiddler抓包软件进行抓包改包,过程较为麻烦 请大家考虑。破解原理:首先18 19 2
2020-10-12 15:24:31
29229
16
原创 Fiddler改包
都知道抓包改包神器BurpSuite,对于我们想知道一些网站的登陆参数的时候,经常需要通过代理来拦截HTTP、HTTPS请求,但是当我们遇到手机APP的时候就突然懵逼了。本文介绍了Fiddler如何实现BurpSuite的功能,并轻松的抓到手机中各大厂家的APP的流量,发现很多厂家对手机APP安全非常重视。最后介绍,通过Fiddler对静默的手机进行进行抓包,轻松判断手机是否中毒。0x1、使用Fiddler抓取网站流量步骤一:登陆官网下载并安装Fiddler(https://www.telerik.
2020-09-24 10:11:15
3237
原创 使用Fiddler进行抓包
正文在上一篇中介绍了Fiddler的基本使用方法。通过上一篇的操作我们可以直接抓取浏览器的数据包。但在APP测试中,我们需要抓取手机APP上的数据包,应该怎么操作呢?Andriod配置方法1)确保手机和Fiddler所在主机在同一个局域网中2)获取Fiddler所在主机的ip地址,通过cmd命令进入命令编辑器,输入ipconfig -all,找到IPv4地址,记下该地址3)对手机所连接的无线网络进行设置,点击WLAN,长按与Fiddler所在主机在同一个局域网的wifi,长按点.
2020-09-24 10:05:03
2483
原创 MySQL 主从同步percona-toolkit工具(数据一致性监测、延迟监控)使用梳理
在mysql工作中接触最多的就是mysql replication,mysql在复制方面还是会有一些常规问题,比如主库宕机或者从库宕机有可能会导致复制中断,通常需要进行人为修复,或者很多时候需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样。这种情况下就需要使用percona-toolkit工具的pt-table-checksum组件来检查主从数据的一致性;如果发现不一致的数据,可以通过pt-table-sync修复;还可以通过pt-heartbeat监控主从复制延迟。当然如果数据量小,sla
2020-08-18 09:51:31
933
1
原创 阿里云诊断工具Arthas的简单使用
一。 安装切换到要诊断的jdk使用的用户:su - test安装 arthas :curl -L https://alibaba.github.io/arthas/install.sh | sh查看java进程的pid :ps -ef | grep java对此pid执行 as.sh命令./as.sh pid出现以下界面表示运行成功:输入 dashboard命令就可以查看当前 系统的实时数据面板二。 下面是一些基本命...
2020-07-14 16:17:44
1605
原创 JVM日志分析
JVM故障分析及性能优化系列之四:jstack生成的Thread Dump日志线程状态2017年10月25日Jet MaJavaPlatformJVM故障分析及性能优化系列文章JVM故障分析及性能优化系列之一:使用jstack定位线程堆栈信息JVM故障分析及性能优化系列之二:jstack生成的Thread Dump日志结构解析JVM故障分析及性能优化系列之三:jstat命令的使用及VM Thread分析JVM故障分析及性能优化系列之四:jstack生成的Thread Dump日志线程状...
2020-06-24 17:44:10
635
原创 JAVA代理模式详解
代理模式(Proxy)是通过代理对象访问目标对象,这样可以在目标对象基础上增强额外的功能,如添加权限,访问控制和审计等功能。代理模式代理(Proxy)模式结构图Java代理分为静态代理和动态代理和Cglib代理,下面进行逐个说明。1.静态代理接口类AdminService.java接口package com.lance.proxy.demo.service;public interface AdminService { void update();..
2020-06-11 16:49:50
332
原创 jvisualvm 工具使用
VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带(java启动时不需要特定参数,监控工具在bin/jvisualvm.exe)。 https://visualvm.dev.java.net/ 一、介绍VisualVM,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的). 从界面上...
2020-05-15 18:10:32
1322
原创 书香笔墨伏案处,忽闻远客踏寒来,一壶浊酒相对坐,烛火星光侃人生!
往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是思想?答:脸蛋身材决定了男生是否想去了解她的思想,思想决定了男生是否会一票否决掉她的脸蛋身材。问:现在有很多少儿编程的课,该去学吗?“别让孩子输在起跑线上”有道理吗?答:一辈子都要和别人去比较,是人生悲剧的源头。问:做哪些事情,可以提升系统架构品质?答:断舍离,定期删东西,重构。加的东西越多,系统越复杂,质量越低。问:你心中“完美
2020-05-14 11:06:33
328
jQuery大神进来小弟感激不尽都是猿帮帮忙吧
2016-05-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人