简要聊一聊后台技术架构需要了解的技术思想

112 阅读3分钟

服务网关

  单点登陆,会话管理,消息加解密,白名单,关键字过滤,多租户,鉴权.

服务注册/发现

服务注册,就是将提供某个服务的模块信息(通常是这个服务的ip和端口)注册到1个公共的组件上去.

服务发现,就是新注册的这个服务模块能够及时的被其他调用者发现,不管是服务新增和服务删减都能实现自动发现.

统一配置中心

  微服务配置文件可以由环境变量,系统Properties,命令行,项目源代码,远程配置中心中加载,应该合理利用规划利用.

负载均衡

根据不同的策略分摊流量到多个操作单元上进行执行,可以根据实际情况定制负载均衡策略,例如分时区,机房,轮训,随机,连接数等等.

熔断,降级,限流

  服务稳定性保障, 针对接口熔断,降级,限流可以保障关键服务正常运行;针对资源接口的熔断,降级,限流可以降低系统资产损失;针对第三方接口熔断,降级,限流可以保证第三方接口不会影响本系统的稳定性.

接口规范

  协议规范,接口路径规范,版本控制规范,接口命名规范,请求参数规范,返回数据规范,统一响应码等.

REST/RPC/序列化

  外部接口多考虑协议通用,易于接入和兼容性,多采用 http+json格式,webservice等

  内部接口多考虑性能,开发便捷,建议二进制协议,例如使用grpc+protobuf.

分库分表/读写分离

可以提升服务提升性能、增加可用性.

日志打印/采集/分析

  操作系统日志,集群运行日志,服务日志的采集和分析,以便方发现问题,定位问题,出具报表等.

灰度发布

  灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式. 分类: web前端灰度,服务端灰度,app端灰度.维度:按流量百分比,按人群划分,按渠道划分.

蓝绿发布

一种不需要停机的部署方式,是一种以可预测的方式发布应用的技术,目的是减少发布过程中服务停止的时间。

链路追踪

链路追踪为分布式应用的开发者提供了完整的调用链路还原、调用请求量统计、链路拓扑、应用依赖分析等工具,可以帮助开发者快速分析和诊断分布式应用架构下的性能瓶颈,提高微服务时代下的开发诊断效率.

监控预警

  针对系统,服务等指标制定预警规则,达到预期值时通过邮件,短信,微信,钉钉等渠道发出警告,以保障服务的稳定性,也可基于此制定微服务自愈功能.

任务调度

  分布式任务调度框架.

安全审计

  对系统中与安全有关的活动的相关信息进行识别、记录、存储和分析.

分布式事务

  分布式事务解决方案. 2PC,TCC,本地消息表,MQ事务消息.

消息队列

  解决应用耦合、异步消息、流量削锋等问题。实现高性能、高可用、可伸缩和最终一致性架构.

缓存系统

  缓存预热,击穿,雪崩,一致性解决方案,应用缓存,主机缓存,分布式缓存.

数据安全

  包括配置数据,传输数据和存储数据的安全和完整性解决方案.

数据存储

  包括对象存储,关系型数据存储,时序数据存储,列式数据库.

性能分析

  关键业务性能瓶颈预防,定位以及优化.

权限管理

  菜单权限和数据权限,资源权限管理.

多版本管理

  服务兼容性和多版本并行解决方案.