私は、私の会社が提供しようとしている新しいソリューションのためにクラウド展開されたウェブサイトを設計中です。私はいくつかの質問に答えようとしていて、ローマにいるときは運がなかった。マイクロアプリケーションを備えた完全にスケーラブルなウェブサイト
まず、私はウェブサイトを特定のフレームワークに固執させたくありません。私はウェブサイトを完全に将来証明する方法がないことを知っていますが、私はむしろすべての卵を1つのバスケットに入れることはしません。
第2に、フロントエンドとバックエンドの間を完全に分離したいと考えています。私はこれをやろうとしている理由のリストを持っているが、必ずしも彼らが何であるかの会話に入りたいとは思わない。ほとんどの場合、サーバー側のレンダリングは問題になりません。
だから私はどこにいますか?
私の最初の考えでは、どのAPI呼び出しでもアクセスできるREST APIを用意しています(これは将来GraphQLに変わる可能性があります)。
私が主張しているデザインの決定は、フロントエンド用です。このウェブサイトは、テナントがログインしてスクリーンを見ることができるダッシュボードタイプのシステムになります。
私は、一種のシェルを持っていると思っていましたが、それはindex.htmlに繋がっています。これは独自のルーティングを持ち、シェルロジックとは完全に別のマイクロアプリケーションをレンダリングします。私はパスが「/」
され、index.htmlのをロードする場合
だから、たとえば、それが責任だいくつかのルートがあり、 「/ドス」 「/アカウント」を言うことができます
の場合私は/ todosルートにアクセスし、シェルアプリケーションはそのマイクロアプリケーションをレンダリングします。このアプリケーションは、ウィンドウからロードされる可能性のあるデータを除いて、シェルとは完全に分離されています。このアプリケーションがシェルアプリケーション経由でレンダリングされると、
私のtodosルートは、例えば、独立したreduxアプリケーションになる可能性があります。
これは共通のアーキテクチャですか?これの例はありますか?これについてもっと良い方法がありますか?
ありがとうございました!
あなたの洞察力を賞賛してください。私は自分自身より先に進んでいたと思うが、将来は同じアプリケーションではないかもしれないマイクロアプリでフェザリングを考えている。 – BJacobs
将来的にそれを証明すれば、未来は決して到着しません;-) – AndrewMcLagan