SaaS软件架构设计系列 | 4-1 多业务发展带来新挑战

104 阅读2分钟

多业务发展带来新挑战

虚拟背景

随着客户的增多及业务的扩展,SaaS系统从单业务发展到了多业务模式,基于原有产品延伸出了新的产品,形成了多产品的形态。这些产品属于同一个垂直领域,但服务于不同的业务节点和场景。在我们的虚拟场景中,从产品展示营销获客的领域,扩展到了渠道管理、在线交易的领域。不同的领域有不同的产品,可以单独销售,但产品间又有关联,而且基于一些共同的基础业务,比如商品信息、客户、线索、机会等。多业务发展带来了以下新的挑战:

  • 多产品在一个大单体中开发容易造成不必要的耦合,比如A产品直接访问B产品的数据库,B产品模型调整后,导致关联的功能出现问题。A产品直接访问了B产品一个接口,B产品需要调整实现逻辑时,需要协调A产品一起修改。
  • 多产品共用一套基础设施,当流量增长需要进行调整或问题排查时,都会带来相互影响,提升运维复杂度。
  • 多个产品公共的业务部分,多个团队维护导致设计混乱,开发代码合并冲突频繁,容易想影响出现BUG。
  • 业务可能需要进行多个产品的数据进行业务分析,例如销售转化漏斗,多产品团队间的数据聚合可能会导致职责不清,协作复杂的情况。
  • 多个产品集成第三方时,缺乏整体规划,容易出现重复建设,标准不统一的问题。而且会影响对第三方服务用量计量,导致费用统计核对复杂。
  • 团队进一步增加,协作更加复杂,对应的开发流程需要更健全,避免导致协作混乱。

面临这些挑战,需要对业务模型、架构设计、团队协作进行新的思考和设计,避免规模扩张带来的效率降低和质量下降。