[ome-users] Improving webclient performance
Aleksandra Tarkowska (Staff)
A.Tarkowska at dundee.ac.uk
Tue May 10 20:07:08 BST 2016
Sorry forgot to mention, I'd expect single render_thumbnail response takes about 100-150 ms
Ola
> On 10 May 2016, at 18:48, Aleksandra Tarkowska (Staff) <A.Tarkowska at dundee.ac.uk> wrote:
>
> Hi Paul,
>
> could you provide output of
>
> - bin/omero admin diagnostics
> - ps aux | grep gunicorn
> - copy of your nginx.conf and omero-web.conf
>
> Are you using any proxy server in front of nginx?
>
> It is possible that bsession is slow, could you set public user, and import one of our example P-TRE images from http://downloads.openmicroscopy.org/images/DV/ . It will be easier to compare with benchmark on http://www.openmicroscopy.org/site/support/omero5.2/sysadmins/unix/install-web/install-nginx.html
>
>
> Thanks
> Ola
>
>> On 10 May 2016, at 14:35, Paul van Schayck <paul at vanschayck.nl> wrote:
>>
>> Dear all,
>>
>> I've been looking into the OMERO.web requests time. We sometimes have
>> the feeling that the interface is a bit sluggish, and could respond
>> more snappy. So I've done some small tests.
>>
>> Note that this is not a detailed analysis yet. But based on viewing
>> the logs and doing some small experiments for an hour or two.
>>
>> * Tests done on Ubuntu 14.04 VM with nginx and gunicorn. 4 cores, 4
>> GiB of memory. Increased shared memory settings for postgresql. No
>> other load on the server.
>>
>> * Requests to 404 pages of OMERO.web have a typical response time of
>> 25 ms. Leading me to believe that the nginx/gunicorn combination gives
>> relative little overhead.
>>
>> * Requests to real OMERO pages (like metadata details, the main index
>> or for example a tile) give about a time anywhere between 400 and 500
>> ms. With sometimes outliers to 300ms or 600ms.
>>
>> * Because I saw so little difference between metadata details or an
>> image tile I opted to just get the main index page. I used this
>> command in the end for most testing:
>>
>> curl "http://omero.local/webclient/?server=1&bsession=21145499-5e24-451c-b5de-5b95c95d7c9a"
>> -w "time_starttransfer: %{time_starttransfer}, time_total:
>> %{time_total}\n" -o /dev/null
>>
>> A typical request would give this output:
>>
>> time_starttransfer: 0,412 s, time_total: 0,415 s
>>
>>
>> Looking at this representative Blitz.log (also attached) the following
>> things stood out for me:
>>
>> * The time spent directly in OMERO is about 383 ms. Confirming again
>> that the network, nginx and gunicorn overhead is low as the total
>> request (as seen from the client was 415 ms)
>>
>> * There are 13 calls to getConfigValue. In total spending about 143 ms.
>>
>> * The queries executed are only a few ms.
>>
>> * There is a (unexplained for me) gap between two queries of 80 ms.
>>
>>
>> What really struck me is the 13 calls to getConfigValue taking so much
>> time. In general this is about 25% of the request time. Especially as
>> those values will in general be static between requests. Is there
>> something wrong on my side? Is there anything else I can do to speed
>> up web requests?
>>
>> Thanks,
>>
>> Paul van Schayck
>> <Blitz.log>
>> _______________________________________________
>> ome-users mailing list
>> ome-users at lists.openmicroscopy.org.uk
>> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users
>
> The University of Dundee is a registered Scottish Charity, No: SC015096
> _______________________________________________
> ome-users mailing list
> ome-users at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users
The University of Dundee is a registered Scottish Charity, No: SC015096
More information about the ome-users
mailing list