Глава 49. Клиент-серверный протокол
- Содержание
- 49.1. Обзор
- 49.1.1. Обзор обмена сообщениями
- 49.1.2. Обзор расширенных запросов
- 49.1.3. Форматы и коды форматов
- 49.1.2. Обзор расширенных запросов
- 49.1.1. Обзор обмена сообщениями
- 49.2. Поток сообщений
- 49.2.1. Запуск
- 49.2.2. Простой запрос
- 49.2.3. Расширенный запрос
- 49.2.4. Вызов функций
- 49.2.5. Операции COPY
- 49.2.6. Асинхронные операции
- 49.2.7. Отмена выполняющихся запросов
- 49.2.8. Завершение
- 49.2.9. Защита сеанса с SSL
- 49.2.2. Простой запрос
- 49.2.1. Запуск
- 49.3. Протокол потоковой репликации
- 49.4. Типы данных в сообщениях
- 49.5. Форматы сообщений
- 49.6. Поля сообщений с ошибками и замечаниями
- 49.7. Сводка изменений по сравнению с протоколом версии 2.0
- 49.4. Типы данных в сообщениях
Клиенты и серверы PostgreSQL взаимодействуют друг с другом, используя специальный протокол, основанный на сообщениях. Этот протокол поддерживается для соединений по TCP/IP и через доменные сокеты Unix. Для серверов, поддерживающих этот протокол, в IANA зарезервирован номер TCP-порта 5432, но на практике можно задействовать любой порт, не требующий особых привилегий.
В этой документации описана версия 3.0 этого протокола, реализованная в PostgreSQL версии 7.4 и новее. За описанием предыдущих версий протокола обратитесь к документации более ранних выпусков PostgreSQL. Один сервер способен поддерживать несколько версий протокола. Из стартового сообщения при установлении соединения сервер узнаёт, какую версию протокола пытается использовать клиент, и если сервер поддерживает запрошенную версию, он продолжает обмен по этому протоколу.
Чтобы эффективно обслуживать множество клиентов, сервер запускает отдельный "обслуживающий" процесс для каждого клиента. В текущей реализации новый дочерний процесс запускается немедленно после обнаружения входящего подключения. Однако это происходит прозрачно для протокола. С точки зрения протокола, термины "обслуживающий процесс", "процесс заднего плана" и "сервер" взаимозаменяемы, как и "приложение переднего плана" и "клиент".
Пред. | Начало | След. |
pg_views | Уровень выше | Обзор |