私の質問は実際には問題ではなく、意見を求めるものです。おそらく、これは投稿するのに適切な場所ではありません。それにもかかわらず、ここのコミュニティは非常に情報が豊富であり、試してみても害はありません...
私は、高度にスケーラブルで、とりわけ高度にモジュール化されたバックエンドアーキテクチャを作成する方法を考えていました。たとえば、大規模なサイトへの将来性のある進化の可能性を秘めた大規模なサイトのバックエンドエコシステム全体。
これには、関心の分離が非常に高度になり、(たとえば)基盤となるDBを置き換えることができるだけでなく(つまり、OracleからMySQLに)、実際のタイプのデータベースを置き換えることができます(SQLからKV、または逆に)。
各サブシステムがバックエンドエコシステム内で独自のAPIを公開する状況を想定しています。このようにして、APIは一定のままでありながら、実装は時間の経過とともに(根本的にさえ)変更される可能性があります。
システムは、特定の言語に関連付けられていないという点で異種である必要があります。異なる言語を使用するモジュールまたはサブシステム全体に対応できる必要があります。
それから、私が想像していたのは、単にWeb自体のアーキテクチャーであることに気づきました。
だからここに私の議論のポイントがあります:(主に)テキストベースのプロトコルを使用するオーバーヘッドとは別に、複雑なバックエンドアーキテクチャを私が説明する方法で実装すべきではないという最優先の理由がありますか、または私がいくつかの強力な論理的根拠がありますTwisted、AMQP、Thriftなどの通信プロトコルを使用するためにmがありませんか?
更新:@meagarからのコメントに続いて、おそらく質問を再定式化する必要があります:明らかなパフォーマンスヒットを補うのに十分な、非常にシンプルで柔軟性があり、よく理解されているアーキテクチャ(つまり、一連のRESTful APIとして公開されているすべての機能)を使用することの明らかな利点ですこのアーキテクチャをバックエンドコンテキストで使用するときに発生しますか?