3

uri / rest動詞 / 実際のサービスの場所 / ... に基づいて、さまざまなバックエンドへのルーティングを簡単に実行できる HTTP リクエストの処理に加えて、いくつかの薄いレイヤーを探しています。このレイヤーは、要求された形式へのエンコードも処理する必要があります。 (xml / json / バイナリデータを返す / など) です。

ただし、最も重要な点は、メッセージ キュー、ジョブ ディスパッチャ、外部プロセス、またはまったく異なるものであっても、何らかのバックエンドにプラグインできるようにすることです。これらは、必要なメッセージ変換のために最小限のラッパーで処理する必要があります。

つまり、基本的には、カスタマイズ可能なリクエスト ディスパッチャにいくつかの魔法を加えたものになります。そのようなものは現在、別のアプリケーションとして存在していますか?

編集:ほとんど忘れていました-PHPで書かれていれば素晴らしいでしょう...しかし、何か他のものが説明と一致する場合は、私も見てみたいです.

4

2 に答える 2

2

PHP については知りませんが、Java や Python が受け入れられるオプションである場合は、RESTful サービスを簡単かつ迅速に作成するために設計されたRESTxを検討する必要があります。RESTx は完全にオープン ソースであり、GPLv3 ライセンスを取得しています。

多くのフレームワークがすべてオブジェクトの作成とマッピングに関するものであることに同意しますが、これは非常に面倒で邪魔になることがよくあります。ただし、RESTx はデータ、コンテンツ タイプの自動変換などに関するものです。RESTx を使用すると、Java または Python のいずれかでカスタム コンポーネントを作成できます。これらのコンポーネントは、データベース、カスタム API、レガシー データ、クラウド サービスなどへのアクセスを処理できます。RESTx はコードを調べ、自己文書化された発見可能な RESTful API を自動的に生成します。それはあなたがたどることができるすべてのリンクです。Web ブラウザを使用してサーバーのツアーを行う方法をご覧ください。

重要なのは、パラメータ セットをそれらのコンポーネントに POST できることです。これらのコンポーネントは、新しい URI で保存され、アクセス可能になります。URI にアクセスすると、パラメーターがコンポーネントに適用され、出力が返されます。したがって、新しい RESTful Web サービスおよびリソースを迅速に作成できます。コンポーネントのコード内から他のリソースに簡単にアクセスでき、追加の HTTP リクエストは発生しません。

私は RESTx の主任開発者です。質問がある場合は、フォーラムで私に連絡してください (それらへのリンクは、私たちの Web サイトにあります)。

于 2010-08-09T18:14:47.610 に答える
1

Mongrel で有名な Zed Shaw は、まさにこれをやろうとしています。彼は、基本的に Web アプリケーション バックエンドのユニバーサル フロントエンドである Mongrel2 (まだ開発中) を作成しています。リバース プロキシのように 0MQ または HTTP メッセージを送受信できる任意のプログラムをプラグインできます。

また、適切な構成ファイル システムである SQLite も使用します。変な構文の Apache 設定ファイルをいじる必要はもうありません。

これは C で書かれているため、PHP のような言語ほど簡単にデプロイできないかもしれませんが、拡張性は非常に優れています。

Mongrel2 に満足できない場合は、自分で作成するのは比較的簡単です。自分のプロジェクトの 1 つにnodejitsu のnode-http-proxyを使用しました。シンプルで高速です。さらに、通常の古いifステートメントを使用してルーティング ルールを記述できます。

私は StackOverflow を初めて使用するので、複数のハイパーリンクを埋め込むことはできません (笑)。

于 2010-08-10T16:54:25.040 に答える