- 博客(29)
- 收藏
- 关注
原创 m1芯片使用sass版本问题
1.版本对应node版本 14.0.0sass版本 ^1.52.1sass-loader版本:^7.3.1以上版本对应,亲测可以😀2.node版本升降级如果node版本太高可以降版本先安装 n模块用来node升降级(只有mac和linux可以安装)sudo npm i -g n查看安装的node版本n ls切换版本sudo n 14.0.03. sass和sass-loader安装不要安装node-sass,直接安装sassnpm i sass -dsass-l
2022-05-29 22:03:02
999
原创 docker stack使用
1.docker stack解决什么问题?docker stack 相当于 docker-compose和docker swarm相结合,容器编排集群部署2.使用方法1.先创建两个简单springboot项目(java计数器) test1和test2,分别创建对应的Dockerfile文件test1@RestControllerpublic class HelloController { @Autowired private StringRedisTemplate redis
2022-05-21 21:26:46
677
原创 docker swarm
manager节点至少配置3台,因为主节点>1台时候集群才可用1.这里假设有4台服务器 docker 1 2 3 4 来创建一个swarm集群,这四台服务器在一个安全组内,内网之间是可以ping通的集群有manager节点和worker节点1.创建集群在docker1执行以下命令让其成为manager节点docker swarm init docker swarm init --advertise-addr 服务器内网ip地址2.使用docker swarm join命令让其他节点加入
2022-05-21 17:42:28
434
原创 AspectJ中JoinPoint和ProceedingJoinPoint注解的使用
概念Joint PointJointPoint是程序运行过程中可识别的点,这个点可以用来作为AOP切入点。JointPoint对象则包含了和切入相关的很多信息。比如切入点的对象,方法,属性等。我们可以通过反射的方式获取这些点的状态和信息,用于追踪tracing和记录logging应用信息。Pointcutpointcut 是一种程序结构和规则,它用于选取join point并收集这些point的上下文信息。pointcut通常包含了一系列的Joint Point,我们可以通过pointcut来同时
2022-05-07 12:08:03
3171
原创 微信付款码支付
1.微信付款码支付,相比微信小程序支付和微信Native支付,不用传trade_type,需要多传一个auth_code(付款码code) ,调用微信支付sdk的microPay()方法2.频繁使用付款码支付的话会让输入密码,输入密码的同时扫码付款不会阻塞住而是会直接返回付款失败,这时候需要重新扫码付款,如果用户扣款成功了,商户会显示付款成功后端代码@PostMapping("/scanCodePayOrder") @ApiOperation("微信扫码支付") public R s
2022-05-02 12:29:55
1852
原创 微信native支付
微信native支付同样调用微信统一下单api,返回prepay_id (支付订单id) 和code_url(扫码支付的链接),把code_url返回给前端,前端生成二维码,用户扫码支付,也可以后端生成@PostMapping("/nativePayOrder") @ApiOperation("微信Native支付") public R nativePayOrder(@RequestBody PayOrderForm form, @RequestHeader HashMap<Stri
2022-05-01 20:18:38
2506
2
原创 解决在linux环境下启动jar时提示no main manifest attribute, in /xxxxx.jar异常
在pom文件中添加以下内容 重新打包即可<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <
2022-04-09 21:44:18
564
原创 springboot配置knife4j
1.添加依赖 <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>3.0.3</version> </dependency>2.添加配置
2021-10-26 22:49:54
1073
原创 秒杀情况下,用户下单扣除库存创建订单之后,迟迟不付款,时间到了自动取消订单(思路)
秒杀情况下,用户下单扣除库存创建订单之后,迟迟不付款,时间到了自动取消订单解决方案1. 使用redis实现1.下单之后把生成分布式全局唯一id,把订单id放进redis中,设置一个过期时间2.定义一个redis监听器,监听所有的key,一旦有key过期,就会调用实现的方法public class RedisKeyExpirationListener extends KeyExpirationEventMessageListener { @Autowired private Pa
2021-06-03 16:36:35
1915
原创 centos集群上设置ssh免密登陆
centos上设置ssh免密登陆定义目录标题)1.设置hosts在每台机器上执行以下操作vim /etc/hosts添加以下内容ip 别名例如以下(ip改成自己的ip)1.之后选择worker1,上面生成秘钥,ssh-keygen -t rsa默认在 ~/.ssh目录生成两个文件:id_rsa :私钥id_rsa.pub :公钥2.把公钥导入本地认证文件,cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
2021-05-09 21:32:30
210
原创 curator(zookeeper)实现分布式锁简单代码
curator是对zookeeper进行了封装,可以实现分布式锁功能1.基本原理,zookeeper是dataTree结构,每个节点是一个znode,znode有四种类型,持久节点(客户端断开连接后znode不会删除),临时节点(客户端断开连接后znode删除)持久顺序节点(创建节点时,Zookeeper会根据创建的时间顺序给该节点名称进行编号,持久的)临时顺序节点(创建节点时,Zookeeper会根据创建的时间顺序给该节点名称进行编号,临时的)分布式锁就是利用了其中的临时顺序节点来实现的,原理
2021-04-28 11:54:36
489
原创 redission实现分布式锁(文字少,都是代码)
redission实现分布式锁(文字少,都是代码)redission是最好用的客户端,底层由netty实现,可以说是一个可以操作redis的框架,实现很多功能,包括分布式锁,本章让我们看一下分布式锁怎么实现1.创建一个springboot工程,导入maven依赖, 创建application.yml并添加配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"
2021-04-28 11:22:33
557
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人