我有一个多租户应用程序,其中每个租户的数据都在一个单独的数据库中。
我想在 LIGHTTPD 下实现 FASTCGI 程序,但我希望每个数据库都有不同的程序实例。
例如,我希望将任何连接{site}/app/c123/a/b
路由到连接到数据库 C123 的 FASTCGI 应用程序的实例,并将任何连接{site}/app/c578/a/b
路由到连接到数据库 C578 的实例。
出于启动目的,假设 FASTCGI 应用程序采用启动参数(即,-Dc123
或-Dc578
)来选择它打开的数据库。
/a/b 是路径元素的占位符,将传递到任何 FASTCGI 实例,无论它连接到哪个数据库。例如,{site}/app/c123/Accounts/List
可能会返回 C123 数据库中包含的帐户列表。
为了支持租户的预期并发,我可能需要两个应用程序实例连接到数据库 C123,八个应用程序实例连接到数据库 C578,以此类推,用于不同的数据库。
那么,鉴于这些示例,我需要什么样的 LIGHTTPD 配置才能为每个数据库启动 1..n 个 FASTCGI 应用程序实例?