4 Replies Latest reply: May 5, 2012 11:40 AM by vchmakov RSS

How to scale with REST server

vchmakov Newbie

Hi,

 

It seems like all requests via REST interface are serialized. I’m not sure on what level the serialization occurs. Can anyone please advise?

 

Thanks,

 

Vlad

  • 1. Re: How to scale with REST server
    Galder Zamarreño Master

    What do you mean by serialized?

  • 2. Re: How to scale with REST server
    vchmakov Newbie

    I mean that in my tests every thread adds equal amount of time to the results. E.g. if one thread requires 200 ms to get 1000 values, then 2 threads do the same work for 400 ms and etc.

  • 3. Re: How to scale with REST server
    Galder Zamarreño Master

    Hmmmm, interesting. Can post your test here so that we can run it on our side?

  • 4. Re: How to scale with REST server
    vchmakov Newbie

    Hi,

     

     

    While preparing the test application I figured out a few things.

    1)      The contention point(s) might as well be inside the our own application. E.g. internal memory manager, the OS when system resources are requested etc.

    2)      The performance provided by the Infinispan’s REST interface is adequate to our current needs

     

     

    However, I’m attaching a simple test application. Here are the prerequisites .

     

    1)      It is a 32-bit Windows application written in Delphi. TIdHTTP component is used to access the REST service.

    2)      The application populates the cache with specified number of items

    3)      The key is a sequential number converted into string – 1, 2, 3 etc.

    4)      The value is a string ‘abcdefg’.

    5)      Application creates specified number of threads

    6)      Each thread performs 5 loops. Within each loop cache is accessed specified number of times (number of items populated)

    7)      The Infinispan is configured with default settings

     

     

    The tests have been performed against JBoss AS 7.1.1 standalone and clustered via load balancer with different number of nodes all on the same box (4-core Intel i5 with 8 GB of memory). The testing results are pretty much consistent.

     

    If you guys are willing to give it a try, please let me know your thoughts afterwards – no matter if you find any issue or not.

     

     

    Thank you for your time,

     

     

    Vlad

     

     

    PS: Just a few words off the topic. I’m really impressed with Infinispan. Performance, simplicity of use, simplicity of configuration, CDI support, works right out of the box, etc., etc. – all this deserves respect. We have our own implementation of distributed cache in Delphi and I know way too well how many problems there are on the way until it finally starts working.