:私は豊富なフロントエンドアプリケーションが持つ画像サーバとsocket.io
(反応して、RxJS、socket.ioなど)とnetty-socketioの上に書かれたWebサービス層。Nettyアプリと同じように動作します。アイデアは、サーバーがsocket.ioプロトコルを実装するクライアントが消費する可能性のあるAPI層として機能し、フロントエンドアプリケーションがその1つであることです。私はどこでも本当に、おそらくCDNをホストすることができます。
私が遭遇した問題は、ファイル、より具体的には画像処理です。古典的なユースケースは、ユーザーのアバターをアップロードすることです。私の平野socket.ioプロトコルは、それをサポートしていないので、私は理論的なソリューションのカップルを作ってみた:サーバのファイルシステム上のsocket.io APIを介してバイナリとして
アップロード画像、店舗画像バイナリとしてもアクセスできます。この問題の私の問題は、私がしなければならないシリアライゼーション/デシリアライゼーションであり、異なるファイル拡張子などでエラーが発生するようです。
this exampleのようにNettyにHTTPパーサーを実装し、別のポートの同じインスタンスで実行します。私はこれを試して、それは動作しますが、それは本当に低レベルであり、私はNettyの専門家ではありません。
サーブレットを使用して別のHTTPファイルサーバーを作成し、それを使用してイメージを保存および参照し、フロントエンドに直接アップロードして、socket.io APIへの参照を送信してDBに保存します。私がよく分からないことは、APIが基本的にUIsが独自のイメージストレージを扱い、単に参照を報告することをAPIが期待しているということです。それは安全でなく制御不能なようです。
(3)で説明した動作の代わりにCDNを使用してください。これは素晴らしいプロダクション対応ソリューションですが、私の非プロダクションシステムでは過度の作業になるかもしれません。
注意、場合によっては(3)と(4)私は今、私はそのためのローカルNode.jsのHTTPサーバを使用しています、同じ場所でフロントエンドをホストする可能性があります。
私は考慮しなかったアドバイス、意見、解決策はありますか?