写点什么

架构师训练营——第四周作业

用户头像
关注
发布于: 2021 年 01 月 20 日

一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。


这个问题涉及到的点太多了,我就从我自己公司的业务出发,大概说一下吧:

  • 服务治理

公司的后端都是基于微服务架构的,服务之间通过 GRPC 进行通信。为了更好地对所有服务进行统一管理,公司基于 Zookeeper 开发了自己的服务注册中心,所有服务都在注册中心上进行登记,并且通过定时心跳上报自己的状态。服务的调用方也是从注册中心获取目标服务的路由信息。在此基础上,公司对服务进行了细粒度的鉴权、限流、重试机制、过载保护等处理,只需在平台上简单配置即可实现复杂的服务治理需求。

  • 缓存

缓存是性能优化的首选手段。特别是对于例如商品详情页这种聚合展示服务,合理使用缓存可以大幅提升系统性能。公司提供了丰富的缓存组件,包括内存级别的本地缓存,和 Redis、Memcached 这种分布式缓存,并封装了简单易用的 sdk。

  • 消息

公司业务中使用消息机制,主要有一些这些场景:

  1. 服务异步解耦

  2. 流量整形

  3. 基于事务消息实现分布式事务

  4. 基于定时消息实现延迟队列

  5. 日志收集

  • 负载均衡

负载均衡也是常有的架构手段,主要使用在:

  • 前端负载均衡服务器,如 Nginx

  • 微服务网关负载均衡

  • 跨机房流量调度负载均衡

用户头像

关注

还未添加个人签名 2018.07.18 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营——第四周作业