跳转到主要内容
全部手记
3 分钟阅读文 / Hll

多个独立产品,如何共用一套工程基础

从 SignalX、Wools 到 Hllshare,记录数据生产、业务服务与产品界面的分工,以及哪些能力值得复用。

工程实践系统设计

独立开发的项目多起来后,最先重复出现的往往不是页面,而是用户认证、内容管理、数据查询和运营配置。每个项目都重新实现一遍,短期看起来方便,长期却会留下多套略有差异的基础设施。

按职责拆开,而不是按项目复制

目前的本地项目采用三层分工:数据生产层负责采集、清洗和计算;业务服务层负责 API、认证和权限;产品层负责自己的页面与交互。Hllshare、SignalX 和 Wools 并不需要共享同一种界面,但可以共享同一个稳定的业务边界。

先复用真正重复的东西

统一登录不只是把登录表单做成一个组件。令牌刷新、用户状态、权限判断和后台菜单需要有同一个事实来源。否则,即使页面外观一致,业务规则仍可能在不同产品里分叉。

  • 数据生产留在 Crawler Studio,让采集和计算可以单独运行。
  • 用户、权限、内容和产品数据接口留在 Service Studio。
  • Hllshare Admin 作为统一运营入口,按服务返回的权限显示菜单。
  • 产品前端只持有交互状态,不把认证和数据生产逻辑复制到浏览器。

不必一次迁完所有历史项目

AI 电商创意库目前仍保有自己的数据访问与导入脚本。面对这样的历史状态,先把边界记录清楚,再按具体需求迁移,比为了架构一致而一次性重写更容易控制成本。

好的基础设施应该减少下一次工作的阻力

衡量复用是否有效,不是看目录拆得有多整齐,而是看新增一个功能时,是否知道应该在哪一层实现。能清楚回答「谁负责生产数据、谁负责判断权限、谁负责用户体验」,通常已经减少了很多无意义的往返。