金九银十招聘季,很多小伙伴最近都在经历着或者准备着面试。而在现在的互联网企业的大部分面试中,始终围绕着互联网的三高架构来展开。
互联网三高架构:高并发、高性能、高可用,简称三高(3H)
很多时候,面试官一句:在工作中如何处理高并发可能就结束了整场面试!
那么,构建一个三高的系统,到底可以从哪些方面下手呢。
小编为您总结了一下,大概可以从以下方面入手:横向分层、纵向分割、分布式化、集群化、使用缓存、使用异步模式、使用冗余、自动化(发布、部署、监控)。
具体来说,可以在不同层次常用的技术有:
前端
- 浏览器优化技术:合理布局,页面缓存,减少http请求数,页面压缩,减少 cookie 传输。
- CDN
- DNS负载均衡
- 动静分离
- 动态图片独立提供服务
- 反向代理
应用层架构
- 业务拆分
- 负载均衡
- 虚拟化服务器、容器化
- 无状态(以及分布式 Session)
- 分布式缓存
- 异步、事件驱动架构、消息队列
- 多线程
- 动态页面静态化
服务层架构
- 分布式微服务(分级管理,超时设置,异步调用,服务降级,幂等性设计。)
- 同应用层架构
存储层架构
- DFS
- 关系数据库路由
- No SQL 数据库
- 数据同步
- 数据冗余