This document describes the results of performance tests for WebSpellChecker Web API. The performance and load were tested on the following setup:
- 100 users accessing the server simultaneously;
- Cache enabled for spell checking purposes;
- Certain hardware and software used (EC2 m5.large instance with 2 CPU and 8 GB RAM);
- Number of words to be checked (1K words);
- Number of spelling and grammar problems in the text (15 grammar problems | 35 misspellings);
- Type of the language used for check (17 default languages).
Testing goal
Our main goal was to observe the response time of text processing and CPU utilization on the server when 100 users send simultaneous requests on various languages to the server with WebSpellChecker v5.6.2.
Environment and testing tool
- We used Apache Jmeter 5.1.1 as a performance measuring tool.
- The machine used was AWS EC2 m5.large instance with 2 CPU and 8 GB RAM.
- The version of the WebSpellChecker Server package is 5.6.2 (released on July 8, 2020).
Testing process
We have run our tests continuously for each of the languages in the default language group (17 languages). The cache setting was enabled for all sets of tests. The following combinations of text to be checked are used for each language and for each user tier:
- 1K words (6K characters) with 50 grammar problems, 200 misspellings;
- 1K words with 15 grammar problems only;
- 1K words with 35 misspellings only.
The measured were the response time and CPU utilization.