Skip to content

Commit 557455e

Browse files
docs: update
1 parent 5a3655b commit 557455e

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

docs/how_tos/integrating-external-services.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,3 +97,10 @@ By default, ``useComponentPropOverrides`` and ``withComponentPropOverrides`` sup
9797
});
9898
return <span {...propOverrides}>{children}</span>;
9999
});
100+
101+
Performance considerations
102+
***********************
103+
104+
Performance implications should be considered while integrating with other services.Any third-party, external vendor scripts (e.g., Segment, Google Analytics, Datadog, etc.) loaded via a service class (e.g., ``SegmentAnalyticsService``, ``externalScripts``) are injecting ``<script>`` tags into the HTML document *after* much of the MFE's application code has been downloaded/parsed. That is, all JS needed for frontend-platform's MFE initialization must be downloaded/evaluated first *before* downloading any external scripts.
105+
106+
The default/base ``NewRelicLoggingService`` is currently an exception in that it injects the New Relic JS `<script>` tag during the Webpack build process via ``HtmlWebpackNewRelicPlugin``, whereby the New Relic `<script>` may be downloaded earlier in the initial page load, without being blocked on parsing frontend-platform's JS. In a similar vein, many MFEs integrate with Optimizely by hardcoding its associated ``<script>`` element in the ``public/index.html`` file for the MFE (not open-source friendly).

0 commit comments

Comments
 (0)