File: book.xml

package info (click to toggle)
php-doc 20140201-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 74,084 kB
  • ctags: 4,040
  • sloc: xml: 998,137; php: 20,812; cpp: 500; sh: 177; makefile: 63; awk: 28
file content (150 lines) | stat: -rw-r--r-- 5,309 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 329924 $ -->

<book xml:id="book.mysqlnd-memcache" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <title>Mysqlnd Memcache plugin</title>
 <titleabbrev>mysqlnd_memcache</titleabbrev>

 <preface xml:id="intro.mysqlnd-memcache">
  &reftitle.intro;
  <para>
   The mysqlnd memcache plugin (<literal>mysqlnd_memcache</literal>) is an PHP
   extension for transparently translating SQL into requests for the
   MySQL InnoDB Memcached Daemon Plugin (server plugin). It includes
   experimental support for the MySQL Cluster Memcached Daemon. The server
   plugin provides access to data stored inside MySQL InnoDB (respectively
   MySQL Cluster NDB) tables using the Memcache protocol. 
   This PHP extension, which supports all PHP MySQL extensions that use
   <link linkend="book.mysqlnd">mysqlnd</link>, will identify tables exported in
   this way and will translate specific SELECT queries into Memcache requests. 
  </para>
  <mediaobject>
   <alt>mysqlnd_memcache data flow</alt>
   <imageobject>
    <imagedata fileref="en/reference/mysqlnd_memcache/figures/mymemflow.png"/>
   </imageobject>
  </mediaobject>
  <note>
   <para>
    This plugin depends on the MySQL InnoDB Memcached Daemon Plugin. It is not
    provided to be used with a stand-alone Memcached. For a generic query cache
    using Memcached look at the <link linkend="book.mysqlnd-qc">mysqlnd query
    cache plugin</link>. For direct Memcache access look at the
    <link linkend="book.memcache">memcache</link> and
    <link linkend="book.memcached">memcached</link> extensions.
   </para>
  </note>
  <para>
   The MySQL native driver for PHP is a C library that ships together with
   PHP as of PHP 5.3.0. It serves as a drop-in replacement for the
   MySQL Client Library (libmysqlclient). Using mysqlnd has
   several advantages: no extra downloads are required because it's bundled with PHP,
   it's under the PHP license, there is lower memory consumption in certain cases, and
   it contains new functionality such as asynchronous queries.
  </para>
  <para>
   The <literal>mysqlnd_mmemcache</literal> operates, for the most part,
   transparently from a user perspective. The mysqlnd memcache
   plugin supports all PHP applications, and all MySQL PHP extensions.
   It does not change existing APIs. Therefore, it can easily be used with
   existing PHP applications.
  </para>
  <para>
   The MySQL Memcache plugins add key-value style access method for data stored
   in InnoDB resp. NDB (MySQL Cluster) SQL tables through the Memcache protocol.
   This type of key-value access if often faster than using SQL.
  </para>
  <section xml:id="mysqlnd-memcache.key-features">
   <title>Key Features</title>
   <para>
   The key features of PECL/mysqlnd_memcache are as follows.
   </para>
   <para>
    <itemizedlist>
     <listitem>
      <para>
       Possible performance benefits
      </para>
      <para>
       <itemizedlist>
        <listitem>
         <para>
          Client-side: light-weight protocol.
         </para>
        </listitem>
        <listitem>
         <para>
          Server-side: no SQL parsing, direct access to the storage.
         </para>
        </listitem>
        <listitem>
         <para>
          Please, run your own benchmarks! Actual performance results are
          highly dependent on setup and hardware used.
         </para>
        </listitem>
       </itemizedlist>
      </para>
     </listitem>
    </itemizedlist>
   </para>
  </section>

  <section xml:id="mysqlnd-memcache.limitations">
   <title>Limitations</title>
   <para>
    The initial version is not binary safe. Due to the way the MySQL Memcache
    plugins works there are restrictions related to separators.
   </para>
   <para>
    Prepared statements and asynchronous queries are not supported. Result set
    meta data support is limited.
   </para>
   <para>
    The mapping information for tables accessible via Memcache is not cached
    in the plugin between requests but fetched from the MySQL server each time 
    a MySQL connection is associated with a Memcache connection. See
    <function>mysqlnd_memcache_set</function> for details.
   </para>
  </section>

  <section xml:id="mysqlnd-memcache.name">
   <title>On the name</title>
   <para>
    The shortcut <literal>mysqlnd_memcache</literal>
    stands for <literal>mysqlnd memcache plugin</literal>.
    Memcache refers to support of the MySQL Memcache plugins
    for InnoDB and NDB (MySQL Cluster). The plugin is not
    related to the Memcached cache server.
   </para>
  </section>
 </preface>

 &reference.mysqlnd-memcache.quickstart;
 &reference.mysqlnd-memcache.setup;
 &reference.mysqlnd-memcache.constants;
 &reference.mysqlnd-memcache.reference;
 &reference.mysqlnd-memcache.changes;

</book>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->