view xml/ru/docs/stream/stream_processing.xml @ 3011:55d49eb065ac

Fixed example in the js_periodic directive.
author Yaroslav Zhuravlev <yar@nginx.com>
date Thu, 14 Sep 2023 16:38:00 +0100
parents 4959250ba429
children
line wrap: on
line source

<!--
  Copyright (C) Nginx, Inc.
  -->

<!DOCTYPE article SYSTEM "../../../../dtd/article.dtd">

<article name="Как nginx обрабатывает TCP/UDP-сессии"
         link="/ru/docs/stream/stream_processing.html"
         lang="ru"
         rev="4">

<section>

<para>
Обработка клиентской TCP/UDP-сессии происходит
последовательными <b>фазами</b>:

<list type="tag">

<tag-name id="postaccept_phase">
<literal>Post-accept</literal>
</tag-name>
<tag-desc>
Первая фаза после принятия клиентского соединения.
В этой фазе выполняется модуль
<link doc="ngx_stream_realip_module.xml">ngx_stream_realip_module</link>.
</tag-desc>

<tag-name id="preaccess_phase">
<literal>Pre-access</literal>
</tag-name>
<tag-desc>
Предварительная проверка доступа.
В этой фазе выполняются модули
<link doc="ngx_stream_limit_conn_module.xml">ngx_stream_limit_conn_module</link>
и
<link doc="ngx_stream_set_module.xml">ngx_stream_set_module</link>.
</tag-desc>

<tag-name id="access_phase">
<literal>Access</literal>
</tag-name>
<tag-desc>
Ограничение доступа для клиента перед обработкой данных.
В этой фазе
выполняется модуль
<link doc="ngx_stream_access_module.xml">ngx_stream_access_module</link>,
при использовании <link doc="../njs/index.xml">njs</link>
выполняется
директива <link doc="ngx_stream_js_module.xml" id="js_access"/>.

</tag-desc>

<tag-name id="ssl_phase">
<literal>SSL</literal>
</tag-name>
<tag-desc>

Терминирование TLS/SSL.
В этой фазе выполняется модуль
<link doc="ngx_stream_ssl_module.xml">ngx_stream_ssl_module</link>.
</tag-desc>

<tag-name id="preread_phase">
<literal>Preread</literal>
</tag-name>
<tag-desc>
Чтение первых байт данных в
<link doc="ngx_stream_core_module.xml" id="preread_buffer_size">буфер
предварительного чтения</link> для анализа,
например модулем
<link doc="ngx_stream_ssl_preread_module.xml">ngx_stream_ssl_preread_module</link>,
перед их обработкой.
При использовании <link doc="../njs/index.xml">njs</link>
в этой фазе выполняется
директива <link doc="ngx_stream_js_module.xml" id="js_preread"/>.
</tag-desc>

<tag-name id="content_phase">
<literal>Content</literal>
</tag-name>
<tag-desc>
Обязательная фаза, в которой происходит обработка данных, как правило
<link doc="ngx_stream_proxy_module.xml">проксирование</link> на
<link doc="ngx_stream_upstream_module.xml">группу серверов</link>
или <link doc="ngx_stream_return_module.xml">отправка</link> клиенту
заданного значения.
При использовании <link doc="../njs/index.xml">njs</link>
в этой фазе выполняется
директива <link doc="ngx_stream_js_module.xml" id="js_filter"/>.
</tag-desc>

<tag-name id="log_phase">
<literal>Log</literal>
</tag-name>
<tag-desc>
Заключительная фаза,
в которой записывается результат обработки клиентской сессии.
В этой фазе выполняется модуль
<link doc="ngx_stream_log_module.xml">ngx_stream_log_module</link>.
</tag-desc>
</list>

</para>

</section>

</article>