Installation Tuning

To tune the application for high performance, please allocate the recommended amount of CPU and memory based on your documents, number of collections and number of search users.

1.) Start by verifying the amount of memory utilized by SearchBlox and Elasticsearch

Verify Memory Allocation

  • You can verify the memory allocated to SearchBlox in the Admin Dashboard license page
517

Verify Elasticsearch Memory Allocation

  • You can verify the memory allocated to Elasticsearch using the URL: https://localhost:9200/_nodes/jvm?pretty=true
    The heap memory allocated in bytes is displayed.
640

Improve Concurrent Collections Indexing

  • If you plan to run multiple collections simultaneously you can increase performance by increasing the jetty thread values in <SEARCHBLOX_INSTALLATION_PATH>/start.d/start.ini
  • By default, minThreadPool count is 20 and max ThreadPool count is 100. We recommend increasing the thread pool count as shown below for multiple collections with larger datasets.
  • Update start.ini with the following snippet at the end of the file and restart the SearchBlox service.
# --------------------------------------- 
# Module: threadpool
# Enables the Server thread pool.
# --------------------------------------- 
--module=threadpool


### Server Thread Pool Configuration
## Minimum Number of Threads
jetty.threadPool.minThreads=100

## Maximum Number of Threads
jetty.threadPool.maxThreads=450

## Number of reserved threads (-1 for heuristic)
# jetty.threadPool.reservedThreads=-1

## Thread Idle Timeout (in milliseconds)
#jetty.threadPool.idleTimeout=60000

## Whether to Output a Detailed Dump
#jetty.threadPool.detailedDump=false

What’s Next

You can go through the related sections below