由于 LoopBack 应用程序是常规的 Express 应用程序,您可以将它们安装在主应用程序的路径上。
var app1 = require('path/to/app1');
var app2 = require('path/to/app2');
var root = loopback(); // or express();
root.use('/app1', app1);
root.use('/app2', app2);
root.listen(3000);
明显的缺点是app1 和app2 之间的高运行时耦合——无论何时升级它们中的任何一个,都必须重新启动整个服务器(即它们两者)。一个应用程序中的致命故障也会导致整个服务器停机。
@fiskeben 提出的解决方案更加健壮,因为每个应用程序都是隔离的。
另一方面,我的解决方案可能更易于管理(您只有一个 Node 进程而不是 nginx + per-app Node 进程),并且还允许您配置两个应用程序共享的中间件。
var root = loopback();
root.use(express.logger());
// etc.
root.use('/app1', app1);
root.use('/app2', app2);
root.listen(3000);