gpt4 book ai didi

Java 通过线程与 API 服务器建立多个连接

转载 作者:行者123 更新时间:2023-11-29 11:19:28 24 4
gpt4 key购买 nike

我创建了一个自定义 Web API,用于将数据提交到我的 Java 应用程序的 MYSQL 服务器。在我的 Java 应用程序中,我需要添加/更新 200 行,并且我已经让它一次发出一个请求。

  1. 这可能非常耗时,所以我可以为所有创建线程吗这些不同的连接?
  2. 我应该限制一次建立的最大连接数吗?也许一次 10 个?
  3. 这会导致 mysql 出现任何问题吗可能同时添加行? (没有 2 行会需要在某个时间点进行更改)

最佳答案

在多个连接中插入记录可能会加快 200 次插入的速度,但只有在引入多线程后通过测试和测量才能确定。我还建议尝试 JDBC 批处理并一次性将所有 200 个插入发送到数据库(如果您的实现中可以这样做),因为这可能会通过节省数据库的往返次数来提高性能。

要创建连接池,请查看 HikariCP这是一个 JDBC 连接池实现。它将允许您指定最小/最大并发连接以及其他设置。然后,您的工作线程可以从池中请求连接并执行插入。

如果每次插入都获取表锁,则同时插入多条记录可能会在 mySQL 级别出现问题。在这种情况下,您不会通过多线程获得速度提升,并且可能需要在数据库级别进行一些调整来解决它。这是一篇应该有所帮助的好文章:High rate insertion with mySQL

关于Java 通过线程与 API 服务器建立多个连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39186307/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com