2017-01-17 8 views
0

私の会社の哲学は、角度2に基づく多数の「マイクロ」アプリケーションを作成して、2〜3の非常に大きなアプリケーションで現在行われている各タスクを処理し、分離することです。CDNに入れる角度ベンダーを束ねる

現在、毎日2500人のアクティブユーザーと特定のユーザー向けに約30のアプリケーションを使用していることを考慮すると、生成されたバンドルを圧縮しても、キャッシュ:2500 * 30 * 300したがって、毎日清掃されます。

CDNにベンダーを置くことができれば、アプリケーションの数だけこれを減らすことができ、750メガバイト(これは良い方法です)になります。

ベンダーのみでバンドルを生成することはできますか?はいの場合は、どのベンダーに配置すればよいですか?私は、ベンダーにこれらすべてを置くことができると思わ:@angular/common@angular/compiler@angular/core@angular/forms@angular/http@angular/platform-browser@angular/platform-browser-dynamic@angular/routercore-jsts-helpers、彼らはこのことからpackage.json

で定義されているすべての私の依存関係があるので、zone.jsリスト:

  • どのようにこれらのベンダーとバンドルを生成できますか?
  • webpackにバンドルしないようにするにはどうすればよいですか?
  • 私はちょうど私のHTMLの頭の中に置くことができますか?
+0

私は助けてくれません。 Angularは異なる依存関係に対して別々の要求を行いません。あなたがアプリケーションをビルドしてデプロイするとき、 'ng build'の場合はWebpackを使ってすべてのものをJSファイルのほんの一部に束ねるべきです。もしあなたが内部のものにアクセスできればそれらをCDNに置くことができ、インデックスファイルを提供するだけです。 – jonrsharpe

+0

実際にこれを自分自身に証明することができます - ブラウザのネットワークタブを開き、それらのサイトの1つにアクセスしてください(もしまだ見つからない場合は、[こちらは私のものです](http://salary-stats-probative-agalwood.cfapps.pez .pivotal.io /))。たとえば、特定のリクエストをしていないことがわかります。 @角度/コア。 – jonrsharpe

+0

WebPackにバンドルされていますが、理解している限り、すべてのファイルを必要とせず、1つのバンドルを使用しても問題ありませんか? – Sakuto

答えて

0

はい、環境保護のためにCDNを使用することをお勧めします。そうすれば、これらのjavascript/cssのダウンロードからウェブサーバーのトラフィックを減らすことができます。また、これらのcdnがジオロケーションされている場合、エンドユーザーのページ応答も増加します。開発環境では、ローカルマシンを使用してください。 js依存関係(dev、prodなど)を取得する場所を指定するためにstartup/boot jsファイルを設定してください。

+0

これはイントラネット専用ですが、バンドルの内容についてはわかりません – Sakuto

+0

技術的には、cdnが利用できない場合はイントラネットWebサーバーから入手できるように、コード化して構成することができます。応答時間が問題となり、cdnリソースを持っていれば、それらのjs依存関係をcdnに入れることです – alltej

関連する問題