数据库连接的分配方法和装置的制造方法_4

文档序号:9750806阅读:来源:国知局
07]上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0108]在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0109]尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
【主权项】
1.一种数据库连接的分配方法,其特征在于,包括: 获取要与数据库建立连接的进程的信息; 根据所述进程的信息,确定需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息,所述数据库连接集合数组包括至少两个数据库连接集合; 如果所述位置信息对应的数据库连接集合中存在空闲的数据库连接,则将所述空闲的数据库连接分配给所述进程。2.根据权利要求1所述的方法,其特征在于,还包括: 如果所述位置信息对应的数据库连接集合中不存在空闲的数据库连接,则判断在所述位置信息对应的数据库连接集合中是否能够创建新的数据库连接; 如果能够,则在所述位置信息对应的数据库连接集合中创建新的数据库连接,并将所述新的数据库连接分配给所述进程。3.根据权利要求2所述的方法,其特征在于,还包括: 如果在所述位置信息对应的数据库连接集合中不能创建新的数据库连接,则判断剩余的数据库连接集合中是否存在空闲的数据库连接; 如果存在,则将所述空闲的数据库连接分配给所述进程。4.根据权利要求3所述的方法,其特征在于,还包括: 如果所述剩余的数据库连接集合中不存在空闲的数据库连接,则判断所述剩余的数据库连接集合中是否能够创建新的数据库连接; 如果能够,则在所述剩余的数据库连接集合中创建新的数据库连接,并将在所述剩余的数据库连接集合中创建的新的数据库连接分配给所述进程。5.根据权利要求1-4任一项所述的方法,其特征在于,所述进程的信息是所述进程的编号,所述根据所述进程的信息,确定需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息,包括: 将所述进程的编号对所述数据库连接集合数组包括的数据库连接集合的总个数进行取模运算,得到取模后的数值; 将所述取模后的数值对应的位置信息,确定为所述需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息。6.根据权利要求2-4任一项所述的方法,其特征在于,所述获取要与数据库建立连接的进程的信息之前,所述方法还包括: 初始化,所述初始化包括:设置数据库连接集合数组,所述数据库连接集合数组由至少两个数据库连接集合组成,设置每个数据库连接集合中包含的最小连接数量和最大连接数量,并在每个数据库连接集合中创建数量为所述最小连接数量的数据库连接。7.根据权利要求6所述的方法,其特征在于,所述根据所述进程的信息,确定需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息之后,所述方法还包括: 如果所述位置信息对应的数据库连接集合中包含未被分配的数据库连接,则判断出所述位置信息对应的数据库连接集合中存在空闲的数据库连接。8.根据权利要求6所述的方法,其特征在于,判断数据库连接集合中是否能够创建新的数据库连接,包括: 当数据库连接集合中包含的数据库连接的数量小于设置的最大连接数量时,则所述数据库连接集合中能够创建新的数据库连接。9.根据权利要求1-4任一项所述的方法,其特征在于,将数据库连接分配给所述进程之后,所述方法还包括: 通过所述进程采用所述分配的数据库连接执行操作; 在所述操作执行完成后,释放所述数据库连接到原来的数据库连接集合中。10.一种数据库连接的分配装置,其特征在于,包括: 获取模块,用于获取要与数据库建立连接的进程的信息; 确定模块,用于根据所述进程的信息,确定需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息,所述数据库连接集合数组包括至少两个数据库连接集合; 第一分配模块,用于如果所述位置信息对应的数据库连接集合中存在空闲的数据库连接,则将所述空闲的数据库连接分配给所述进程。11.根据权利要求10所述的装置,其特征在于,还包括: 第一判断模块,用于如果所述位置信息对应的数据库连接集合中不存在空闲的数据库连接,则判断在所述位置信息对应的数据库连接集合中是否能够创建新的数据库连接; 第二分配模块,用于如果所述第一判断模块的判断结果是能够,则在所述位置信息对应的数据库连接集合中创建新的数据库连接,并将所述新的数据库连接分配给所述进程。12.根据权利要求11所述的装置,其特征在于,还包括: 第二判断模块,用于如果所述第一判断模块的判断结果是所述位置信息对应的数据库连接集合中不能创建新的数据库连接,则判断剩余的数据库连接集合中是否存在空闲的数据库连接; 第三分配模块,用于如果所述第二判断模块的判断结果是存在,则将所述空闲的数据库连接分配给所述进程。13.根据权利要求12所述的装置,其特征在于,还包括: 第三判断模块,用于如果所述第二判断模块的判断结果是所述剩余的数据库连接集合中不存在空闲的数据库连接,则判断所述剩余的数据库连接集合中是否能够创建新的数据库连接; 第四分配模块,用于如果所述第三判断模块的判断结果是能够,则在所述剩余的数据库连接集合中创建新的数据库连接,并将在所述剩余的数据库连接集合中创建的新的数据库连接分配给所述进程。14.根据权利要求10-12任一项所述的装置,其特征在于,所述进程的信息是所述进程的编号,所述确定模块具体用于: 将所述进程的编号对所述数据库连接集合数组包括的数据库连接集合的总个数进行取模运算,得到取模后的数值; 将所述取模后的数值对应的位置信息,确定为所述需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息。15.根据权利要求11-12任一项所述的装置,其特征在于,还包括: 初始化模块,用于初始化,所述初始化包括:设置数据库连接集合数组,所述数据库连接集合数组由至少两个数据库连接集合组成,设置每个数据库连接集合中包含的最小连接数量和最大连接数量,并在每个数据库连接集合中创建数量为所述最小连接数量的数据库连接。16.根据权利要求10-12任一项所述的装置,其特征在于,还包括: 处理模块,用于通过所述进程采用所述分配的数据库连接执行操作;在所述操作执行完成后,释放所述数据库连接到原来的数据库连接集合中。
【专利摘要】本申请提出一种数据库连接的分配方法和装置,该数据库连接的分配方法包括:获取要与数据库建立连接的进程的信息;根据所述进程的信息,确定需要的数据库连接所在的数据库连接集合数组中的数据库连接集合的位置信息,所述数据库连接集合数组包括至少两个数据库连接集合;如果所述位置信息对应的数据库连接集合中存在空闲的数据库连接,则将所述空闲的数据库连接分配给所述进程。该方法能够提高进程获取数据库连接的性能。
【IPC分类】G06F17/30
【公开号】CN105512127
【申请号】CN201410494366
【发明人】王世纪
【申请人】阿里巴巴集团控股有限公司
【公开日】2016年4月20日
【申请日】2014年9月24日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1