Wednesday, February 23, 2005

Stateful vs Stateless SessionBeans in Clustered Env

We had a heated debate about some implementation decisions for this new project here at work. The final application will be clustered, so with that you essentially have no choice but to go stateless in all your session beans, or else you're locked into one node in the cluster (and that's not good).

**NEWS FLASH** it's been decided that we'll be using Tangosol's Coherence as a distributed caching solution (previous blog mentioned the competing bids of Coherence vs Gigaspaces).

Well, SLSB's are fine and dandy in theory but there *are* going to be places where you need state. A couple of people gasped when it was suggested that we needed state in a few places and from there the discussion went back to the topic of "but in the holy grail of clustered environments, we CANNOT have state".

So, by the end of the meeting it dawned on me (and everyone seemed to agree), that we could just use SLSB everywhere and the places you need a SFSB, implement it with a SLSB+Coherence. Now obviously there will be quirks that need to be dealt with but from a theoretical point of view, it seems perfect. The hybrid solution to stateless and stateful session beans.

If others have done similar things, please comment so we can avoid any common mistakes.

Wednesday, February 09, 2005

An update on my life is available, click here to download...

Work pressures have left me with little time to blog as much as I'd like so here's a summary of what's happened recently.

Life
My birthday just passed, as did my son's first year birthday. Can't believe how fast this year has gone. Just yesterday we were in the hospital with my wife giving birth to our first child. Happy Birthday Ethan! I want to thank my wife Daphne, and congratulate her for the awesome job she's done to keep the family and household in shape, it's been a huge adjustment for everyone.

We went on vacation at the end of Nov. Taking our son to Hong Kong to see the extended family for the first time. My mother-in-law was gracious enough to take care of Ethan for a week while my wife and I took a side trip to Tokyo, Japan. Read as much as you want about their high population density but you'll still be astounded when you actually experience it up close. It was amazing that you could take a 30 minute trip on their subway in any direction, walk up to street level and the number of people on the street was the same. It was packed everywhere you went. Another thing that impressed me was the quality of food. We didn't do any research on good places to eat, choosing to take it in stride and just explore the streets. Would you believe that in 5 days we only had one subpar meal and it was expected as it was fast food at a tourist attraction. There was so much to eat, we were eating like 5-6 small meals every day. That doesn't sound as bad as it seems when you consider we were walking constantly, doing shopping and sightseeing. All in all, an excellent trip and I'm definitely looking forward to going to some other cities such as Hokkaido in the future. Next time, I'd like to do less shopping and more sightseeing.

Work
Work has taken over a better part of my life for the past half year. I'm working on a high profile project that will generate millions of dollars in revenue for the company. For obvious reasons, I'm not going into any details...besides there isn't much of interest in terms of technology for this project. The daily pressures are really building and each time we get close to the deadline it's pushed back. Those type of delays really drain a person emotionally, almost like a marathon runner reaching the 25mile marker only to realize that they moved the finish line and it's a double marathon now. I spoke to the team lead yesterday and told him that I'm drained and if they don't give me some time to work at a more leisurely pace and do some interesting research after this system goes live, I'm gonna have a breakdown or I'll just go elsewhere. You can't push a person at max capacity for such an extended period of time, any company that does so doesn't care for the welfare of their employees and isn't a company that deserves my employment.

The project I'm going onto next has been having internal feuds between choosing an distributed caching solution. Right now, there are two parties battling it out over Tangosol and Gigaspaces. I haven't been active in this debate but it does interest me as I tried to champion the possible use of JavaSpaces here. If anyone has any comments on Tangosol or Gigaspaces, please share.