Have you try the command line options -verbose:class to list all classes loaded 
in the JVM at startup ?
For example loading Yauaa (Yet Another UserAgent Analyzer, 
https://github.com/nielsbasjes/yauaa) or Simple Magic 
(https://github.com/j256/simplemagic) takes time.

François


> Le 3 janv. 2023 à 16:36, Martin Terra <martin.te...@koodaripalvelut.com> a 
> écrit :
> 
> Just a note, you don't need to make the startup "pre-touching" process a
> blocking one so that if a user were to interact with the app, they could do
> so while startup pretouch is doing its thing.
> 
> And you could profile whether you want to do the pre-touch in single thread
> or multi-thraded.
> 
> **
> Martin
> 
> ti 3. tammik. 2023 klo 16.58 s...@stantastic.nl kirjoitti:
> 
>> Thanks everyone. I did not expect the amount of feedback that I got. It
>> is much appreciated.
>> 
>> I spent most of my day profiling with VisualVM and it strengthened by
>> beliefs that my problems do not appear to be related to anything but
>> Wicket combined with our dated hardware. Please do not consider this a
>> criticism. I understand that not a lot of people run servlet containers
>> on this kind of hardware nowadays.
>> 
>> My database queries all run quickly and my domain classes are hardly
>> even touched when the system starts. Our rather simple login page -
>> which is stateless and does not query the database when the form is
>> empty - takes 5-15 seconds to load on the first try. Subsequent requests
>> take about 40-120ms (browser caching disabled). Once logged in, the
>> other pages do not take as long, but they do feel sluggish until they
>> have been requested once.
>> 
>> I tried to only load the quickstart example as Martijn suggested. It
>> starts more quickly than our own application but all things considered,
>> its performance did not impress me and that application really is super
>> simple. The first page load of the quickstart took about 2 seconds,
>> after that it normalized to about 30ms per request.
>> 
>> When all pages have been loaded once, things are absolutely fine. So I
>> am considering Martin's approach of preloading components. That still
>> leaves me with the considerable startup time but we will learn to live
>> with that. Or we might switch from Tomcat to Jetty eventually.
>> 
>> If anyone thinks I might be leaving some stuff on the table, I would be
>> open to hire someone to do some consulting work on this. Please get in
>> touch with me if you are interested.
>> 
>> Cheers.
>> 
>> Stan
>> 
>> 
>> Martin Terra schreef op 2023-01-02 04:29:
>> 
>>> Anything in wicket can be preloaded,  but as premature optimization is
>>> evil, you should profile your application.
>>> 
>>> If you do not have debug access to a real/simulated environment then
>>> the
>>> least you can do is make your own thread logger to log what the threads
>>> are
>>> doing.
>>> 
>>> **
>>> Martin
>>> 
>>> ma 2. tammik. 2023 klo 3.19 Anna Eileen (shengchehs...@gmail.com)
>>> kirjoitti:
>>> 
>>>> Hello
>>>> 
>>>> Would you please describe your web application components? Database ?
>>>> What services ran on the device?
>>>> 
>>>> From: s...@stantastic.nl <s...@stantastic.nl>
>>>> Date: Monday, January 2, 2023 at 5:23 AM
>>>> To: users@wicket.apache.org <users@wicket.apache.org>
>>>> Subject: Wicket on low end hardware
>>>> 
>>>> Hi,
>>>> 
>>>> My use case for Wicket is a quite unconventional one. I use it as the
>>>> framework for the web interface of an appliance that runs on low end
>>>> hardware. The appliance doesn't have gigabytes of memory to waste or
>>>> tens of CPU cores. It's more like Celeron powered hardware with maybe
>>>> one or two gigabytes of RAM.
>>>> 
>>>> I general this all works and customers are happy once the device is
>>>> running. But I find that deployment is quite slow, and so are the
>>>> first
>>>> couple of page loads of the day. Just to be clear: I cannot really
>>>> claim
>>>> that my performance problems are all Wicket related. They may be, but
>>>> they probably also are down to other underlying issues. A badly
>>>> optimized database, or a badly configured servlet container come to
>>>> mind...
>>>> 
>>>> However, I was wondering if anyone has experience in using Wicket on
>>>> low
>>>> end hardware. I would be very interested in how to optimize for this.
>>>> 
>>>> Thanks,
>>>> 
>>>> Stan
>> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to