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版本匹配

相关推荐
EMA1 小时前
Docker虚拟化失败解决方案
架构
李斯维2 小时前
从历史的角度看 Android 软件架构
android·架构·android jetpack
JouYY4 小时前
聊一下多 Agent 编排架构的应用实践
架构·llm·agent
Sunia4 小时前
《AgentX 专栏》10-生产部署:3台2C4G云服务器把企业级Agent真正跑起来的完整方案
java·架构
ZhengEnCi1 天前
Q01-高并发点赞系统架构设计
架构
笨鸟飞不快1 天前
从 MVC 到 DDD:一次真实的渐进式迁移实录
后端·架构
这个DBA有点耶2 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
锋行天下2 天前
我试图优化 Vite 的拆包,结果首屏慢了 10 倍
前端·vue.js·架构
小鼻子的猫2 天前
独立开发 30 天:2.5 万行代码,23 个 Bug,5 次重构——一个 AI 社区的诞生
架构