1.微服务

商城项目源码地址 https://gitee.com/huyi612/hmall

使用jmeter测试高并发

传统单体项目的弊端

**案例:**如果某一个请求耗时太长会把tomcat的资源给占完了,导致其他请求进来耗时更长,甚至无法进入。

java 复制代码
@RestController
@RequestMapping("hi")
public class HelloController {

    private final Map<String, AtomicInteger> countMap = new HashMap<>();

    @GetMapping
    public String hello(HttpServletRequest request) throws InterruptedException {
        Thread.sleep(300);
        String ip = request.getRemoteAddr();
        AtomicInteger ai = countMap.get(ip);
        if (ai == null) {
            ai = new AtomicInteger(0);
            countMap.put(ip, ai);
        }
        return String.format("<h5>欢迎访问商城, 这是您第%d次访问<h5>", ai.incrementAndGet());
    }
}

微服务划分

按照业务划分微服务,例如:商品服务、用户服务、交易服务、购物车服务等。

springcloud基于springboot的依赖注入和自动装配功能。

springboot与springcloud版本匹配

相关推荐
wuxuanok1 天前
Debug —— 部署微服务中微服务的配置文件及本地注册Nacos没问题但部署到Docker中就注册失败
docker·微服务·架构
猪猪拆迁队1 天前
前端图形引擎架构设计:双引擎架构设计
前端·后端·架构
俞凡2 天前
[大厂实践] 超越极限:利用路由服务器实现稳定集群
架构
小毅&Nora2 天前
【云计算】【Kubernetes】 ① K8S的架构、应用及源码解析 - 核心架构与组件全景图
架构·kubernetes·云计算
百***65952 天前
PON架构(全光网络)
网络·数据库·架构
快递鸟2 天前
小程序开发之物流打单API接口预留解决方案:规避返工,高效对接
架构
帅锅锅0072 天前
Android 源码学习之init进程
android·架构·操作系统
wanhengidc2 天前
云手机的网络架构
服务器·网络·游戏·智能手机·架构·云计算
xinyu_Jina2 天前
WebRTC的P2P实践:局域网文件传输中的信令、ICE与DataChannel架构解析
架构·webrtc·p2p