wal-listener:PostgreSQL WAL侦听器

时间:2024-02-26 16:36:04
【文件属性】:

文件名称:wal-listener:PostgreSQL WAL侦听器

文件大小:44KB

文件格式:ZIP

更新时间:2024-02-26 16:36:04

golang postgresql microservices-architecture logical-replication PostgreSQLGo

WAL侦听器 一种帮助实现事件驱动的体系结构的服务。 为了保持系统中数据的一致性,我们将使用事务消息传递-在具有域模型更改的单个事务中发布事件。 该服务允许您使用其逻辑解码功能订阅PostgreSQL数据库中的更改,并将其发布到NATS Streaming服务器。 工作逻辑 为了在PostgreSQL数据库中接收有关数据更改的事件,我们使用标准的逻辑解码模块( pgoutput )该模块将从WAL读取的更改转换为逻辑复制协议。 而且我们已经消耗了所有这些信息。 然后,我们仅过滤出所需的事件并将其发布到队列中 活动发布 NATS流被用作消息代理。 服务发布以下结构。 用于订阅以接收消息的主


【文件预览】:
wal-listener-master
----.travis.yml(214B)
----config()
--------config_test.go(3KB)
--------config.go(1KB)
----cmd()
--------wal-listener()
----Dockerfile(171B)
----LICENSE(11KB)
----config.yml(415B)
----.gitignore(269B)
----go.sum(27KB)
----README.md(3KB)
----listener()
--------protocol.go(4KB)
--------nats_publisher.go(1KB)
--------errors_test.go(1KB)
--------parser.go(6KB)
--------wal_transaction_test.go(4KB)
--------wal_transaction.go(4KB)
--------parser_test.go(16KB)
--------listener_test.go(17KB)
--------errors.go(1KB)
--------replicator_mock.go(1KB)
--------parser_mock.go(530B)
--------nats_publisher_mock.go(301B)
--------listener.go(9KB)
--------repository.go(1KB)
--------repository_mock.go(489B)
--------nats_publisher_easyjson.go(4KB)
--------nats_publisher_test.go(872B)
----go.mod(1KB)

网友评论