Concepts / Building Search UI / Improve performance
Dec. 18, 2019

Improve Performance

Mitigate the impact of slow network in your search application.

You can mitigate the impact of slow network on your search experience by managing the user’s expectations. One way of letting them know that the network is suboptimal is by displaying a progress indicator, which will avoid them being frustrated by the network delays and blaming your application for lack of responsiveness.

See our Loading widget to implement this pattern.

Optimize build size

See the Android Guide on shrinking your code and resources.

Queries Per Second (QPS)

Search operations are not limited by a fixed “search quota”. That being said, they are limited by the maximum QPS and the operations limit of your plan.

Every time you press a key in InstantSearch using the SearchBox, we count one operation. Then, depending on the widgets you will be adding to your search interface, you may have more operations being counted on each keystroke. For example, if you have a search made out of a SearchBox, a HierarchicalMenu, and a RefinementList, then every keystroke will trigger one operation. But as soon as a user refines the HierarchicalMenu or RefinementList, it will trigger a second operation on each keystroke.

A good rule to keep in mind is that most search interfaces using InstantSearch will trigger one operation per keystroke. Then every refined widget (clicked widget) will add one more operation to the total count.

In case you have issue with the QPS you can consider implement a debounced SearchBox.

Did you find this page helpful?