|
|
||
Hans Muller's BlogJune 2005 ArchivesJavaOne Desktop Report: A BIG web started deployment of a BIG banking app.Posted by hansmuller on June 29, 2005 at 03:20 PM | Permalink | Comments (4)It's JavaOne 2005, Monday afternoon, and I'm drifting around Sun's booths on the tradeshow floor. Moscone's meeting halls are two stories tall and underground; it's a basement palace. The cavernous space used by the tradeshow Pavillion must be a quarter of a mile long and a hundred feet high and it's abundantly and artificially lit. It's like being in an aircraft hanger that's inexplicably buried two stories below street level. So I'm ambling around with the same glazed expression I wear in casinos and supermarkets, when one of my colleagues buttonholes me. She's been talking to a developer/architect who's been thinking about building and deploying a large web started Swing banking application. It was to be deployed to about 5000 desktops and naturally the developer was interested to know about other financial institutions who'd already done the same thing. I've always tried to pay attention to what desktop developers are doing with Java and so this was, in theory, my moment to shine. Unfortunately the accumlated stress of preparing for JavaOne and my lack of Moscone underworld acclimatization had drained most of the charge from my brain. There are many examples of large financial institutions with web started desktop app deployments but sadly I was unable fire enough neurons to deliver the message. If I'd had a full charge, I would have directed the developer to the technical session on Wednesday called "Large Scale Client Deployment Using Java Web Start Software". I attended this session myself and made some notes. The presenter was Matthias Schorer who's the Technical Chief Architect at FIDUCIA IT AG in Germany. The presentation was an excellent introduction to using Java Web Start for big deployments of big real-world applications. I wanted to record a few of the highlights so that the next time I'm dumbstruck, I can point developers to my blog. FIDUCIA is the largest IT-Fullservice provider for the German cooperative Banks. They provide comprehensive software solutions to 920 banks. The service includes both desktop and server side applications and they run data centers for the latter. Managing about 38 million accounts (2.3 billion transactions/year!) requires lots of big iron. They've got nearly 1000 server machines and 138 terabytes of (SAN) storage. The desktop software is deployed on 106,500 PC desktops. And it's all Java. Desktop and server. All Java. Fiducia's web started desktop banking application, "Banking Work Place", is a big one. It's 10 million lines of Java, developed by 640 engineers, and it provides 553 user accessible functions. The complete set of application jars weighs in at a healthy 120M. The app runs on desktops with Windows, Linux, OSX, and even OS/2. It's also a great looking Swing application! I've appended some low resolution screenshots from Matthias's talk below. We'll get a Swing Sightings item with a bigger set of full resolution screenshots out shortly. The focus of the talk was the practical aspects of deploying such a large application to over 100,000 desktops. The developers at Fiducia have extensive experience with desktop Java. They deployed their first home banking applet in 1996, and they've been delivering web started apps based on the Java Banking Framework (JBF) since 2002. One of the biggest obstacles the developers had to overcome was that although branch banks typically have high speed LANS, they often have relatively low speed internet connections. The other problem was that individual banks wanted to be able to control what version of the app was deployed and when. All web started applications are cached and updates can be delivered as small deltas (jardiff). So, in many cases even very large web started apps can be deployed on the internet with a minimum of fuss, once the initial app download is taken care of. To accomodate low bandwidth connections, Fiducia puts a caching proxy on each bank's LAN, in between the Fiducia IT-Center download servers and the bank's desktop users. Download proxy servers (a single Java process) run on a bank file server and cache application jars as well as all of the jardiff differential downloads. Fiducia updates the proxy servers at night time, "because at night, nobody is in the bank". The proxy download server also helps with deploying different versions of the app. The application's JNLP file is actually a template that's expanded at request time to create a custom app definition based on the source of the request. The expanded JNLP file is passed along to the standard JNLPDownloadServlet which takes care of delivering the jar files and deltas. Interestingly, not only is the proxy download server written entirely in Java, it's also web started! The "Large Scale Client Deployment Using Java Web Start" technical session was inspiring and informative (many developers asked about getting the proxy download softare for their own applications!). Here are some low resolution screenhots of the app in action, look for more in a Swing Sighting preview on javadesktop.org soon.
If You've Got a Name - Check out this AppletPosted by hansmuller on June 17, 2005 at 01:27 PM | Permalink | Comments (4)I was in a technical meeting recently, with about a dozen developers, and the discussion topic turned to AJAX. We were seated at tables in the usual presenter-in-the-center horsehoe configuration. Each participant was ensconced in a defensive posture, behind a big laptop. The tenor of technical meetings has changed over the years, thanks to technology. Complex adjustable office chairs facilitate slouching behind a laptop screen's protective wall, so that it's only necessary to expose one's eyes and forehead to the rest of the room. When someone ventured a point about AJAX, it was like ringing Pavlov's bell. A dozen foreheads tilted upwards, eyes wide open and shining from the reflected glint of email messages and web pages. AJAX is the hot technology du jour, the saving grace for developers who've toiled for years, trying to make browser applications palatable. This was a sophisticated crowd, so the usual boosterism and swooning was quickly put aside in favor of some sober discussion about AJAX's shortcomings. Meeting participants often use laptops and wireless internet connections as a way to multitask, snapping from one context to another just like music videos have trained them to. This can be a very disturbing experience for a presenter, since it's very easy to judge how well your material is getting across in real time. If you're not more interesting than email, IM, and the web, your message will reach little more than the gray plastic backs of laptops. Your words will just bounce off the lowered foreheads, while the keyboards quietly crackle. Ringing the AJAX bell roused the entire group for a moment. If we'd all been wearing miner's helmets, the dramatic shift in attention would have lit up the speaker's face like a spotlight. Sometimes, web surfing in the middle of a discussion can have a very positive effect. When the web content you're scanning is related to the topic, a quick dose of the details can lead to a more informed discussion. Many people are much more effective at this than I am, so I've taken to watching what's appearing on the screens that flank mine. So, while the AJAX discussion lumbered along (apparently the developer documentation is inadequate) I kept an eye on my neighbors' screens. On my left, an interesting looking animated application appeared. The user typed names at what appeared to be a graph of the geological record and then a new version of the graph swooped into place. A closer look revealed that the graphs showed the relative popularity of people's names over the last 120 years. Given the discussion, I assumed that the application was some AJAXian miracle, like Google maps. I didn't get around to trying the app until the next day. That's when I discovered (insert trumpet fanfare here) that what I'd been watching was an applet called Name Voyager. This applet is very cool and it's appealing to anyone who has a name. You will not be able to resist typing your appellation at the top to see how its popularity as fared since 1900. Although I was born and raised in the (great state) of New Jersey I have a pretty ethnic German name. The results from the Name Voyager for "Hans" are interesting. There's a big dip in the name's popularity in the 1940s. I wonder why.
Apology
Name Voyager Applet Screenshot: Hans's Popularity since 1880 | ||
|
|