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]