Vanilla search
Vanilla search queries the database directly without an index. Best for smaller archives or when you don’t want to run a separate search service.Enable vanilla database search
Highlight matching terms in search results
Number of results per page
Maximum total results to return (with underscores:
1_000)Allow searching across multiple boards simultaneously
Vanilla search may be slow on large archives. Consider using indexed search for better performance.
Indexed search
Indexed search uses a dedicated search engine for fast full-text search. Supports Lnx, Meilisearch, and Typesense.Base configuration
Enable indexed search
Highlight matching terms in search results
Number of results per page
Maximum total results to return (with underscores:
1_000)Search engine providerOptions:
lnxmeili(Meilisearch)typesense
Search engine host URL. Should be a LAN IP address (e.g.,
192.168.1.122) rather than localhost or a domain name for better performance.HTTP headers for search engine API requests, including authentication.Example:
API version (only matters for Quickwit)
Allow searching across multiple boards simultaneously
Lnx configuration
Lnx is a fast, embeddable full-text search engine. The[index_search.lnx] section provides Lnx-specific settings.
Maximum concurrent search queries. Good range: 4-16.
- Lower values (4-8): Better for larger datasets, prevents I/O and lock contention
- Higher values (12-16): Better for scaling requests/second on smaller datasets
Number of reader threads. Set to number of vCPUs available.
Number of writer threads. Set to number of vCPUs available.
Bytes in write buffer before mandatory block compaction and disk flush. Default is 2GB (2_147_483_648). Plan for extra memory overhead.
- 256MB:
268_435_456 - 512MB:
536_870_912 - 1GB:
1_073_741_824 - 2GB:
2_147_483_648(default)
Tuning Lnx performance
Tuning Lnx performance
For large archives (millions of posts):For high request rates:For resource-constrained systems:
Search engine comparison
- Lnx
- Meilisearch
- Typesense
Lnx is a Rust-based embeddable search engine.Pros:
- Fast and lightweight
- Low resource usage
- Easy to deploy
- Good for medium-sized archives
- Less feature-rich than alternatives
- Smaller community
Search plugins
Custom search plugins can extend or replace built-in search functionality.Enable loading search plugins from the plugins directory
Search plugins allow custom search implementations. Documentation for creating plugins is in development.
Configuration examples
Search strategies
Small archives (<1M posts)
Small archives (<1M posts)
Recommendation: Vanilla search or LnxVanilla search is sufficient for small archives and requires no additional services.
Medium archives (1M-10M posts)
Medium archives (1M-10M posts)
Recommendation: Lnx
Large archives (>10M posts)
Large archives (>10M posts)
Recommendation: Meilisearch or TypesenseDedicated search engines provide better performance and features for large datasets.
High traffic archives
High traffic archives
Recommendation: Meilisearch or Typesense with vanilla fallbackKeep vanilla search enabled as a fallback if the index service is unavailable.
Troubleshooting
Search not returning results
Search not returning results
- Verify search engine is running and accessible
- Check
hostURL is correct - Ensure authentication headers are valid
- Confirm index has been populated with data
- Review search engine logs for errors
Connection errors
Connection errors
- Use LAN IP address instead of
localhostor domain name - Check firewall rules allow connections
- Verify port is correct
- Test connectivity:
curl http://192.168.1.122:8000
Slow search performance
Slow search performance
- For Lnx: Increase
max_concurrencyand thread counts - Check database/index server resource usage (CPU, memory, disk I/O)
- Consider increasing
hits_per_pageto reduce pagination - Review query complexity and optimize
High memory usage (Lnx)
High memory usage (Lnx)
- Reduce
writer_buffersize - Decrease
writer_threads - Lower
max_concurrency - Consider switching to Meilisearch or Typesense for very large datasets