Automattic / Automattic/wp-calypso

Marketplace search: investigate API performance

Open
#69,062 0 comments 0 reactions 0 assignees View on GitHub
20percent Marketplace Marketplace Jetpack Search Marketplace Search: Later Phases
Dominant language
TypeScript
Stars
12.6k
Forks
2k
Avg merge
1d 17h
Merged PRs (30d)
552

Description

The current average response times for both searching and fetching categories are around 700ms. This seems to be slow compared to the WP.org API which we migrated from. We should investigate if we could improve the performance of the ES search API for these types of requests.

| | WP.org API | Search API
| --- | --- | ---
| Search | ![CleanShot 2022-10-14 at 10 57 27@2x](https://user-images.githubusercontent.com/11555574/195806646-d717268f-a877-4258-850f-398be77fac43.png) | ![CleanShot 2022-10-14 at 10 54 01@2x](https://user-images.githubusercontent.com/11555574/195805926-50c0a971-d19f-4fe6-9bbe-351793717252.png)
| Categories | ![Image](https://user-images.githubusercontent.com/11555574/195805126-9136f64d-b738-41ce-bfb1-a4df881af9fd.png) | ![Image](https://user-images.githubusercontent.com/11555574/195805409-443070b9-7631-401b-9610-5a76ed3e354e.png)

We could establish some averages on the response time from the seedbox using [this approach](https://stackoverflow.com/a/22625150/13466052).

Contributor guide

Open the contributing guide

Research direction

Start by establishing response-time averages on the seedbox using the linked Stack Overflow approach, then trace the Elasticsearch search API requests for marketplace search and category fetching. Done means identifying the source of the roughly 700ms responses and validating a measurable improvement against the WP.org API comparison.

Written by the indexing model from the issue text.

Assessment

Tech stack
elasticsearch, typescript
Domain
api, performance, search
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.