摘要:
《人月神话》中提到,软件世界没有“银弹”,这句话当然适用于架构领域 从网络、性能、运维成本、组织架构与集成测试五个方面分别进行阐述。 第一点,跨进程通信带来的新问题。 单体应用是在单机中进行进程内通信,通信稳定性相当好。但是打散为分布式系统后,变为进程间通信,往往这个过程还伴随着跨设备的网络访问 第 阅读全文
posted @ 2023-03-15 16:45
jiaozg
阅读(58)
评论(0)
推荐(0)
摘要:
微服务架构风格是一种将单机应用程序开发为一组小型服务的方法,每个小服务运行在自己的进程中,并以轻量级的机制来进行通信。这些服务围绕着业务能力所建立,并且由完全自动化的部署机构独立部署,这些服务的集中管理只有最低限度,可以用不同的编程语言编写并使用不同的数据库存储技术。 任何架构都不是一蹴而就的,每一 阅读全文
posted @ 2023-03-15 15:21
jiaozg
阅读(36)
评论(0)
推荐(0)
摘要:
相比于形式,思维过程最为重要 不仅要关注专业技术(术),还要有自己的分析能力(道),并且要懂得顺势而为(势)。 思考 的思维是敏感的,通过敏感驱动思考,通过思考驱动学习和总结,直至敏锐。这确实需要大量的练习,它也是一个潜移默化的过程,最终你会因为这个习惯受益一生。 表达 良好的表达能力,无论是和同事 阅读全文
posted @ 2023-03-15 14:02
jiaozg
阅读(176)
评论(0)
推荐(0)
摘要:
能力 基础技术架构:这部分是纯技术架构,所有非功能性的技术都是基础技术的范畴。 业务架构:在业务场景下对业务需求的抽象。 开发技能:这是架构师落地架构的能力。 把握系统技术 在需求分析阶段:架构师对于业务架构,要给出一个合理的需求分析抽象模型。 在架构设计和架构选型阶段:架构师要充分考虑技术的合理性 阅读全文
posted @ 2023-03-15 13:55
jiaozg
阅读(64)
评论(0)
推荐(0)
摘要:
全链路的视角上进行高性能的设计 前端优化 减少请求次数、页面静态化、边缘计算。 减少请求次数 增加缓存控制:前端研发同学经常会设置 HTML 的缓存控制头部(Cache-Control 头),这样浏览器在请求同一个文件时,只访问本地保存的资源副本,从而加速文件的访问速度。 减少图像的请求次数:你可能 阅读全文
posted @ 2023-03-15 11:43
jiaozg
阅读(43)
评论(0)
推荐(0)
摘要:
系统建立的会话数量就是用户同时访问系统的数量。你也可以通过公式,估算出系统的吞吐量(throughput)和延迟(latency)。 吞吐量(系统处理请求的速率):反映单位时间内处理请求的能力(单位一般是TPS或QPS)。 延迟(响应时间):从客户端发送请求到接收响应的时间(单位一般是ms、s)。 阅读全文
posted @ 2023-03-15 11:11
jiaozg
阅读(265)
评论(0)
推荐(0)
摘要:
一次系统查询的流程经历了三次调用,从网关系统开始,然后依次调用商品系统、促销系统、积分系统的三个服务,如果此时积分系统的响应时间变长,那么整条请求的响应时间也会因此变长,整体服务甚至会发生宕机。这就是服务雪崩现象:即局部故障最终导致了全局故障。 在分布式系统中,当检测到某一个系统或服务响应时长出现异 阅读全文
posted @ 2023-03-15 10:53
jiaozg
阅读(136)
评论(0)
推荐(0)
摘要:
高级研发工程师和架构师的区别不在于掌握了多少技术,而在于你所能驾驭系统的边界。这其实也反映了一个研发工程师的成长历程,起初独立负责一个功能,然后负责一个系统模块,再负责一个系统,最后负责多个系统或业务条线。 服务等级协议(Service-Level Agreement,SLA) 一般来讲,2 个 9 阅读全文
posted @ 2023-03-15 10:34
jiaozg
阅读(105)
评论(0)
推荐(0)
摘要:
缓存穿透问题 查询缓存中不存在的数据时,每次都要查询数据库。 解决缓存穿透的通用方案是: 给所有指定的 key 预先设定一个默认值,比如空字符串“Null” 缓存并发问题 如果没有读取到数据,那么就在 Redis 中使用 setNX 方法设置一个状态位,表示这是一种锁定状态; 缓存雪崩问题 将缓存失 阅读全文
posted @ 2023-03-15 10:04
jiaozg
阅读(23)
评论(0)
推荐(0)

浙公网安备 33010602011771号