技术选型很重要,但它不应该是第一个架构决定。如果在理解业务流程之前就先决定数据库、框架或部署方式,项目很容易开始服务于工具,而不是服务于业务目标。
我通常先画出流程和数据关系:谁创建数据、数据在哪里变化、什么是事实来源、哪些操作对时间敏感、哪些部分可以独立工作,以及哪些能力必须在单个组件故障后继续存在。
这样技术栈就会成为需求的结果,而不是起点。它能减少偶然依赖,让升级更可预测,也能用业务能够理解的指标讨论架构:处理时间、维护成本、可用性、恢复能力和未来扩展。
技术选型很重要,但它不应该是第一个架构决定。如果在理解业务流程之前就先决定数据库、框架或部署方式,项目很容易开始服务于工具,而不是服务于业务目标。
我通常先画出流程和数据关系:谁创建数据、数据在哪里变化、什么是事实来源、哪些操作对时间敏感、哪些部分可以独立工作,以及哪些能力必须在单个组件故障后继续存在。
这样技术栈就会成为需求的结果,而不是起点。它能减少偶然依赖,让升级更可预测,也能用业务能够理解的指标讨论架构:处理时间、维护成本、可用性、恢复能力和未来扩展。