标签: postgresql design-patterns plugins components database-schema
我正在构建一个基于插件系统的Node.js + PostgreSQL应用程序,其中每个组件都是一个单独的npm包。可以通过添加和删除组件来自定义应用程序的行为。每个组件可能需要定义自己的数据类型(即DB表)或可能扩展核心类型。
是否有设计模式来做这种事情?
例如,让插件运行任何类型的数据库操作(如WordPress)是否合理? PostgreSQL的一些更高级的功能是否有助于避免这种情况,例如:表继承?或者也许为每个插件使用一个单独的模式 - 任何使这个工作的提示?