Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate the performance of the iOS SDK vs the JS one #695

Closed
funkyboy opened this issue Feb 20, 2018 · 2 comments
Closed

Investigate the performance of the iOS SDK vs the JS one #695

funkyboy opened this issue Feb 20, 2018 · 2 comments
Assignees
Labels
enhancement New feature or improved functionality.

Comments

@funkyboy
Copy link
Contributor

See project here
TLDR; JS SDK is faster in receiving/manning messages.

@funkyboy funkyboy added the enhancement New feature or improved functionality. label Feb 20, 2018
@funkyboy funkyboy self-assigned this Mar 5, 2018
@funkyboy
Copy link
Contributor Author

funkyboy commented Mar 5, 2018

While having a debug or verbose logging level can be handy for developing, it introduces quite a overhead when measuring performance. In general we should be wary of measurements reported by customers when performed in debug mode.

On top of this I think our iOS SDK suffers of "unconditional logging". Meaning that some log statements are triggered regardless of the logLevel set in ARTClientOptions.
Measurements performed on this branch (and in particular with these changes) show that the roundtrip (sending and receiving from the server the same message, using local time as the exclusive reference point) for a message in iOS is around 80ms and is definitely comparable with the performance of the JS SDK, also around 80ms.

I will test these changes also to investigate this memory consumption issue, which I suspect is also affected by the uncontrolled logging mentioned above.

@funkyboy
Copy link
Contributor Author

Fixed by #702

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or improved functionality.
Development

No branches or pull requests

1 participant