美文网首页
PostgreSQL基本架构

PostgreSQL基本架构

作者: ZYJ2016 | 来源:发表于2017-01-05 16:43 被阅读0次

    PostgreSQL是什么

    了解PostgreSQL之前,首先要有一个对它大概的概念。

    PostgreSQL是一种对象关系型数据库,单节点单实例运行,对分布式支持有限。可以与广为人知的Mysql做类比来理解。

    MySQL号称世界上最流行的数据库。
    PostgreSQL号称世界上最先进的数据库。

    组件名词解释

    • libpq:数据库应用连接接口库(如JDBC,ODBC)
    • Postmaster:守护监听进程
    • Postgres:服务进程

    PostgreSQL整体架构

    PostgreSQL采用的是经典的C/S架构模型。

    PostgreSQL架构.png

    运行流程分析

    当一个前端数据库应用程序需要访问数据库:

    • 调用libpq,将连接请求发送给Postmaster;
    • Postmaster启用一个新的后端服务器进程postgres与前端应用连接;
    • 服务进程Postgres直接与用户通信,不再通过Postmaster;
    • Postgres接收客户端的命令请求,完成并返回结果;

    客户端每创建一个数据库连接,postmaster就生成一个pstogres进程,是一种1:1的进程结构(一个客户端对应一个服务进程)。

    多进程的好处在于:系统的各个模块,各个服务进程之间耦合度更低,多用户直接并发运行不受影响。

    带来的影响是:多进程比多线程的结构开销要大,进程的创建和回收比线程更加消耗资源,当用户发来的请求过多时,会造成负载过大,执行速度变慢。

    相关文章

      网友评论

          本文标题:PostgreSQL基本架构

          本文链接:https://www.haomeiwen.com/subject/oboavttx.html