Java春招面试题解答系列:设计一个高并发系统

1 为什么面试官爱问这种面试题?

  • 因为招聘中大家都有这个要求。

技术强的人,在互联网公司肯定负责过高并发模块,那夺取offer太简单了。可惜大部分初级工程师甚至高并发代码都没想过怎么写!
不是说只要用个redis缓存,用个mq异步削峰就搞定了!真实的要复杂很多倍。

面试官问你如何设计一个高并发系统,其实多半是因为知道你没干过高并发。看你简历也没啥特别的,所以就问问你,如何设计。就是想考察你是否有技术储备。

最好是招聘个真正有高并发经验的,但众所周知国内缺乏这种中高级开发。所以退而求其次,招个至少研究过的,也比招个啥想法也没有的好。

话不多说,开始干货输出,来看如何回答该问题!

2 服务拆分

将一个服务拆为多个服务。每个服务单独连一个数据库,这样原本只有一个库的,现在有多个数据库,最容易做到的抗高并发。即微服务架构。

3 缓存

高并发场景,大多读多写少,可以在数据库和缓存里都写一份,然后读时大量走缓存。

而Redis轻轻松松单机几万并发,所有系统都有缓存中间件。所以考虑在你的项目中,让承载主要请求的读场景,使用缓存来抗吧。

4 消息队列

可能还是会出现高并发写场景(秒杀场景)。那绝对搞挂你的系

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值