応募の方向性を考えています。アプリケーションはMVCフレームワークを実装するPHPで記述されています。
一部のクライアントはWebサービスを必要とします。基本的なPHP WebインターフェースをこれらのWebサービス(SOAP)の上に構築し、PHPアプリケーションがデータベースにアクセスできないようにします。これを行うと、メインのPHPアプリケーションにアクセスするためのコード一式と、このWebサービス上で開発された他のアプリケーションも維持する必要があります。これは一般的な設定ですか?アプリケーションが大幅に遅くなりますか?
Djangoフレームワークを使用してSOAP Webサービスをセットアップするために使用しましたが、その後、使用しているクライアントに基づいて複数の同一のデータベースを処理するのに問題があることがわかりました。
私はSymfonyを調べましたが、バックエンドとしてのPHPは、将来のより大きなクライアントによっては安全ではない、または専門的ではないと見なされ、エンタープライズで使用できない場合があります。
私は今Axis2を考えています。 Javaはバックエンドとして高速で、潜在的なクライアントに市場性をもたらすでしょう。
他にどのようなWebサービスフレームワークを検討する必要がありますか?このWebサービスバックエンド/ PHP/HTMLフロントエンドは使用可能なソリューションですか?
はい、これはより大きなアプリケーションでは非常に一般的な設定です。ただし、Webサービスを呼び出すたびに、アプリケーションに遅延が追加されます。したがって、ラウンドトリップの数を減らし、サービスからフェッチする必要のあるデータの量を減らすために、Webサービスを適切に設計する必要があります。
私はあなたが最も親しんでいる言語に固執することをお勧めします。
Djangoと複数のデータベースについて:Djangoは、複数のデータベースの組み込みサポートを備えています。クエリベースまたはモデルベースで(および同じモデルの読み取り/書き込み操作に別のデータベースを使用することもできます)。
このアプローチはかなり一般的であり、他の人が開発するプラットフォームを実際に構築している場合はより理にかなっています。独自のアプリで独自のWebサービスを使用する(独自のドッグフードを食べる)ことにより、プラットフォームの強さを検証できます。あなたがカバーすることを確認するための事柄:
Webサービスプラットフォーム: