pgpool2.git / summary / log / commit / refs

commit    c706e0d6eaa7c0c39fa7ca2e86fba3f1fbcd1390
Author:   Tatsuo Ishii <ishii@sraoss.co.jp>
Date:     Thu Feb 28 00:36:24 2019 +0000

    Doc: add "performance" chapter to doc.
    
    This is just a starting up and more contents will be coming.
    After completing the English doc, Japanese doc will come.


doc/src/sgml/filelist.sgml | 1 + doc/src/sgml/performance.sgml | 79 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+) diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index a7efd6a7a..dc1e3cf47 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -60,6 +60,7 @@ <!ENTITY memcache SYSTEM "memcache.sgml"> <!ENTITY ssl SYSTEM "ssl.sgml"> <!ENTITY watchdog SYSTEM "watchdog.sgml"> +<!ENTITY performance SYSTEM "performance.sgml"> <!ENTITY misc-config SYSTEM "misc-config.sgml"> <!ENTITY config-last SYSTEM "config-last.sgml"> <!ENTITY user-manag SYSTEM "user-manag.sgml"> diff --git a/doc/src/sgml/performance.sgml b/doc/src/sgml/performance.sgml new file mode 100644 index 000000000..d7df79056 --- /dev/null +++ b/doc/src/sgml/performance.sgml @@ -0,0 +1,79 @@ +<!-- doc/src/sgml/performance.sgml --> + +<chapter id="performance"> + <title>Performance Consideration</title> + + <indexterm> + <primary>performance</primary> + <secondary>of the server</secondary> + </indexterm> + + <para> + There are many configuration parameters that affect the performance of + <productname>Pgpool-II</productname>. In this chapter explanations + how to tune them are given. + </para> + + <sect1 id="resource-requiremente"> + <title>Resource Requirement</title> + + <para> + <productname>Pgpool-II</productname> does not consume too much + resource. However there are minimum requirements for + resource. In this section we are going to explain one by one. + </para> + + <sect2 id="memory-requirement"> + <title>Memory Requirement</title> + + <para> + There are two types of memory usage + in <productname>Pgpool-II</productname>: shared memory and + process private memory. The former is allocated at the startup + of <productname>Pgpool-II</productname> main server process + and will not be freeed until + whole <productname>Pgpool-II</productname> servers shut down. + The latter is allocated within + each <productname>Pgpool-II</productname> child process and + will be freed at the end of the process. + </para> + + <sect3 id="shared-memory-requirement"> + <title>Shared Memory Requirement</title> + + <para> + Here is a fomula to calculate the shared memory requirement. + <programlisting> +Shared memory requirement (in bytes) = <xref linkend="guc-num-init-children"> * <xref linkend="guc-max-pool"> * 17408 + </programlisting> + For example if you have <varname>num_init_children</varname> = 32 (the default) and <varname>max_pool</varname> = 4 (the + default), then you will need 32 * 4 * 17408 = 2228224 bytes = 2.1 MB. + </para> + + <para> + If you plan to use in memory query cache + (see <xref linkend="runtime-in-memory-query-cache"> for more + details) in the shared memory, you will need more RAM for + it. See + <xref linkend="guc-memqcache-total-size"> and + <xref linkend="guc-memqcache-max-num-cache"> for required RAM + size. + </para> + + </sect3> + + <sect3 id="process-memory-requirement"> + <title>Process Memory Requirement</title> + <para> + + Here is a fomula to calculate the process memory requirement. + <programlisting> +Process memory requirement in total (in mega bytes) = <xref linkend="guc-num-init-children"> * 5 + </programlisting> + For example if you have <varname>num_init_children</varname> = + 32 (the default), you will need 160MB. + </para> + </sect3> + </sect2> + </sect1> +</chapter> [parent: fcc818d99cd2]