UDP健康检查

UDP健康检查,udp,Udp,因此,我们有一个应用程序,可以进行udp调用并发送数据包。但是,由于UDP调用会得到响应,我们如何确保服务已启动、端口已打开以及存储了内容 我们现在唯一的想法是发送测试数据包并确保它们被保存到数据库中 所以我的问题是,有没有更好、更简单的方法来确保udp调用成功 在侦听主机上,您可以使用netstat验证端口是否打开。例如,如果应用程序使用UDP端口68,则可以运行: # Grep for :<port> from netstat output. $ netstat -lnu | g

因此,我们有一个应用程序,可以进行udp调用并发送数据包。但是,由于UDP调用会得到响应,我们如何确保服务已启动、端口已打开以及存储了内容

我们现在唯一的想法是发送测试数据包并确保它们被保存到数据库中


所以我的问题是,有没有更好、更简单的方法来确保udp调用成功

在侦听主机上,您可以使用netstat验证端口是否打开。例如,如果应用程序使用UDP端口68,则可以运行:

# Grep for :<port> from netstat output.
$ netstat -lnu | grep :68
udp        0      0 0.0.0.0:68              0.0.0.0:*
Grep for:来自netstat输出。 $netstat-lnu | grep:68 udp 0.0.0.0:68 0.0.0.0:* 您还可以向应用程序发送一些测试数据,然后检查数据库,以验证夹具数据是否进入数据库。这并不意味着它将永远是,只是它在测试时工作


归根结底,问题在于UDP数据包是尽最大努力的,而不是有保证的。因此,除非您可以将日志平台配置为在接收和/或写入数据后发送某种确认,否则您无法保证任何事情。UDP的本质是将确认(如果有)留给应用程序层。

在侦听主机上,您可以使用netstat验证端口是否打开。例如,如果应用程序使用UDP端口68,则可以运行:

# Grep for :<port> from netstat output.
$ netstat -lnu | grep :68
udp        0      0 0.0.0.0:68              0.0.0.0:*
Grep for:来自netstat输出。 $netstat-lnu | grep:68 udp 0.0.0.0:68 0.0.0.0:* 您还可以向应用程序发送一些测试数据,然后检查数据库,以验证夹具数据是否进入数据库。这并不意味着它将永远是,只是它在测试时工作


归根结底,问题在于UDP数据包是尽最大努力的,而不是有保证的。因此,除非您可以将日志平台配置为在接收和/或写入数据后发送某种确认,否则您无法保证任何事情。UDP的本质是将确认(如果有的话)留给应用层。

我们采取了不同的方法,我们正在检查以确保对db的调用。查询一个表并确保记录在其中非常简单。如果不是最近,我们就知道出了问题。CodeGnome有个好主意,只是不是我们走的路线。谢谢

我们采取了不同的方法,我们正在检查以确保对数据库的调用。查询一个表并确保记录在其中非常简单。如果不是最近,我们就知道出了问题。CodeGnome有个好主意,只是不是我们走的路线。谢谢

如果需要可靠性,请使用TCP。否则,您将或多或少地重新发明TCP。这是一个已经构建的非常广泛的日志平台,我们正试图找到最简单的解决方案,修改最少,以避免破坏其他项目。我们采取了不同的方法,我们正在检查以确保对db的调用。查询一个表并确保记录在其中非常简单。如果最近没有,我们就知道出了问题。如果需要可靠性,请使用TCP。否则,您将或多或少地重新发明TCP。这是一个已经构建的非常广泛的日志平台,我们正试图找到最简单的解决方案,修改最少,以避免破坏其他项目。我们采取了不同的方法,我们正在检查以确保对db的调用。查询一个表并确保记录在其中非常简单。如果不是最近,我们就知道出了问题。