I’ve recently returned from IBM Connect 2014 in Orlando, Florida where I presented a two hour masterclass session on XPages Scalability (JMP401: Masterclass: XPages Scalability) along with my colleague and XPages Architect, Martin Donnelly. This session was designed to be a natural follow-on from the previous XPages Performance Masterclass series already available for you to watch here on this blog.
The first half of JMP401 describes the distinct differences betweeen Performance and Scalability – highlighting the fact that they are two separate entities and should be dealt with in that manner. Essentially, efforts to improve one can conflict with the other and vice versa. A brief recap of the Performance area then closes out the first half so as to ensure you are primed and ready to deep dive into the second half – afterall maximum Scalability cannot be achieved without maximum Performance!
The second half of JMP401 then nose dives directly into the mechanics of the XPages Runtime that deal directly with, and have the biggest impact on Scalability. It then shows how to decipher the internal memory footprint of an XPages server – from the applications and user sessions within it, going right down to the individual component tree memory structures for each XPage. Finally, details about the range of settings you can leverage at both server and application level are explained so you know exactly how to fine tune and optimize your XPages box! The session closes out with a test case scenario based upon my XPages Insights Into Big Data application, where two different versions of this application are profiled. One is highly scalable, whilst the other is not! Neatly demonstrating a case and point in how XPages developers / customers fall into common Scalability pitfalls everyday and how to avoid them!
Continue reading XPages Masterclass: Scalability
With the dawning of “Big Data” and Analytics, we as Software Engineers and Developers need to, more than ever, efficiently utilize all computing resources, both hardware and software, in order for our applications to optimally harvest and process such data.
This XPages Insights into Big Data OpenNTF project contains a “Phase 1” sample application that demonstrates two things:
– A simple data partitioning pattern to enable “Big Data” scalability (potentially TeraBytes ++). Achieved via a Managed Bean routing layer within a data-less XPages “dashboard” application.
– Multi-database parallel searching across a large data-set. When a search is requested within the UI, a multi-threaded concurrent search is carried out across twenty-six different databases before providing a seamless search result back to the end-user.
Continue reading XPages Insights into Big Data
Follow the XPages Masterclass Video Series throughout 2013 where four series will be published covering various topic areas vital to building robust, performant XPages applications.
In this first XPages Masterclass video series, you will gain insight into the XPages Request Processing Lifecycle – this is the “center of gravity” for every XPages request and response and you will learn why it is important for you as an XPages Developer to understand it.
Series 1 uses a sample application (lifecycle.nsf) to introduce and explain key aspects of the XPages Request Processing Lifecycle. The XPages Toolbox is also used to further highlight the importance of becoming proficient in understanding the XPages Request Processing Lifecycle in order to be able to profile and tune your XPages applications. Series 1 – Video 4 completes the first series by explaining and demonstrating four main characteristics of the XPages Request Processing Lifecycle before undertaking a detailed examination of the Greenwell Helpdesk application where some day-to-day use cases turn up surprising results that are then optimized to produce a truly performant and robust application.
Series 1 includes four video’s – an introduction video, plus three extensive deep-dive videos:
Continue reading XPages Masterclass Video Series – Series 1