持续MySQL连接或在需要时连接

持续MySQL连接或在需要时连接,mysql,Mysql,我正在构建一个小守护进程,它定期(每30秒)检查新数据并将其输入本地MySQL数据库 我只是想知道在应用程序启动时是否最好创建到数据库的连接,并始终在整个应用程序中使用该连接,直到它关闭为止,还是应该仅在有新数据时打开连接,添加数据后将其关闭,然后在30秒后有新数据时重复此操作 谢谢。我建议您做您认为最容易编码的事情。不要浪费任何时间试图解决最有可能不会出现的问题 如果在争用、连接限制或其他类似问题上出现任何困难,您可以稍后解决。我建议您做您认为最容易编码的事情。不要浪费任何时间试图解决最有可能

我正在构建一个小守护进程,它定期(每30秒)检查新数据并将其输入本地MySQL数据库

我只是想知道在应用程序启动时是否最好创建到数据库的连接,并始终在整个应用程序中使用该连接,直到它关闭为止,还是应该仅在有新数据时打开连接,添加数据后将其关闭,然后在30秒后有新数据时重复此操作


谢谢。

我建议您做您认为最容易编码的事情。不要浪费任何时间试图解决最有可能不会出现的问题


如果在争用、连接限制或其他类似问题上出现任何困难,您可以稍后解决。

我建议您做您认为最容易编码的事情。不要浪费任何时间试图解决最有可能不会出现的问题

如果发现争用、连接限制或其他类似问题有任何困难,您可以稍后解决。

这取决于具体情况

在您的情况下,性能并不重要,因为您不会每秒执行数千次查询/登录,而新的连接/登录开销在(几十)毫秒内

如果使用单个连接,则必须确保守护进程处理MySQL端的突然断开连接,并能够从中恢复。此外,如果您移动应用程序,使应用程序位于不同于MySQL的服务器上,那么许多防火墙会时不时地中断长时间的连接

如果您每次都创建一个新连接,然后在完成后断开连接,那么像防火墙清理旧连接这样的事情就不会那么容易地影响您了。

这要看情况而定

在您的情况下,性能并不重要,因为您不会每秒执行数千次查询/登录,而新的连接/登录开销在(几十)毫秒内

如果使用单个连接,则必须确保守护进程处理MySQL端的突然断开连接,并能够从中恢复。此外,如果您移动应用程序,使应用程序位于不同于MySQL的服务器上,那么许多防火墙会时不时地中断长时间的连接


如果您每次都创建一个新连接,然后在完成后断开连接,那么像防火墙清理旧连接这样的事情就不会那么容易地影响您了。

我同意。如果需要,连接代码很容易更改。我同意。如果需要,连接代码很容易更改。