> I have a few questions: > > 1) Does anyone know of Wicket being used on a high traffic website?
I know of people building them, but the ones I know are not yet in full production. But maybe someone else on this list knows. > 2) What are some of the challenges related to scaling a Wicket > application (beyond the general servlet recommendations of being > stateless as long as possible, keeping the state small to facilitate > clustering, etc)? The only tradeoff of Wicket is that Wicket is heavy on memory. While that is not a big problem per se, it is something to keep in the back of your mind, and one of the first things you would optimize when the time comes to tweak your application. In general, try to use detachable models when you create database driven apps, tweak the number of history items kept, etc. Oh, and don't forget to set wicket to deployment: <context-param> <param-name>configuration</param-name> <param-value>deployment</param-value> </context-param> in web.xml. That'll have quite a big impact on the throughput. One thing to be careful of is Wicket with (public facing) sites with a load that is hard to predict. If you have very large peaks you probably want to keep your session time out low, and investigate stateless pages (and forms and links etc), which are most mature in Wicket 2.0 (though there is limiited support in 1.2). > 3) Tapestry uses page and component pooling to help achieve higher > throughput... Yeah, and whether that is a good thing is highly debatable. If you read up on optimizing Java code, object pooling is usually on top of the list of things you *should not* do, as it is likely the synchronization you need will the bottleneck and hotspot is very good in managing short lived objects. We have tested Tapestry vs Wicket performance a bit over a year ago, to look for spots we might optimize, and our results were that Wicket had a higher throughput even without optimization. > It doesn't appear like Wicket can employ such a > technique due to the framework allowing direct page and component > instantiation. Are pages and components so light weight pooling them > is not worth the disadvantages of not being able to pass parameters > via constructor or is this a known trade off? Wicket's unmanaged model encompasses much more than just passing in parameters in the constructor. It means you decide on any form of construction you like, it means you can program 'just java' as you would do in other tiers of your application, and you can construct all the aggregations you want. Furthermore, like I said above, pooling is not even an advantage. > Thanks for any information you can provide! I will be sure to post the > results of my investigation on this list in a week or two. > > Ryan Sure. Maybe you want to share the exact tests you're doing too? Eelco ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user