Movatterモバイル変換


[0]ホーム

URL:



Facebook
Postgres Pro
Facebook
Downloads
48.2. How Connections are Established
Prev UpChapter 48. Overview of PostgreSQL InternalsHome Next

48.2. How Connections are Established

PostgreSQL is implemented using a simpleprocess per user client/server model. In this model there is oneclient process connected to exactly oneserver process. As we do not know ahead of time how many connections will be made, we have to use amaster process that spawns a new server process every time a connection is requested. This master process is calledpostgres and listens at a specified TCP/IP port for incoming connections. Whenever a request for a connection is detected thepostgres process spawns a new server process. The server tasks communicate with each other usingsemaphores andshared memory to ensure data integrity throughout concurrent data access.

The client process can be any program that understands thePostgreSQL protocol described inChapter 50. Many clients are based on the C-language librarylibpq, but several independent implementations of the protocol exist, such as the JavaJDBC driver.

Once a connection is established the client process can send a query to thebackend (server). The query is transmitted using plain text, i.e., there is no parsing done in thefrontend (client). The server parses the query, creates anexecution plan, executes the plan and returns the retrieved rows to the client by transmitting them over the established connection.


Prev Up Next
48.1. The Path of a Query Home 48.3. The Parser Stage
epubpdf
Go to PostgreSQL 9.5
By continuing to browse this website, you agree to the use of cookies. Go toPrivacy Policy.

[8]ページ先頭

©2009-2025 Movatter.jp