金三银四招聘季,很多小伙伴最近都在经历着或者准备着面试。而在现在的互联网企业的大部分面试中,始终围绕着互联网的三高架构来展开。
互联网三高架构:高并发、高性能、高可用,简称三高(3H)
很多时候,面试官一句:在工作中如何处理高并发可能就结束了整场面试!
那么,构建一个三高的系统,到底可以从哪些方面下手呢。
小编为您总结了一下,大概可以从以下方面入手:横向分层、纵向分割、分布式化、集群化、使用缓存、使用异步模式、使用冗余、自动化(发布、部署、监控)。
具体来说,可以在不同层次常用的技术有:
前端
浏览器优化技术:合理布局,页面缓存,减少http请求数,页面压缩,减少 cookie 传输。
CDN
DNS负载均衡
动静分离
动态图片独立提供服务
反向代理
应用层架构
业务拆分
负载均衡
虚拟化服务器、容器化
无状态(以及分布式 Session)
分布式缓存
异步、事件驱动架构、消息队列
多线程
动态页面静态化
服务层架构
分布式微服务(分级管理,超时设置,异步调用,服务降级,幂等性设计。)
同应用层架构
存储层架构
DFS
关系数据库路由
No SQL 数据库
数据同步
数据冗余
安全架构
Web攻击(XSS、Sql Injection)
数据加密
密钥管理
发布、运维
自动化测试与发布
灰度发布
浏览器数据采集
服务器业务数据采集
服务器性能数据采集
系统监控
系统报警
机房
散热、省电、定制服务器
以上,就是建设互联网三高架构可能涉及到的知识点,很多人可能并没有办法考虑的很全面。(参考资料:https://www.cnblogs.com/zgynhqf/p/9853591.html)
很多同学在技术生涯最初几年都会沉浸在业务开发中,忽视了对系统知识的梳理和技术视野的扩展。日复一日,导致很多同学就以为这就是技术的全部,同时在重复的体力劳动中也丧失了对技术细节的深入探讨。
技术的突破需要依赖业务场景的需求和自身刻意的规划学习,二者缺一不可,但前者是机会,往往不是自己能完全把控的,如果在自己工作中没有实践场景,最好的办法就是系统的学习与梳理,为自己制定一个不同时间段的发展道路,待机会来临时就能一展身手。
给大家推荐一个免费的交流群:851531810,可以在自己的业余时间通过学习的方式弥补自己在实践方面的不足。











网友评论