24 个独立微服务加一套插件机制,同一个底座承载交易主干,不靠单体堆叠。
开源商城基础设施
让商城成为一套
可以持续生长的系统
HouUniMall 用稳定的 Core 承载交易主干,把 ERP、OA、财务、MES 与你的业务差异,交给独立插件和二开能力去演进。面向大并发场景,接入、读写、异步任务和插件故障都能分层处理。
能力正在生长
Core
01 / 为什么是 HouUniMall
不再用一条主干,
承载所有人的差异。
交易系统的难题从来不是“能不能下单”,而是每一次新需求、新渠道、新业务,都不能把既有系统拖回原点。
Uni(统一 / 一体)+ Mall(商城)
一体化商城中台。
管理后台、PC 商城、移动端、商户端、骑手、供应商与收银台,共用同一套平台后端。
源码按 Apache-2.0 开源,运行制品以 unimall-<service> 独立部署。
02 / Core 架构
六层栈,
一条清晰请求链路。
从浏览器到数据层,每一层都有明确职责。BFF 是唯一入口,Core 只依赖稳定契约,插件在边界外生长。
D1 BFF 兼任网关,不增加额外一跳
D2/D3 契约与 Feign 分离,跨模块只依赖 API
D4 扩展点统一收口到 plugin-api
大并发,不靠一台机器硬扛。
把流量峰值拆到接入、读写、异步和插件边界,每一层都有自己的缓冲与降级空间。
BFF 配合 Nginx / 云 LB 水平扩展,入口不绑定单机状态。
高频链路优先读取不可变快照与缓存,减少运行期扫描和排序。
消息队列承接通知与长任务,让交易主链保持稳定响应。
插件独立进程或超时降级,单个能力异常不拖垮 Core。
03 / 横向对比
同样写着开源,
自由度不一样。
选开源商城,真正卡住项目的往往不是功能多少,而是三件事:协议能不能闭源商用、多商户能力是不是在免费版里、二开之后还敢不敢升级。按这三条摊开看。
extensions/,官方源码保持可替换,按版本升级以上为通用做法对比,具体以各项目仓库中 LICENSE 与功能清单原文为准。HouUniMall 的插件数量按 architecture/services.json 登记口径统计。
只做单商户轻量自营店——单体商城更快、更省机器;需要多租户 SaaS——一套部署开 N 个互相独立的商城,这不是本项目的模型。
要做平台方、要长期二开、要闭源交付给自己的客户,并且需要把线上交易与门店、供应链、配送真正打通的项目。
04 / 插件生态
从交易主干,
到你的业务版图。
Core 提供商品、订单、支付、商户、供应商与插件运行时。更重、更专门的能力,以独立插件进入站点。
企业资源计划
采购、库存、生产与销售协同,独立授权,按需启用。
协同办公
组织、审批、考勤、合同与薪资,和商城共享 Core 身份。
财务管理
账套、凭证、发票与对账,数据边界清晰,独立升级。
生产执行
排产、工序、质量与设备,连接订单但不侵入 Core。
门店收银台
线下交易、库存同步与多门店结算,共用支付契约。
Custom Capability
用稳定扩展点覆盖价格、运费、菜单与业务规则。
Core 默认能力,随版本发布
owner: custom,构建期打进宿主
owner: thirdparty,运行期追加能力
05 / 给开发者
十分钟,
接入你的第一个能力。
插件从元数据开始。一个 plugin.yaml 描述身份、扩展点、菜单与前端入口,宿主负责安装、启停、路由与权限。
code: custom-goods name: 商品二开包 version: 1.0.0 owner: custom runtime: embedded host: mall extensions: - point: goods.PriceCalcExtension priority: 100 frontend: entry: /plugin-assets/custom-goods/1.0.0/index.mjs
// 不改主干,覆盖价格计算 @HouExtension(point = "goods.PriceCalcExtension", owner = "custom", priority = 100) public class VipPriceCalc implements PriceCalcExtension { public void execute(PriceCalcContext ctx) { if (ctx.in().getUserLevel() >= 3) { ctx.out().setPayAmount(ctx.in().getSkuAmount() * 9 / 10); } } }
// ESM 产物由宿主运行时加载 export default { install(ctx) { ctx.addRoute({ path: '/mall/coupon' }); ctx.callApi('/coupon/list'); }, teardown() { /* 清理路由与菜单 */ } }
07 / FAQ
把疑问,
留在上线之前。
边界写进架构,答案写进文档。这里先回答最常见的几个问题。
开源的是哪些部分?+
Core(认证、权限、用户组织、商品、订单、支付、商户、供应商、第三方基础能力、插件中心与引擎)开源。ERP、OA、财务、MES、收银台、配送与商城营销能力以独立插件交付。
二开和插件有什么区别?+
二开是“换掉”官方实现,在构建期打进宿主;插件是“追加”官方钩子,在运行期热插拔。两者共用元数据、契约和扩展点。
插件异常会影响下单吗?+
高频链路读取不可变快照,不扫描 Class。单个扩展点有超时保护,异常只记录不向上传播;未安装插件时 Core 继续独立运行。
可以商用吗?+
可以。HouUniMall Core 采用 Apache License 2.0,允许商用、修改、分发与再许可,并含明确的专利授权与商标保留。商业插件制品与授权独立于 Core。
HouUniMall 是跨境电商或出海平台吗?+
不是。HouUniMall 是厚匠科技出品的一体化插件化商城中台,Apache-2.0 开源、可自托管,用来搭建自营与多业态电商系统。它与任何第三方跨境、出海或全托管 SaaS 平台均无关联、无合作、无隶属关系,是独立的产品与品牌。
READY WHEN YOU ARE
把主干交给 HouUniMall,
把差异留给自己。
从一套可运行的商城 Core 开始,持续接入你的业务能力。
如果你是软件公司、系统集成商或外包团队 —— 看看 HouUniMall 伙伴计划,把它作为你的项目交付底座。
如果你只是想让这套系统尽快跑起来 —— 看看 付费搭建服务,¥2,980 起,1 个工作日交付,跑不通全额退。