- 博客(15)
- 收藏
- 关注
转载 阿里云ECS使用Alibaba Cloud Linux无法使用国内镜像的问题
参考文献:阿里云官方文档 主要原因是版本号的问题,yum在拉取镜像前会校验版本号,而阿里云自带的linux刚巧和原生CentOS不一样导致发生404异常,文档中已经说的很清晰了,备份好repo文件以后就可以尝试进行文档中的配置,就可以正常使用自定义的yum镜像源进行软件的安装了。 ...
2021-06-22 18:07:25
1063
原创 springboot+flyway整合示例以及优雅的解决加载顺序
springboot+flyway整合示例以及优雅的解决加载顺序 flyway是一个挺好用的数据库迁移工具,并且能够帮你进行版本管理 将flyway整合进springboot相当简单,总共三步: 引入maven依赖 添加flyway配置 在指定的路径下编写sql脚本 启动项目,程序将自动为你依照版本执行脚本 详细操作参见各种前辈的文档 (参考文档1)[https://blog.csdn.net/qq_38455201/article/details/103493041] (参考文档2)[https://j
2021-03-16 19:19:25
1538
原创 springboot编译为jar包后读取类路径文件失败解决办法
背景 自己之前踩过这个坑,没做记录,这又忘了,又踩一次,虽然踩的点不一样,但终归是又掉进同一个坑。。。 最近发布版本,自己有一些写死的基础文件在类路径的resource中,正常在开发环境是没有问题的,但是生产环境直接挂掉,报出如下异常 java.lang.IllegalArgumentException: URI is not hierarchical 呐,没有道理啊,发布过很多次版本了,咋这次就给挂了?当时想着会不会是因为升级了依赖版本问题,于是乎去搜了一下相关异常的报错文献。 直到我看到参考文献2,抄
2021-03-10 16:06:29
1367
原创 阿里云RocketMQ HTTP SDK 生产者与消者的费动态管理解决方案
阿里云RocketMQ HTTP SDK 生产者与消者的费动态管理解决方案 目前已经支持基本的生产消费,并自己实现了异常重试和死信的功能,自己在开发中运行尚可,如果本项目有帮到你,欢迎大fork和给星。 项目地址: https://github.com/WilliamChen-luckbob/Aliyun-RocketMq-FlexMessageCenter 功能介绍: 基于阿里云RocketMQ,在不停机,不修改代码的情况下,用户在阿里云管理控制台设定新的消息配置完毕后,只需直接将相关配置参数写入数据库的
2021-03-08 23:35:41
1473
原创 RestTemplate请求头默认application/xml 导致响应中的json数据解析失败的问题
问题描述: 有旧版本服务A和新版本服务B,两个服务的功能一致 旧的网关G,新的网关C,资源服务D。 由于历史遗留问题,服务A需要请求旧网关G上的controller并由G提供一些计算服务,在新版本的网关中我将这些服务抽取出来让网关只做路由功能,由于向下兼容的需要,我将网关C加入controller并使用feign直接转发到服务D,同时对这些历史遗留的接口用AOP进行单独管理。 在联调测试中发现一个问题: 服务A与B的逻辑完全一致,使用如下的restTemplate进行访问: public User getU
2021-01-05 19:13:09
2815
原创 JPA驼峰命名转下划线的一个坑
JPA的多数据源配置方法及驼峰命名转下划线的一个坑 这里给一个方案,虽然JPA即将被我弃用换成mybatis-plus,但这个问题还是记录一下,以免以后又重构带JPA的老系统踩坑: yml配置 spring: datasource: fist-base: driver-class-name: com.mysql.cj.jdbc.Driver jdbc-url: 主数据源url username: root password: 66666666666
2020-12-04 18:35:02
1994
转载 shiro+jwt实现无状态鉴权
Shiro+JWT实现无状态鉴权 转载自简书 coderymy 大神的文章 原文地址 https://www.jianshu.com/p/9b6eb3308294 技术选型: 原有的鉴权是通过单一Shiro+redis,保存用户的SessionId来完成的,单机环境提供服务完全没有问题。由于萌新手贱搭建服务集群,突然就遇到了一个问题: 用户操作被莫名的中断并拒绝,弹回登录界面。 在大致了解了SessionId的生成原理后,了解了负载均衡到不同的服务器时,直接导致sessionId发生变化,可能由于当初老大
2020-11-19 17:13:01
621
原创 线程池的一些注意事项和我的理解
线程池的一些注意事项和我的理解 线程池用于杜绝频繁创建和销毁线程的多线程场景下堆内存的损耗。 线程池的创建一般推荐用ThreadPoolExecutor进行创建。 合理设置核心线程数,正确的压榨机器性能 一般情况下: 经常IO的,可以设置2 x CPU核数 经常CPU计算的,可以设置 CPU核数 + 1 给业务线程一个名字以免自己调试时懵逼 比如处理类的私有变量带一个名称属性,或者使用自定义的线程工厂 七大参数 1. 核心线程数 如果设为0,那么当线程进入时,将会至少创建一个非核心线程进
2020-11-19 10:58:07
1070
原创 Docker修改默认的存储路径
Docker容器内数据过多的处理办法 这应该是一个偏运维的知识,anyway,不管啥途径,学到的都是自己的,记录一下自己的操作。 正常情况下我们公司做开发的都是拿着linux机器就是一顿无脑安装各种奇奇怪怪的东西,啥都在默认的目录中完成。 直到有一台带磁盘分区实体机爆炸… 才发现明明几个T的存储空间,数据量才撑死50G,咋可能就爆了呢? 后来才知道,原来我们从架构到开发都不知道原来linux也是可以像windows一样去做磁盘分区的,嗯,流下了没有技术的眼泪。 没有人去主动解决这个问题,又没有运维,大家都在
2020-11-11 16:51:14
237
1
原创 基于ClassLoader的简单自定义类加载器
一、实现方法 最近excel工具包正在研究如何动态注入模板文件,妄图实现的功能是实现对正在运行的代码进行不停机的模板注入,顺便也加深自己对反射的理解,使用了一下自定义的类加载器。 后续可能还会加入支持数据库表的自定义模板。 核心思想,继承ClassLoader并重写findClass方法 原有的ClassLoader中,如果我们能够在类路径下找到相应的类,是可以使用Class.LoadClass直接反射的,如果找不到,就会在findClass这里抛出异常。 protected Class<?>
2020-11-11 15:17:52
253
原创 springcloud+nacos+seata分布式事务搭建
使用docker部署seata服务端集成springcloud项目实现高可用的分布式事务 本来以为可以面向百度,结果面向百度没一个好使的教程,这里萌新两天时间里踩了无数的坑,终于整理出来了一套适合自己的分布式事务功能。先顶上自己的分布式项目,有空再研究最新版要怎么配置。最近萌新也在找工作,坐标深圳,欢迎大佬们一起交流。 官方文档 http://seata.io/zh-cn/docs/ops/deploy-ha.html 1. 基础准备 docker环境 mysql nacos 2. 基础表建立 为seata
2020-11-06 17:39:53
3955
1
原创 多线程中消费者-生产者问题与假唤醒问题
多线程中消费者-生产者问题与假唤醒问题 参考文献: 狂神说 https://www.cnblogs.com/hellokuangshen/ java编程思想 jdk1.8文档 synchronized方法出现的生产者-消费者问题 根据大佬的思路,整理了一下自己对产生假唤醒的理解如下: 虚假唤醒,就是在不该执行的时候,线程被唤醒并执行了不应该被执行的代码,就如下代码所示,本意是0与1之间互相切换,但事实上并非如此。 利用sychronized关键字产生假唤醒的代码 package 虚假唤醒; /** *
2020-10-30 17:10:17
166
原创 jdk1.8之stream流处理及函数式变成的一个简单应用
stream特性的简单应用:敏感词筛查的性能对比 需求描述: 用户输入一组可能带有敏感词的数据,将这组数据与敏感词进行比较,如果包含任何敏感词汇,将符合条件的数据标记出来。 实现方法: 将敏感词表从数据库中找出来,使用stream.filter进行对比。 可见,filter.findany效率远远高于count>0。代码如下: public static void main(String[] args) { Map<String, String> map = new HashMap
2020-10-30 17:02:55
259
原创 多线程中的事务问题
多线程中多个线程插入,一个异常全部回滚的问题 目前萌新还在学习阶段,今天优化一个批量写订单的场景,我们给数据库写一堆订单,但是订单是我们这边的一个总单拆出来的,之前的写法是直接拆单循环处理,单次循环写入为0.3秒,如果我方订单拆开,那么我们的总单拆成10个子单,直接循环同步推送就3-6秒,这个是不可接受的。 所以第一考虑就是使用多线程分别将各个订单进行推送,并且一个报错,所有线程回滚。 一开始总感觉能用一个事务处理所有的线程,但是凭借自己对@transactional的底层实现和编程事务的比较浅显的认识没有
2020-10-21 20:28:38
8632
5
原创 C#从压缩包中直接读取流
C#直接读取压缩文件 参考文献 第三方dll使用: https://blog.csdn.net/weixin_34161064/article/details/94750829?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_re...
2020-04-12 18:29:51
4543
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅