转载:2.6 服务进程Postgres
来源:互联网 发布:非法经营期货软件投诉 编辑:程序博客网 时间:2024/06/10 22:17
转载:http://book.51cto.com/art/201201/313213.htm
2.6 服务进程Postgres
Postgres进程是实际的接受查询请求并调用相应模块处理查询的PostgreSQL服务进程。它直接接受用户的命令进行编译执行,并将结果返回给用户。如此循环,直到用户断开连接。用户的命令分为两种:一种是查询命令,即插入、删除、更新和选择四种命令。另一种是非查询命令,如创建/删除表、视图、索引等命令。服务进程Postgres根据不同的命令类型选择不同的策略进行处理。
从前面Main主程序的执行流程图(见图2-3)中可以看出,Postgres的启动方式有两种:一种是在Postmaster监控下,动态地被Postmaster创建为用户服务,这是一种多用户的服务方式,也是比较通常的启动方式;另外一种是不经过Postmaster以单用户模式直接启动,为单一用户提供服务,这种方式由--single选项启动。在这种模式下,Postgres服务器进程必须自己完成初始化内存环境、配置参数等操作,而这些操作在多用户模式下是由Postmaster服务器进程完成的。
Postgres进程的主要源代码文件位于src/backend/tcop文件夹下,主要文件包括:
服务进程的源代码文件postgres.c,它是Postgres的入口文件,负责管理查询的整体流程。
对于查询命令进行处理的源代码文件pquery.c,它执行一个分析好的查询命令。
对于非查询命令进行处理的源代码文件utililty.c,它执行各种非查询命令。
dest.c中的代码主要处理Postgres和远端客户的一些消息通信操作,并负责返回命令的执行结果。
Postgres进程的入口是位于postgres.c文件中的PostgresMain函数,其工作流程如图2-15所示。下面将对PostgresMain函数进行详细介绍。
![](http://images.51cto.com/files/uploadimg/20120118/233723385.jpg)
- 转载:2.6 服务进程Postgres
- Postgres 与Oracle对比(服务进程崩溃)
- PostgreSQL服务过程中的那些事一:启动postgres服务进程一
- PostgreSQL服务过程中的那些事一:启动postgres服务进程二:建立连接完成
- PostgreSQL服务过程中的那些事一:启动postgres服务进程一.八:加载DB基础设施,完成服务进程初始化
- 转载:postgres备份恢复
- postgres服务并发测试
- postgres kill僵死进程
- 转载:2.6.4 初始化Postgres的运行环境
- PostgreSQL服务过程中的那些事一:启动postgres服务进程一.五:初始化relcache管理环境
- PostgreSQL服务过程中的那些事一:启动postgres服务进程一.六:初始化系统表缓存catcache
- PostgreSQL服务过程中的那些事一:启动postgres服务进程一.七:初始化portal管理环境
- postgres+postgis[转载]
- gdb调试postgres服务程序
- postgres数据库安装和基本操作(转载)
- 转载:Postgres-XC: online data redistribution
- 转载:Postgres数据库缓存的深度指南
- Postgres进程之间如何协作的?
- 编程珠玑第二章习题
- 转载:2.5.6 PgStat统计数据收集进程
- 排序
- 【§超玄跑车win7电脑主题下载§系统美化】
- 《算法竞赛-训练指南》第一章-1.26_LA 3882
- 转载:2.6 服务进程Postgres
- Java中的递归原理分析
- android中broadcastreceiver的用法-manifest中注册。
- MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
- 获取屏幕的高度和宽度DisplayMetrics
- div内容设float之后,div的自动高度适应
- hdu2159(贪心+01背包)
- 转2.6.1 初始化内存环境载:
- HDU 题目1698 Just a Hook(线段树)