java 如果数据库停机[关闭],则将数据写入消息队列

vhmi4jdf  于 2023-04-04  发布在  Java
关注(0)|答案(2)|浏览(102)

已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。

昨天关门了。
Improve this question
我的微服务从另一个微服务接收一些数据。我的要求是,如果我的数据库关闭,那么该记录应该保存在一些消息队列中,如Kafka。一旦数据库可用,该记录应该通过一些调度器或侦听器持久化到数据库。
问题是,如果我的数据库关闭,那么微服务本身也会关闭,那么我该如何处理呢?我的意思是,如果微服务将启动,那么只有我们可以将数据写入消息队列。如果我错了,有人会纠正我。我在springbootjava中看到过这种行为。如果没有建立数据库连接,应用程序就不会运行。
有没有可能即使数据库关闭,你的微服务也在运行?我使用Sping Boot 和PostgreSQL数据库。在消息队列中写入数据的方法应该是什么?我唯一的目的是“不丢失数据”
你能不能在同一指导和指导我的方法?甚至其他的方法和建议是受欢迎的。

w9apscun

w9apscun1#

即使数据库关闭,您的微服务也会启动并运行。它只能回答OK响应。它可能会回答500。
您可以将代码实现为错误处理程序并将消息写入队列。

umuewwlo

umuewwlo2#

如果你的数据库关闭,这并不意味着你的微服务示例也会关闭-它只是无法连接到你的数据库
您可以尝试创建某种事件,指示您无法获得与数据库的连接,并创建此事件的处理程序。这样,您将能够检测到数据库关闭的时刻,并开始向消息队列写入消息。

相关问题