When there is a need to build on-premise Search solution, Solr or Lucene will occupy the top place in the list.

If you are new to Solr or Lucene, most probably next question would be Solr or Lucene?

Lucene is Java-based indexing and search technology, technically there is no difference when considering indexing of Solr and Lucene.

Solr is built on top of Lucene.

Since Solr uses Lucene, Solr indexes and Lucene indexes are one and the same thing.

What is so special about Solr when we have Lucene?

Solr is a multi-server implementation of Lucene, if you are running a distributed application then Solr is for you.

Solr has a web UI and provides JSON API to search, allows easier scaling, better language support and allows there to be a dedicated endpoint for search.

When to use Lucene?

If you need to embed search functionality into a standalone application then Lucene is the right choice.

In multi-server scenario Lucene tend to create a lot of issues, Solr will be the best choice.

For example, if your site is displaying a list of articles based on the index, in multi-server scenario (more than one server) each of the servers used to display the different count in articles because the index was not getting properly updated in one or more servers.