系统架构设计的检查清单

系统设计很复杂,在实际中我总结了一些检查清单,帮助在系统设计的过程中快速的核对。

  1. 对于大量“读”的系统 —— 考虑使用缓存。
  2. 对于大量“写”的系统 —— 考虑使用消息队列进行异步处理。
  3. 对于低延迟要求的系统 —— 考虑使用缓存 或 CDN。
  4. 需要原子性、一致性、隔离性、耐用性兼容的系统 —— 选择关系型数据库。
  5. 拥有非结构化数据的系统 —— 考虑 NoSQL 数据库。
  6. 拥有复杂的数据(视频、图像、文件) —— 考虑Blob存储或者对象存储。
  7. 对于复杂的预计算 —— 考虑使用消息队列和缓存。
  8. 海量数据搜索 —— 考虑数据库索引、或者搜索引擎(如Elasticsearch、Couchbase)。
  9. 需要扩展 SQL 数据库 —— 考虑数据库分片。
  10. 有高可用性、性能和吞吐量要求时 —— 考虑使用负载均衡器。
  11. 需要大范围数据交付时(比如全国、或全球)—— 考虑使用 CDN。
  12. 有图形数据(包含节点、边和关系的数据)场景是 —— 考虑利用图形数据库(如Neo4j)。
  13. 服务能否水平扩展
  14. 需要高性能数据库查询时 —— 数据库索引设计的如何。
  15. 有批处理业务时 —— 考虑批处理方式和消息队列。
  16. 考虑服务器负载管理与防止 DOS 攻击 —— 使用速率限制器。
  17. 微服务架构 —— 使用 API 网关。
  18. 针对单点故障 —— 考虑冗余方案。
  19. 为了实现容错和持久性 —— 考虑实施数据备份和复制方案。
  20. 对于用户间的快速通信 —— 考虑使用 Websockets。
  21. 分布式系统中的故障检测方式 —— 考虑心跳方案。
  22. 数据完整性要求的场景 —— 使用校验算法。
  23. 高效的服务器扩展 —— 考虑一致性哈希算法。
  24. 去中心化数据传输场景 —— 考虑 Gossip 协议。
  25. 基于位置的功能需求 —— 使用四叉树、Geohash 等。
  26. 避免命名时使用特定的技术名称 —— 使用通用术语。
  27. 高可用性和一致性权衡 —— 要符合最终一致性。
  28. 对于 IP 解析和域名查询场景 —— 使用DNS。
  29. 处理网络请求中的大数据 —— 采用分页技术。
  30. 缓存替换策略 —— 通常情况下首选 LRU。
  31. 应对流量高峰 —— 实施自动扩展以动态管理资源。
  32. 需要分析和审计跟踪 —— 考虑使用数据湖或附加数据库。
  33. 处理大规模同时连接 —— 使用连接池并考虑使用 Protobuf 来最小化数据负载。

相关推荐

  1. 系统架构设计检查清单

    2023-12-20 16:52:02       38 阅读
  2. 3.架构设计系列:高并发系统设计目标

    2023-12-20 16:52:02       37 阅读
  3. 高效嵌入式系统架构设计

    2023-12-20 16:52:02       36 阅读
  4. 系统架构设计基础

    2023-12-20 16:52:02       23 阅读
  5. 系统架构设计

    2023-12-20 16:52:02       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-20 16:52:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-20 16:52:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-20 16:52:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-20 16:52:02       18 阅读

热门阅读

  1. golang如何用http.NewRequest创建get和post请求

    2023-12-20 16:52:02       45 阅读
  2. 基于LED的室内可见光通信系统及其 Matlab 实现

    2023-12-20 16:52:02       42 阅读
  3. wxWidgets:使用wxHelpController类进行编程

    2023-12-20 16:52:02       31 阅读
  4. C/C++ 控制台窗口光标移动位置实现(Linux/Windows)

    2023-12-20 16:52:02       46 阅读
  5. html css背景图片透明文字不透明

    2023-12-20 16:52:02       36 阅读
  6. vuex--未完

    2023-12-20 16:52:02       49 阅读
  7. Web安全 - 深入同源策略

    2023-12-20 16:52:02       38 阅读
  8. 蓝底白字车牌的定位与字符分割识别 MATLAB 仿真

    2023-12-20 16:52:02       34 阅读
  9. [PTA]矩阵列平移

    2023-12-20 16:52:02       38 阅读
  10. 05-MySQL中的limit和union关键字

    2023-12-20 16:52:02       33 阅读