Broader test scenarios #6
Replies: 2 comments 2 replies
-
Currently the prototype is built around the idea of using Edge as an integration point, that does both injection of the Client A/B script into
This would establish the baseline performance of the origin page with no A/B tests implemented (Control).
I'm assuming this would help us to measure the performance if we rely only on Edge side transforms? Would it be practical to expect only pre-UA transforms to meet the need — static page A/B tests may be? Or would the intent be to rule out latencies, if any, added by the client side implementation of the spec?
Cost (or improvement in case being cached) of fronting with a compute capable Edge/CDN and using it for integration only, i.e., no transform logic performed (other than injection of script to HEAD of the document) thus avoiding latency due to compute at Edge. While the prototype is built around Edge as an integration point, we could also perform the same operations that Edge does today, right at Origin, thus making Origin the integration point between a publisher and A/B provider. This was also one of the asks that came up at W3PerfWG. It would be good to add that scenario as a test if once we have an Origin-based pre-UA+injection implementation is available. |
Beta Was this translation helpful? Give feedback.
-
Here are results from experiments that Optimizely ran to test out some of these scenarios. The different variants tested were:
These all go through a Cloudflare edge worker. The code from https://github.com/WICG/ab-worker-prototype was used to to apply the transformations pre-ua and on-ua. These were simulations run using a headless Chrome, and each trial was executed 500 times. This table shows the results from executing the above variants, each applying 0, 10, or 1000 transformations, and their respective median load event end time (in ms) over the 500 simulations.
|
Beta Was this translation helpful? Give feedback.
-
I suggest that we should broaden the test scenarios.
As of this writing, we have the following scenarios covered:
In order to better understand the performance impacts of this, we should add the following at minimum:
This will give us a comprehensive view of how this performs in multiple scenarios, with a proper set of baselines to compare against.
Beta Was this translation helpful? Give feedback.
All reactions