摘要:1 业务说明 本案例通过hmily框架实现TCC分布式事务,模拟两个账户的转账交易过程。两个账户分别在不同的银行(张三在bank1、李四在bank2),bank1、bank2是两个微服务。对于交易过程中的每个操作,要么都 成功,要么都失败。 2 环境搭建 2.1 环境要求 数据库:MySQL 5.7
        
阅读全文
 
        
     
    
        
        
摘要:一、前言 在我们后端开发中,必不可少的是接口的交接,有很多种方式,常见的就是swagger,不过这个侵入性太强了。还有就是接口文档的框架,比如今天小编带大家一起搭建的yapi,在公司还是挺常见的!今天小编就大家从搭建到使用,详细的教学一波哈!! 二、介绍 1. 平台介绍 YApi 是高效、易用、功能
        
阅读全文
 
        
     
    
        
        
摘要:原文:blog.csdn.net/zxd1435513775/article/details/122643285 1.引言 高并发场景在现场的日常工作中很常见,特别是在互联网公司中,这篇文章就来通过秒杀商品来模拟高并发的场景。文章末尾会附上文章的所有代码、脚本和测试用例。 本文环境: SpringB
        
阅读全文
 
        
     
    
        
        
摘要:C 强一致:主写_从读锁 A 可用:主写_从读 P 分区容错:主写_从读备区 网络分区.子网.异步.备节点. 分布必备Base: 可用(基本):核心可用 软状态:中间态 一致:最终
        
阅读全文
 
        
     
    
        
        
摘要:一、config-server git https://github.com/huanzi-qch/config-server/blob/master/myspringboot-dev.properties 二、configServer[2063] 1、pom.xml <properties> <j
        
阅读全文
 
        
     
    
        
        
摘要:一、生产者【2062】 1、pom.xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-stream-rabbit</artifactId> <version>3
        
阅读全文
 
        
     
    
        
        
摘要:一、binders绑定器 绑定器:default-binder==> test rabbbit > Exchanges:testRabbit 注:kafka >topic:XXXXXX 二、MQ生产者 1、pom.xml <properties> <java.version>1.8</java.ve
        
阅读全文
 
        
     
    
        
        
摘要:我们知道,当微服务越来越来多的时候,仅仅是feign的http调用方式已经满足不了我们的使用场景了。这个时候系统就需要接入消息中间件了。相比较于传统的Spring项目、SpringBoot项目使用消息中间件的很多配置不同,SpringCloud Stream抽象了中间件产品的不同,在SpringCl
        
阅读全文
 
        
     
    
        
        
摘要:1、pom.xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <depe
        
阅读全文
 
        
     
    
        
        
摘要:一、ek20141、pom.xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </depe
        
阅读全文
 
        
     
    
        
        
摘要:一般情况下,首页的并发量是比较大的,即使有了多级缓存,如果有大量恶意的请求,也会对系统造成影响。而限流就是保护措施之一。 nginx提供两种限流的方式: 一是控制速率 二是控制并发连接数 控制速率# 控制速率的方式之一就是采用漏桶算法。 漏桶算法实现控制速率限流# 漏桶(Leaky Bucket)算
        
阅读全文
 
        
     
    
        
        
摘要:线程池实现服务隔离 问题分析# 在微服务架构中,我们将业务拆分成一个个的服务,服务与服务之间可以相互调用,由于网络原因或者自身的原因,服务并不能保证服务的100%可用,如果单个服务出现问题,调用这个服务就会出现网络延迟,此时若有大量的网络涌入,会形成任务累计,导致服务瘫痪。 在SpringBoot程
        
阅读全文