4 Replies Latest reply on Feb 4, 2008 2:28 PM by andrefonseca

    Scaling Clearspace to accomodate 50,000 users

       

      Hi All,

       

      The Clearspace Environment is recommended as follows 

       

       

      Note: The number of users represents the total number of users, not "active" users. It's assumed that around 20 percent of the total users are active.

       

      Users

      CPUs

      RAM

      Location of App Server and Database

      Clustered?

      100

      2 dual core CPUs (at least 2 GHz)

      2GB, 1GB Java heap

      Share a box

      No

      500

      2 dual core CPUs (at least 2 GHz)

      2GB, 1GB Java heap

      Separate boxes

      No

      1000

      2 dual core CPUs (at least 2 GHz)

      2GB, 2GB Java heap

      Separate boxes

      Yes

      5000

      2 dual core CPUs (at least 2 GHz)

      4GB, 2GB Java heap

      Separate boxes

      Yes

      10000

      4 dual core CPUs (at least 2 GHz)

      4GB, 2GB Java heap

      Separate boxes

      Yes

       

      (as found in the link )

       

       

      http://www.jivesoftware.com/builds/docs/clearspace/latest/RecommendedEnvironmentsforClearspaceDeployments.html

       

       

      In our typical scenario, we expect the system to scale to 50,000 users (not all of them are expected to be online at a given time).

       

       

      And our hosting environment will be replicated across three locations and the database is planned to be replicated across two sites.

       

       

      The percentage of users expected to be online is not yet estimated.

       

       

      Any suggestions in as to what kind of environment should be used in this regard ?

       

       

      Yours,

       

       

      C. Karthikeyan.

       

       

       

       

       

       

       

       

       

       

       

       

       

       

        • Re: Scaling Clearspace to accomodate 50,000 users

          hi Karthikeyan,

           

          We have a performance engineer on staff who can help out with your numbers. I'll forward this thread along to him to see if he can help out.

           

          Cheers,

           

          AJ

          • Re: Scaling Clearspace to accomodate 50,000 users
            aron.racho

             

            Hi <span class="jive-thread-reply-body-container">Karthikeyan,

             

             

            If 20% of the 50,000 registered users are expected to be active, that makes 10,000 users who could potentially log in.

             

             

            If we assume that 10% of those active users could be online at any given time, doing activities, that makes 1,000 online, concurrently active users.

             

             

            For this type of load (1,000 online, concurrently active users) you could expect reasonable load with the following environment profile:

             

             

            - use  clearspace 1.10.1, which has performance and scalability improvements designed to handle huge loads

            - for best performance, use linux.

            - dedicated database server (I would make this a quad-core CPU); postgres 8.2.6 is the recommended database

            - dedicated load balancer (apache webserver, or dedicated physical load balancer like F5, etc.), set up to handle at least 1000 workers

            - application servers should be clustered, but present within the same switch. The application server nodes must keep caches synchronize amongst the members, so the network must be optimized for communication between nodes. For this type of load, I would recommend 4 dual code CPUs, or 3 quad core CPUs. No less than 2G heap. We recommend using Tomcat 5.5.25 and higher.

            - you must tune the application server caches to make sure that none of them are below 90% efficiency. This will involve increasing the default caches by x2 in most cases, and watching the caches during performance testing or production to make sure that none of them are marked inefficient. Inefficient caches will kill your system performance.

            - make sure you have a very healthy amount of maximum file handles.The default of 1024 in clean linux installs will not be sufficient for the amount of load you are anticipating.

            - make sure that your database is configured to handle at least 300 concurrent connections; also, make sure that the application database pool has a maximum number of db threads up to at least 300.

             

             

            Please let me know if I can help you further.

             

             

            Thanks,

             

             

            Aron