質問

リモートWebサイトで利用できる大規模なデータベースから特定のデータを作成するソリューションに取り組んでいます。私の最初の考えは、いくつかのSOAP Webサービスを調理して、データベースから特定のデータを取得することでした。これは、Zend_Soap_Serverのユーザーと一緒に、たとえばこのようなほんの数行で実行できます。

class MyClass 
{
    public function getlastname($id) 
    {
        $dbh = new PDO("oci:dbname=bigdb", "theuser", "thepass");

        $stmt = $dbh->prepare("select lastname from person where id  = :id"); 

        if ($stmt->execute(array(':id',$id))) 
        {
         $row = $stmt->fetch();
         return $row['lastname'];
        }
    }
}

$server = new Zend_Soap_Server(null, $options);
$server->setClass('MyClass');
$server->setObject(new MyClass());

$server->handle();

今、誰かが私にメッセージブローカー /キューを見るように言った。 Apache ActiveMQ、Stomp、Zend_Queueなどのソフトウェアを見てきましたが、このプロジェクトで役立つものが何であるかを明確に見ていませんでした。

データベースが迅速に応答していない場合、Webサイトから多くのリクエストがあるときにデータベースに高い負荷がある場合、私の実装にはいくつかの欠点がある可能性があることを理解しています。 ?

役に立ちましたか?

解決

メッセージブローカーの役割は、リクエストをチェックして適切なサービスに派遣するか、キャッシュから応答を返すことです。

大きなトラフィックが期待されている場合は、おそらくメッセージブローカーの使用を検討する必要があります。

よろしく、アリン

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top