Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>What we did for sorting this issue out is as follows:</p> <pre><code> &lt;property name="hibernate.cache.use_second_level_cache"&gt;false&lt;/property&gt; &lt;property name="hibernate.search.default.directory_provider"&gt;org.hibernate.search.store.FSDirectoryProvider&lt;/property&gt; &lt;property name="hibernate.search.Rules.directory_provider"&gt; org.hibernate.search.store.RAMDirectoryProvider &lt;/property&gt; &lt;property name="hibernate.search.default.indexBase"&gt;/usr/local/lucene/indexes&lt;/property&gt; &lt;property name="hibernate.search.default.indexwriter.batch.max_merge_docs"&gt;1000&lt;/property&gt; &lt;property name="hibernate.search.default.indexwriter.transaction.max_merge_docs"&gt;10&lt;/property&gt; &lt;property name="hibernate.search.default.indexwriter.batch.merge_factor"&gt;20&lt;/property&gt; &lt;property name="hibernate.search.default.indexwriter.transaction.merge_factor"&gt;10&lt;/property&gt; &lt;property name ="hibernate.search.reader.strategy"&gt;not-shared&lt;/property&gt; &lt;property name ="hibernate.search.worker.execution"&gt;async&lt;/property&gt; &lt;property name ="hibernate.search.worker.thread_pool.size"&gt;100&lt;/property&gt; &lt;property name ="hibernate.search.worker.buffer_queue.max"&gt;300&lt;/property&gt; &lt;property name ="hibernate.search.default.optimizer.operation_limit.max"&gt;1000&lt;/property&gt; &lt;property name ="hibernate.search.default.optimizer.transaction_limit.max"&gt;100&lt;/property&gt; &lt;property name ="hibernate.search.indexing_strategy"&gt;manual&lt;/property&gt; </code></pre> <p>Above parameters ensured that the worker threads are not blocked by lucene and hibernate search. Default optimizer of hibernate made our life easy, thus I consider this setting very important.</p> <p>Also removed the C3P0 connection pooling and used inbuilt JDBC connection pooling, thus we commented below section.</p> <pre><code> &lt;!--For JDBC connection pool (use the built-in)--&gt; &lt;property name="connection.provider_class"&gt;org.hibernate.connection.C3P0ConnectionProvider&lt;/property&gt; &lt;!-- DEPRECATED very expensive property name="c3p0.validate&gt;--&gt; &lt;!-- seconds --&gt; </code></pre> <p>After doing all this, we were able to reduce considerably the time which an AJP thread was taking to serve a request and threads started coming to R state after serving the request i.e. in S state.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload