Просмотр исходного кода

[DOCUMENTATION] Japanese:new Zend_Queue Framework

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@16699 44c647ce-9c0f-0410-b52a-842ac1e357ba
yoshida@zend.co.jp 16 лет назад
Родитель
Сommit
db6afb826d
1 измененных файлов с 169 добавлено и 0 удалено
  1. 169 0
      documentation/manual/ja/module_specs/Zend_Queue-Framework.xml

+ 169 - 0
documentation/manual/ja/module_specs/Zend_Queue-Framework.xml

@@ -0,0 +1,169 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Reviewed: no -->
+<!-- EN-Revision: 16603 -->
+<sect1 id="zend.queue.framework">
+    <title>フレームワーク</title>
+
+    <para>
+        <classname>Zend_Queue</classname>は、
+        待ち行列サービスの詳細を隠す代理です。
+        待ち行列サービスは、<classname>Zend_Queue_Adapter_&lt;service&gt;</classname>によって表現されます。
+        たとえば、<classname>Zend_Queue_Adapter_Db</classname>は、
+        メッセージを格納・読み出しするためにデータベーステーブルを使う待ち行列です。
+    </para>
+
+    <para>
+        下記は、待ち行列システムのためにデータベーステーブルを利用する例です:
+    </para>
+
+    <programlisting language="php"><![CDATA[
+$options = array(
+    'name'          => 'queue1',
+    'driverOptions' => array(
+        'host'      => '127.0.0.1',
+        'port'      => '3306',
+        'username'  => 'queue',
+        'password'  => 'queue',
+        'dbname'    => 'queue',
+        'type'      => 'pdo_mysql'
+    )
+);
+
+// データベース待ち行列を作成します。
+// Zend_Queue はクラス名として Zend_Queue_Adapter_ の後に 'Db' を付加します。
+$queue = Zend_Queue('Db', $options);
+]]></programlisting>
+
+    <para>
+        <classname>Zend_Queue</classname>コンストラクタは<classname>Zend_Queue_Adapter_Db</classname>を作成して、
+        構成設定値でアダプタを初期化します。
+    </para>
+
+    <para>
+        各々のアダプタに認められた構成設定値は、
+        <ulink url="zend.queue.adapters">アダプタの注意</ulink>で示されます
+    </para>
+
+    <para>
+        <classname>Zend_Queue</classname>は
+        クラス<classname>Zend_Queue_Message_Iterator</classname>を用いてメッセージを返します。
+        そして、それは<acronym>SPL</acronym> <classname>Iterator</classname>及び<classname>Countable</classname>の実装です。
+        <classname>Zend_Queue_Message_Iterator</classname>は、
+        <classname>Zend_Queue_Message</classname>オブジェクトの配列を含みます。
+    </para>
+
+    <programlisting language="php"><![CDATA[
+$messages = $queue->receive(5);
+foreach ($messages as $i => $message) {
+    echo "$i) Message => ", $message->body, "\n";
+}
+]]></programlisting>
+
+    <para>
+        投げられるどんな例外も、クラス<classname>Zend_Queue_Exception</classname>です。
+    </para>
+
+    <sect2 id="zend.queue.framework.basics">
+        <title>導入</title>
+
+        <para>
+            <classname>Zend_Queue</classname>は、
+            アダプタを表現する代理クラスです。
+        </para>
+
+        <para>
+            <methodname>send()</methodname>や
+            <methodname>count($queue)</methodname>、そして
+            <methodname>receive()</methodname>メソッドは、
+            待ち行列と相互に作用するために、それぞれのアダプタによって使用されます。
+        </para>
+
+        <para>
+            <methodname>createQueue()</methodname>及び
+            <methodname>deleteQueue()</methodname>メソッドは待ち行列を管理するために使われます。
+        </para>
+    </sect2>
+
+    <sect2 id="zend.queue.framework.support">
+        <title>アダプタの間の互換性</title>
+
+        <para>
+            <classname>Zend_Queue</classname>によってサポートされる待ち行列サービスは、
+            同じ関数をサポートするとは限りません。
+            例えば、<classname>Zend_Queue_Adapter_Array</classname>及び
+            <classname>Zend_Queue_Adapter_Db</classname>は全ての関数をサポートしますが、
+            一方、<classname>Zend_Queue_Adapter_Activemq</classname>は
+            待ち行列の一覧や削除、そしてメッセージのカウントをサポートしません。
+        </para>
+
+        <para>
+            <methodname>Zend_Queue::isSupported()</methodname>または
+            <methodname>Zend_Queue::getCapabilities()</methodname>を使って
+            どんな関数がサポートされるか判定できます。
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <methodname>create()</methodname> - 待ち行列を作成
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>delete()</methodname> - 待ち行列を削除
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>send()</methodname> - メッセージを送信
+                </para>
+
+                <para>
+                    <methodname>send()</methodname>はアダプタ全てで利用可能なわけではありません;
+                    <classname>Zend_Queue_Adapter_Null</classname>は<methodname>send()</methodname>をサポートしません。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>receive()</methodname> - メッセージを受信
+                </para>
+
+                <para>
+                    <methodname>receive()</methodname>はアダプタ全てで利用可能なわけではありません;
+                    <classname>Zend_Queue_Adapter_Null</classname>は<methodname>receive()</methodname>をサポートしません。
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>deleteMessage()</methodname> - メッセージを削除
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>count()</methodname> - 待ち行列内のメッセージ数をカウント
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <methodname>isExists()</methodname> - 待ち行列が存在するかチェック
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            <methodname>receive()</methodname>メソッドは、
+            待ち行列と相互に作用するために、それぞれのアダプタによって使用されます。
+        </para>
+
+        <para>
+            <methodname>createQueue()</methodname>及び
+            <methodname>deleteQueue()</methodname>メソッドは待ち行列を管理するために使われます。
+        </para>
+    </sect2>
+</sect1>