我希望同时连接多个用户,如下所示:
// in node-postgres
const { Pool } = require('pg');
const pool_1 = new Pool({
user: 'dbuser_1',
host: 'database.server.com',
database: 'mydb',
password: 'secretpassword_1',
port: 3211,
});
const pool_2 = new Pool({
user: 'dbuser_2',
host: 'database.server.com',
database: 'mydb',
password: 'secretpassword_2',
port: 3211,
});
// in pg-promise
const initOptions = { ... };
const pgp = require('pg-promise')(initOptions);
const cn_1 = 'postgres://username_1:password_1@host:port/database';
const cn_2 = 'postgres://username_2:password_2@host:port/database';
const db_1 = pgp(cn_1);
const db_2 = pgp(cn_2);
dbuser_1
和dbuser_2
显然具有不同的特权。
username_1
和username_2
显然也具有不同的特权。
由于我找不到任何资源/信息,(我怀疑在这个狭小的世界中,所有Web项目都仅使用单用户连接,而出于某些原因,则“严格禁止”使用多用户连接应用程序)我想问是否有任何已知的缺点?
Tia
PS:我很抱歉在一个问题中将两个项目结合在一起,但我迫不及待地等待了90分钟...爱因斯坦和宇宙的极限! Βirdie受伤,然后砍下小鸟!还有30分钟的分钟... Tic,tac,tic,tac,tic tac ...幸运的是,我是一名工程师。下次建造汽车时,我将安装防盗装置,以便驾驶员每90分钟使用一次。哈哈哈...万岁手淫!!!我是动词(手型)的发明者,用于描述现代世界及其派生词(手型,手型等)!为了获得您的百科全书信息,我在w3schools.com上首次使用了它们。我在论坛上有礼貌地问了一个问题,我的回答很不礼貌!不幸的是,收到此消息后,SO中的聪明人将取消我的帐户,因此我怀疑这将需要很长时间才能再次与我联系!!!哈斯塔维斯塔!
答案 0 :(得分:1)
您用于node-postgres
和pg-promise
的并排代码段均有效,并且pg-promise
示例将在您的node-postgres
代码下产生相同的逻辑,创建两个单独的池。
您可以通过属性$pool从db_1
和db_2
对象访问每个池。
这种方法没有什么禁止,这是一个常规的实现。