事情是这样的:我有一个堆栈,其中节点js后端将消息发送到队列,而perl worker(cron作业)使用该队列中的消息。我已经“ dockerized”了节点js后端,但是现在我正尝试对Perl Workers执行相同的操作。
但是,已经在docker化了Perl应用程序本身,因为队列的“作业”是基于crontab消耗的(即每2分钟),所以我的问题是:
从docker-compose文件构建堆栈时,实现此目标的最佳方法是什么?
让我知道是否需要提供更多详细信息。谢谢!
我正在尝试创建一个包含两个表的数据库:客户和交易(一个客户可以做很多交易,一个交易只能由一个客户完成)。我正在使用以下 Perl 代码:
my $dbh = DBI->connect("dbi:SQLite:dbname=$RealBin/active.db","","")
or die $DBI::errstr;
my @ddl = (
"CREATE TABLE IF NOT EXISTS customer (
id INTEGER PRIMARY KEY UNIQUE,
id_1 INTEGER,
id_2 INTEGER,
name TEXT
)",
"CREATE TABLE IF NOT EXISTS transaction (
id INTEGER PRIMARY KEY AUTOINCREMENT,
customer_id INTEGER REFERENCES customer(id),
)"
);
for my $sql (@ddl){
$dbh->do($sql);
}
Run Code Online (Sandbox Code Playgroud)
当我运行我的脚本时,我收到以下错误:
DBD::SQLite::db do failed: near "transaction": syntax error at
t/oneToMany.t line 28 (#1)
DBD::SQLite::db do failed: near "transaction": syntax error at t/oneToMany.t line …Run Code Online (Sandbox Code Playgroud)