ny3259 发表于 2016-10-28 00:11:22

PostgreSQL 9.6 RC1 发布,数据库服务器

PostgreSQL进程结构:  http://www.doserv.com/article/2012/0502/3345022.shtml
  守护进程 postmaster: 负责整个系统的启动和关闭,监听并接受客户端的连接请求,为其分配(fork)服务进程postgres.
  服务进程 postgres:   接受并执行客户端发送的命令,在底层模块(如存储/事务/索引等)之上
  调用各个主要的功能模块(如编译器/优化器/执行器等),完成客户端的各种数据库操作,并返回执行结果.
  
  守护进程 postmaster 在完成基本运行环境初始化,创建接受用户请求的监听端口后,顺序启动如下系统辅助进程:
  SysLogger(系统日志进程) -> PgStat(统计数据收集进程) -> AutoVacuum(系统自动清理进程)
  在守护进程 postmaster 进入到循环监听时启动如下进程:
  BgWriter(后台写进程) -> WalWriter(预写式日志写进程) -> PgArch(预写式日志归档进程)
  
  php-fpm(php5-pgsql/libpq5) -> postmaster -> postgres
  php-fpm(pconnect)postgres
  http://php.net/manual/zh/function.pg-pconnect.php
  pg_pconnect: 打开一个持久的 PostgreSQL 连接
  pgsql.allow_persistent = On (默认允许打开持久连接)
  pgsql.max_persistent = -1   (默认不限制最大持久连接数)
  对比MySQLi:
  mysqli.allow_persistent = On
  mysqli.max_persistent = -1
页: [1]
查看完整版本: PostgreSQL 9.6 RC1 发布,数据库服务器