db2进程模型的示例分析

发布时间:2021-11-30 11:23:29 作者:柒染
来源:亿速云 阅读:209

这期内容当中小编将会给大家带来有关db2进程模型的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

DB2 进程技术模型

所有 DB2 数据库服务器使用的进程技术模型都旨在简化数据库服务器与客户机之间的通信。它还确保数据库应用程序独立于数据库控制块和关键数据库文件之类的资源。

DB2 数据库服务器必须执行各种不同的任务,例如处理数据库应用程序请求或确保将日志记录写入磁盘。通常,每项任务都由一个独立的引擎可分派单元 (EDU) 执行。

采用多线程体系结构对于 DB2 数据库服务器而言有很多优点。由于同一进程内的所有线程可以共享一些操作系统资源,因此,新线程需要的内存和操作系统资源比进程要少。此外,在某些平台上,线程的上下文切换时间比进程短,这有助于提高性能。在所有平台上使用线程模型使得 DB2 数据库服务器更易于配置,因为这样更容易根据需要分配更多 EDU,并且可以动态分配必须由多个 EDU 共享的内存。

对于所访问的每个数据库,将启动不同的 EDU 以处理各种数据库任务,例如预取、通信和日志记录。数据库代理程序是一类特殊的 EDU,创建它们是为了处理应用程序对数据库的请求。

通常,您可以依靠 DB2 数据库服务器来管理 EDU 集合。但是,也可以通过一些 DB2 工具来管理 EDU。例如,可以使用带有 -edus 选项的 db2pd 命令来列示所有活动的 EDU 线程。

每个客户机应用程序连接都有一个对数据库执行操作的协调代理程序。协调代理程序代表应用程序工作,并根据需要使用专用内存、进程间通信 (IPC) 或远程通信协议与其他代理程序进行通信。

客户机程序

客户机程序可以是远程程序,也可以是在数据库服务器所在机器上运行的本地程序。客户机程序首先通过通信侦听器与数据库联系。

侦听器

通信侦听器在 DB2 数据库服务器启动时启动。每种已配置的通信协议都有一个侦听器,本地客户机程序使用进程间通信 (IPC) 侦听器 (db2ipccm)。侦听器包括:

代理程序

将为所有来自本地或远程客户机程序(应用程序)的连接请求分配相应的协调代理程序 (db2agent)。创建协调代理程序之后,它将代表该应用程序执行所有数据库请求。

在分区数据库环境或者已启用查询内并行性的系统中,协调代理程序会将数据库请求分发给子代理程序(db2agntp 和 db2agnts)。与应用程序相关联但当前处于空闲状态的子代理程序名为 db2agnta。

协调代理程序可能:

DB2 数据库服务器还会将其他类型的代理程序(例如独立的协调代理程序或子协调代理程序)实例化,以便执行特定的操作。例如,独立的协调代理程序 db2agnti 用于运行事件监视器,而子协调代理程序 db2agnsc 用于在异常关闭后以并行方式执行数据库重新启动操作。

网关代理程序 (db2agentg) 是一个与远程数据库相关联的代理程序。它提供用于允许客户机访问主机数据库的间接连接。

空闲代理程序驻留在代理程序池中。这些代理程序可用于处理来自代表客户机程序运行的协调代理程序或来自代表现有协调代理程序运行的子代理程序的请求。当存在大量应用程序工作负载时,配备大小适当的空闲代理程序池有助于提高性能。在这种情况下,可以根据需要立即使用空闲代理程序,而不需要为每个应用程序连接分配新的代理程序,后一种情况涉及创建线程以及分配并初始化内存和其他资源。DB2 数据库服务器自动管理空闲代理池的大小。

可将合用代理程序关联到远程数据库或本地数据库。 在远程数据库上合用的代理程序称为合用网关代理程序 (db2agntgp)。在本地数据库上合用的代理程序称为合用数据库代理程序 (db2agentdp)。

db2fmp

受保护方式进程负责在防火墙外执行受防护的存储过程和用户定义的函数。db2fmp 进程始终是独立的进程,但可能是多线程进程,这取决于它执行的例程的类型。

db2vend

db2vend 进程代表 EDU 执行供应商代码;例如,执行用户出口程序以进行日志归档(仅适用于 UNIX)。

数据库 EDU

以下列表包括每个数据库使用的一些重要 EDU:

上述就是小编为大家分享的db2进程模型的示例分析了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. db2残留进程清除
  2. html盒模型的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

db2

上一篇:DB2行列转置的行转列是怎样的

下一篇:C/C++ Qt TreeWidget单层树形组件怎么应用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》