Benchmark Beagle Movies

You will know more about Beagle Movies on this section, an application developed using Beagle.

Benchmark: Beagle Movies

Context

Beagle Movies is a movie application developed using Beagle’s framework. It is possible to check movies and TV shows reviews and also create customized lists with what you want to watch or what you have already watched.

What were the tests?

Payload size

Generally a Server-Driven UI payload is bigger than the native one, because the whole layout structure comes from the payload, while the native one has only the information to be showed.

Despite that, in some screens the payload is inferior than the server-drive. This happens, because the BFF (Backend For Frontend) filters the data that it is not used in the application and it does not send the payload.

ScreensServer-Driven screen responses (in KB)Native screens response (in KB)
Home423,89 KB300,73 KB
Detalhes2,15 KB3,37 KB
Search12,8 KB14,45 KB
Test results438,84 KB318,55 KB

To more complex screens, the server-driven payload will be bigger. It is important to mention that Beagle uses a cache mechanism and this test is only considered in the first request.

Response time

  • Native screens: It is necessary to make several requests to set up the screen.
  • Server-Driven screens: It is necessary only one BFF request.
ScreensResponse time on Server-Driven screens (in ms)Response time on native screens (in ms)
Home312 ms448 ms
Detalhes179 ms346 ms
Search176 ms271 ms
Test result668 ms1065 ms

Performance test

iOS

See the performance difference on native and server-driven screens, considering the initialization process, screen render services request and reponse:

PhasesServer-Driven screen past time (in seconds)Native screens past time (in seconds)
Start test0,00 s0,00 s
Set up0,10 s0,06 s
Open project0,13 s0,08 s
Launch app0,15 s0,12 s
Setting up automation session3,95 s2,17 s
Test result8,21 seconds6,39 seconds


Last modified September 17, 2021: Reviewed Android section (#773) (e4c75e98)