CKB:The Cryptshare Server becomes unresponsive under high load.

Aus Cryptshare Documentation
Version vom 14. Januar 2022, 11:35 Uhr von Maintenance script (Diskussion | Beiträge) (Imported from text file)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu:Navigation, Suche


Applies to:

All versions of Cryptshare Server

Symptom:

The Cryptshare Server responds slowly when it is used by a large amount of users at a time.


Cause:

The Cryptshare Server tries to respond to all requests but cannot answer the requests faster than they arrive.


Solution:

Solution 1: Increase the Amount of Available Resources

The slowdown can be caused by the Cryptshare Server not having access to enough resources to process all requests. Increasing the available RAM or using a faster CPU can solve this.

Solution 2: Adjust the Web Server Configuration

The configuration file "resources/WEB-INF/ui-config.xml" in the Cryptshare Server installation directory can be used to adjust how the web server behaves, the following section includes comments to highlight the options that can be adjusted to improve performance under high load. You can find the full documentation for the configuration file in the Jetty Wiki.

ui-config.xml  Expand source

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "resources/WEB-INF/configure.dtd">
<Configure id="Cryptshare" class="org.eclipse.jetty.server.Server">
    <Arg name="threadpool">
        <New class="org.eclipse.jetty.util.thread.QueuedThreadPool">
            <Arg name="minThreads" type="int">5</Arg> 
            <Arg name="maxThreads" type="int">25</Arg> 
            <Arg name="idleTimeout" type="int">1000</Arg>
            <Arg name="queue">
                <New class="java.util.concurrent.ArrayBlockingQueue">
                    <Arg type="int">200</Arg> 
                </New>
            </Arg>
        </New>
    </Arg>
   <Call name="addConnector">
      <Arg>
         <New class="org.eclipse.jetty.server.ServerConnector">
            <Set name="idleTimeout">
               <Property name="http.timeout" default="15000"/> 
            </Set>
         </New>
      </Arg>
   </Call>
   <Call id="sslConnector" name="addConnector">
      <Arg>
         <New class="org.eclipse.jetty.server.ServerConnector">
            <Set name="idleTimeout">
               <Property name="http.timeout" default="15000"/> 
            </Set>
         </New>
      </Arg>
   </Call>
</Configure>

Additionally, other settings of the Cryptshare Server can be adjusted to improve responsiveness as described here: Advanced Cryptshare Configuration