From 6eb9c5a5657d1fe77b55cc261450f3538d35a94d Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 14:19:15 +0200 Subject: Adding upstream version 13.4. Signed-off-by: Daniel Baumann --- doc/src/sgml/html/connect-estab.html | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 doc/src/sgml/html/connect-estab.html (limited to 'doc/src/sgml/html/connect-estab.html') diff --git a/doc/src/sgml/html/connect-estab.html b/doc/src/sgml/html/connect-estab.html new file mode 100644 index 0000000..bb63dd0 --- /dev/null +++ b/doc/src/sgml/html/connect-estab.html @@ -0,0 +1,31 @@ + +50.2. How Connections Are Established

50.2. How Connections Are Established

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

+ The client process can be any program that understands the + PostgreSQL protocol described in + Chapter 52. Many clients are based on the + C-language library libpq, but several independent + implementations of the protocol exist, such as the Java + JDBC driver. +

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

\ No newline at end of file -- cgit v1.2.3