dtSearch Web system requirements and performance

Article: dts0139

Applies to: dtSearch Web

For information on dtSearch Desktop system requirements, please see this article:
     dtSearch system requirements

Supported Windows Versions:  

Windows Server 2022 (dtSearch Web 2021.02 and later)

Windows Server 2019 (dtSearch Web 7.93 and later)

Windows Server 2016 or 2012 (dtSearch Web 7.68 and later)

Windows 10 or 11 (dtSearch Web 7.80 and later)
Windows 8 (dtSearch Web 7.68 and later)
Windows 7 (dtSearch Web 7.62 and later)
Windows Server 2008 (dtSearch Web 7.51 and later)

dtSearch Web requires Internet Information Server 6 or later, and requires that the IIS MetaBase be installed. Therefore, dtSearch Web cannot be installed on a web server other than Internet Information Server, even if that web server is advertised as supporting ISAPI.

64-Bit Operating Systems

dtSearch Web versions 7.51 and later include a 64-bit version of dtSearch Web and dtSearch Web Setup to use with 64-bit operating systems.  The 64-bit versions are installed in the BIN64 folder under the dtSearch Developer program folder.

Additional Information

For information on supported Windows versions, please see dtSearch Engine system requirements (Windows, Linux, macOS).  In addition to a supported version of Windows, dtSearch Web also requires Internet Information Server (IIS).

dtSearch Web uses information in the Windows MetaBase, part of IIS, to detect the web server configuration. The ISAPI specification does not provide a way to obtain this information. ISAPI only covers processing of queries, and does not provide a sufficiently functional mechanism for detecting the virtual directory mappings on the server. Therefore, even if another web server is fully ISAPI-compliant, dtSearch Web will not be able to detect its web server configuration.

Linux.  The Linux version of the dtSearch Text Retrieval Engine has a Java and C++ API only, so some programming is needed to make any use of it.  There is currently no pre-built search interface for Apache.

Hardware Requirements

dtSearch Web does not have any specific hardware requirements. As long as Windows can run efficiently (without a lot of disk swapping) little additional memory is needed for dtSearch.

While a search is executing, dtSearch Web may allocate between 1 and 10 Mb of memory to process that search. Once the search is done (most searches are completed in substantially less than a second), the memory is released. Therefore, unless a site receives thousands of searches per hour, the amount of memory needed for dtSearch Web will be very small.

Recommendations for best performance:

1.   At least 2 Gb of memory (so Windows will run efficiently)

2.   The dtSearch index folder should not be compressed using NTFS compression, because this can slow index access considerably. NTFS compression will provide little benefit in reducing the size of a dtSearch Index, because most of the index data is stored in a highly compressed format.

3.   Index updates will be faster and more reliable if dtSearch Desktop runs on the machine where the index is stored.   It matters much less where the documents are located, because dtSearch just needs to read each document once to index it.   

See also:

Optimizing search performance with the dtSearch Engine
Optimizing indexing of large document collections

Shared Servers

dtSearch Web can be run from a shared web server, because it supports installation on web servers with multiple web sites. When dtSearch Web Setup is started, it will display a drop-down list of the web sites defined on the server. Select the site to use and click the Install button to install dtSearch Web for that site.

dtSearch Web cannot be installed or configured through a web browser interface, though. Therefore, you will need either physical access to the server where dtSearch Web will be installed, or you will need to use remote access software such as PC Anywhere.

Scalability and Clustering

dtSearch Web is designed to operate in a completely "stateless" manner, meaning that no information about a user is retained between requests. This makes adding capacity to a site easier because you can simply add more servers, without the need to tie each user session to a particular server. Therefore, the recommended way to add capacity to a dtSearch Web search site is to clone the site on multiple, separate servers, and to use web server load-balancing software to allocate user requests among the servers.

dtSearch Web uses an efficient threading model so that it can handle multiple concurrent queries simultaneously under IIS, and can make efficient use of multiple processors where present. There is no built-in limit on the number of concurrent users the dtSearch Web can handle. Searching is done without any need for file or record locks, so aside from the need to share CPU and other hardware resources, one search user has no effect on another concurrent search user.