用于银河系统内部的动态可配置反向代理
引用
此项目可以从 lib/main.js 来源中的脚本或
已安装并通过其 已发布软件包 通过npm或npx.
$ npx @galaxyproject/gx-it-proxy --version
$ npx @galaxyproject/gx-it-proxy --sessions test.sqlite --port 8001 # use SQLite
$ npx @galaxyproject/gx-it-proxy --sessions test.json --port 8001 # use a JSON file
$ npx @galaxyproject/gx-it-proxy --sessions postgresql:///galaxy?host=/var/run/postgresql --port 8001 # use PostgreSQL
双代用
为双代用(例如从Galaxy到代用应用程序的远程代理):
host1$ ./lib/main.js --sessions test.sqlite --forwardIP host2 --forwardPort 8001
host2$ ./lib/main.js --port 8001
会议
代理从文件或数据库中加载会话 --sessions
选项。 SQLite和JSON文件在每次更改时都会被监视并重新加载.
PostgreSQL数据库默认每5秒接受一次民意调查. 民意调查
间隔可以通过 --pollingInterval 选项.
可以通过 PostgreSQL 数据库更快的更新
PostgreSQL 同步通知。 。 。 .
要启用它们,请创建 PostgreSQL 触发器,以发送
给频道的NOTIFY消息 gxitproxy 每当桌子 gxitproxy
变化.
CREATE OR REPLACE FUNCTION notify_gxitproxy()
RETURNS trigger AS $$
BEGIN
PERFORM pg_notify('gxitproxy', 'Table "gxitproxy" changed');
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
CREATE TRIGGER gxitproxy_notify
AFTER INSERT OR UPDATE OR DELETE ON gxitproxy
FOR EACH ROW EXECUTE FUNCTION notify_gxitproxy();
虽然可以使用 --pollingInterval 0,这是
由于发送同步通知不是
保证.