栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

关于在jdbc中使用多线程的教程

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于在jdbc中使用多线程的教程

多线程将提高您的性能,但您需要了解以下几点:

  1. 每个线程都需要自己的JDBC连接。无法在线程之间共享连接,因为每个连接也是事务。
  2. 分批上载数据,不时上载
    commit
    以避免累积大量的回滚/撤消表。
  3. 将任务分为几个工作单元,每个单元执行一项工作。

详细说明最后一点:当前,您有一个任务,可以读取文件,解析文件,打开JDBC连接,进行一些计算,将数据发送到数据库等。

您应该做什么:

  1. 一个(!)线程读取文件并从中创建“作业”。每个工作都应包含一个很小但不能太小的“工作单元”。将它们推入队列
  2. 下一个线程等待队列中的作业并进行计算。当步骤1中的线程等待慢速硬盘返回新的数据行时,可能会发生这种情况。此转换步骤的结果进入下一个队列
  3. 一个或多个线程通过JDBC上载数据。

第一个和最后一个线程的速度很慢,因为它们受I /
O约束(硬盘速度很慢,网络连接更糟)。另外,在数据库中插入数据是一项非常复杂的任务(分配空间,更新索引,检查外键)

使用不同的工作线程有很多优点:

  1. 分别测试每个线程很容易。由于它们不共享数据,因此不需要同步。队列将为您做到这一点
  2. 您可以快速更改每个步骤的线程数以调整性能


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/454167.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号