抱歉,我是SQL触发器的新手,需要一些帮助.
我在UPDATE我的一个PostgreSQL表上创建了一个触发器.触发器调用DELETE另一个表.我的问题是:请求的触发器部分是否与请求异步或同步UPDATE?
有关更多信息,请参阅我的触发器和功能:
CREATE OR REPLACE FUNCTION expire_table() RETURNS trigger AS $expire_table$
BEGIN
DELETE FROM object_store WHERE p_time < NOW() - INTERVAL '6 months';
RETURN NEW;
END;
$expire_table$ LANGUAGE 'plpgsql';
CREATE TRIGGER expire_table_trigger
AFTER UPDATE ON objects
EXECUTE PROCEDURE expire_table();
Run Code Online (Sandbox Code Playgroud)
我希望触发器部分是异步的,或者有一种方法可以实现.
有没有办法根据消费者滞后或其他消费者问题来暂停或限制 Kafka 生产者?生产者是否需要自行确定是否存在消费者滞后,然后自行执行限制?
我有一个 Kafka 主题和该主题的五个分区。将有5个消费群体。每个消费者组都有一个从该主题消费的服务实例。
Kafka 中同一条记录的每个消费者的偏移量是否相同?
我有一个关于多个分区的主题和该主题的4个消费者都在同一个消费者群组中.如果一个消费者暂停该主题,其他三个消费者是否会暂停.如果有办法做到这一点?如果是的话,如果一个人取消暂停,所有其他消费者都会取消暂停.
我有一个 Kafka 主题和四个消费者组。每个组中可以有不同数量的节点进行消费。不同的群体可以以不同的速度消费,有些群体可能会落后,但我想知道这种情况是否会发生以及落后了多远。我想跟踪每个小组对这个主题的理解程度。我可以获取每个消费者的偏移量并将其写入指标吗?或者偏移量不是一个很好的指示,因为它可能在分区之间有所不同,我需要做一些不同的事情。顺便说一句,会有相当多的分区。
我还可以做其他事情,但如果有更简单的方法,我宁愿不更改有效负载来添加计数器或时间戳?
谢谢。
分区是否始终与代理位于同一台物理计算机上,或者分区是否位于不是代理的计算机上?
我很确定分区或多个分区可以驻留在代理节点上,但我不确定分区是否可以驻留在非代理节点上?
我想弄清楚是否需要使用 KafkaConsumer.commitSync(Map offsets) 打开手动提交
当我使用记录时,我需要确保它们被我的服务处理,我不能失去它们,但是如果我的服务抛出一堆错误或崩溃,我不想移动偏移量,直到我知道它们已被处理。
commitSync 看起来像我需要调用的方法吗?
如果我没有使用 commitSync,而是使用自动偏移提交,当服务在尝试处理一些 Kafka 事件时崩溃时,我是否有可能丢失事件。换句话说,当使用自动偏移提交时,偏移量会在什么时候提交?