2016-07-21 4 views
1

アプリケーション(レンダリングページ)と残りのAPIサーバーを提供するために別々のポートを使用することには、特別なメリットとデメリットがありますか?私は、React、Node/Expressアプリを構築しており、著者がポート3030のAPIとポート3000のAPIを提供している例を見ています。これは2つを切り離してテストするのに適しているようです。しかし、それ以外の場合は、アプリケーションとAPIをNode/Expressアプリケーションの別々のポートに提供するという明確な利点はありますか?アプリケーションサーバーと休止APIサーバー(ノード)のための別個のポート

答えて

2

レンダリングサーバーからAPIを分離することで、ロジックを分離することでより効率的にリクエストを処理できます。

Expressは、APIリクエストのコールバックに到達するためにページレンダリングエンドポイントのすべてのルートを反復処理する必要はなく、APIエンドポイントのすべてのルートを反復処理する必要はありませんページレンダリング要求

+0

私の理解では、ノード/エクスプレスはイベントドリブン(結果として超高性能)なので、ルート上の「反復」は問題ではありません。 – Himmel

+0

@Himmelはいイベント駆動型ですすべてのクライアント要求がサーバーリスナーにイベントを送信することを示します。しかし、要求されたパスと要求オブジェクトを照合し、呼び出すコールバックを決定するためには、すべての 'app.METHOD()'要求を反復処理する必要があります。ここで繰り返しが発生します。 –

+0

間違いなく。これが唯一の理由だとすれば、非apiルート(index.htmlを提供する 'app.get()')が1つだけあれば、2つを分ける価値がないようです。 – Himmel

関連する問題