Skip to main content

业务理解

  • 拆解功能型需求与非功能型需求
  • 考虑业务后期的发展前景(具备行业经验更佳)
  • 前期开发阶段重视代码设计,减少技术债务

技术标准化

  • 单体架构、分布式架构、微服务架构、事件驱动架构
  • 架构的无状态性
    • 用户 token,本地内存->分布式缓存,平滑迁移会耗费大量的人力
  • 标准化的技术组件
    • 容易重复造轮子

可维护性和稳定性

  • 提前考虑后续可能会遇到的非功能型的问题,例如业务灵活变化,数据容量激增,流量激增,恶意攻击
  • 考虑服务的稳定性,容错性,高可用性,可维护性等

安全性

  • 敏感数据保护,例如手机号,身份证信息等这类数据需要做加密存储,密钥需要做定期更换
  • 保障系统链路安全性,例如预防 SQL 注入攻击,Dos攻击,XSS攻击,核心交易接口被刷等风险问题

架构方案梳理小结

架构设计需要综合考虑多个维度,确保系统既能满足当前需求,又具备良好的扩展性和维护性。

核心考虑因素

  • 业务理解:深入理解业务场景和发展路径
  • 技术标准化:选择合适的技术栈和架构模式
  • 可维护性与稳定性:确保系统长期稳定运行
  • 安全性:保护数据和系统免受威胁

实践建议

在实际架构设计中,建议:
  1. 先进行充分的业务调研和需求分析
  2. 选择团队熟悉且社区活跃的技术栈
  3. 从小规模开始,逐步演进架构
  4. 建立完善的监控和告警机制
  5. 定期进行架构评审和优化