JPackage指令将可执行Jar包打包成EXE运行程序和MSI安装程序
事先准备 JPackage指令是JAVA 14新增的,所以安装的JAVA版本必须14+; Windows系统下使用Jpackage指令需要先下载并安装 WiX.exe 软件,版本3.11及以上,并配置好环境变量; jar包打包成EXE的前提是jar包可以用java -jar XXX.jar的方式直接运行。 使用Jpackage指令但未安装…
spring cloud的feign熔断策略不生效
1、问题目前定义feignClient有熔断回调执行方法 然后自己想的是可以程序如果执行方法错误,是可以进入熔断方法。 参考网上的配置开启熔断开启 feign.hystrix.enabled=true 好的启动,但是发现服务关闭还是不生效。然后改配置Client改为fallback进行生效了。对产生了疑问好奇怪,fallback模式可以,…
Spring Boot 配置文件这样加密,才足够安全!
1. 前景 在使用Springboot时,通常很多信息都是在application.yml中直接明文配置的,比如数据库链接信息,redis链接信息等等。但是这样是不安全的。 所以需要对敏感数据进行加密,这样防止密码泄露 Jasypt这个库为我们解决了这个问题,实现了springboot配置的自定加密加密 2. 简单使用 源码对应地址: h…
针对springcloud 熔断与feign调用方式结合,fallback不生效的问题
针对springcloud 熔断与feign调用方式结合,fallback不生效的问题 最近自己在搭springcloud微服务的架构,在搭建过程中测试熔断功能踩了一个小坑,困扰了几个小时,最后终于解决了,下面我简单说明一下解决思路,话不多说先贴代码。 Controller RestController @RequestMapping("…
RabbitMQ实现订单超时案例
前言 人间清醒 目录 业务场景 用戶在购买商品的时候通常会预购然后没付款,没付款的订单通常会被设置一个自动超时时间如30分钟后超时,所以我们要在订单到30分钟后自动将超时的订单取消。 JUC(DelayQueue)方案 DelayQueue简介 DelayQueue是java并发包下的延时阻塞队列,常用于实现定时任务。 DelayQueu…
「实践总结」订单超时自动取消
在进行开发的过程中,在开发的时候,有遇到相关的延时支付相关的问题,在解决延时支付的相关的问题的时候,会有很多种的解决办法,现在就讲对应的解决办法先进行相关的总结操作; 「引言」 在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单 30 分钟未支付,则自动取消 生成订单 60 秒后,给用户发短信 对上述的任务,我们给一个专业的名字来…
订单超时怎么处理?阿里用这种方案
背景 在企业的商业活动中,订单是指交易双方的产品或服务交易意向。交易下单负责创建这个交易双方的产品或服务交易意向,有了这个意向后,买方可以付款,卖方可以发货。 在电商场景下,买卖双方没有面对面交易,许多情况下需要通过超时处理自动关闭订单,下面是一个订单的流程: 如上图所示,一个订单流程中有许多环节要用到超时处理,包括但不限于: 买家超时未…
Springboot集成-ClickHouse
1、clickhouse应⽤场景1.绝大多数请求都是用于读访问的2.数据需要以大批次(大于1000行)进行更新,而不是单行更新;或者根本没有更新操作3.数据只是添加到数据库,没有必要修改4.读取数据时,会从数据库中提取出大量的行,但只用到一小部分列5.表很“宽”,即表中包含大量的列6.查询频率相对较低(通常每台服务器每秒查询数百次或更少)…
ClickHouse深度解析
 一、什么是ClickHouse?ClickHouse由俄罗斯第一大搜索引擎Yandex于2016年6月发布, 开发语言为C++,ClickHouse是一个面向联机分析处理(OLAP)的开源的面向列式存储的DBMS,简称CK, 与Hadoop、Spark这些巨无霸组件相比,ClickHouse很轻量级,查询性能非常好,…
clickhouse分区设计操作以及优化
一、分区设计 1.使用类型   1)不指定分区键   如果建表时不指定分区键,则数据默认不分区,所有数据写到一个默认分区all里面。   2)使用整型   如果分区键取值属于整型且无法转换为日期类型YYYVYMMDD格式,则直接按照该整型的字符形式输出作为分区ID的取值。   3)使用日期类型   如果分区键取值属于日期类型,或者是能够转…