Java Virtualization for Server Consolidation
Steve Wilson writes "Cassatt Corporation has released new software that enables administrators with large J2EE farms to much more efficiently use their resources. In order to do this, it leverages the virtualization capabilities inherent in the JVM to create a single shared pool of hardware resources which which all J2EE applications can draw."
So, if a program is bogging down because of lack of machine resources, this software will move it to another machine - sweet! But, I guess, it will only work if Cassatt supports that platform? In other words, if I happen to have a SUN machine on my network of primarily Windows boxes, could it move it to that, or any other platform? I can't find anything that mentions this in the links.
Saturday is April 1. Slashdot will be shut down. Sorry for the inconvenience.
I think the point is that it works on linux and windows, instead of just unix. It's not just question about Jave but platform too.
The article, or the link from it, says question is about offering cheaper alternative to server virtualiazation. And refers to linux and Windows, which leaves unix as 'expensive'.
My understanding unix rocks with clusters and similar , linux and windows far less.
So the logic must be that it's cheaper to build linux or Windows virtualization system that scales than one from unixes.
That's the point, I'd wager.
Nobody knows the trouble I've seen, nobody knows has the trouble seen me, even I sometimes wonder why I write these line
100k for 40 servers. 100k will buy quite a bit of hardware. It would be better if they showed how they have saved companies money, and not just thrown out some stats, like they have seen a consolidation of 5 servers down to 1.
The more I learn about science, the more my faith in God increases.
Cassatt's control software costs about $100,000 for a 40-server pool. Adding the Web Automation Module increases the cost by about $5,000 per server, the company said.
Ok, so I can run java apps that save me lots of money on server hardware... for $100,000. unless I want to spend an extra $5,000 per server (bringing the total up to $300,000). So how is this going to save me money? I mean, I could by a whole bunch of 1U Dell P4 servers each valued at about $2k a piece. 40 of those would be only 80 grand. Now, I'm pretty sure that I pay my adminstrators so they can make an informed decision on grouping two or three services on a machine where it makes sense (like dns resolution and dhcp serving) and instantly save me a few machines there. And how many of my mission critical resource poor services are executed in Java? This seems like a huge waste of money to me. Besides how hard could this have been to come up with.. I mean, Java is running IN A VM in the first place. run an identical VM on another machine, add a little code to allow transfering of processes between VMs and you've got it. I'm sure it's got some tricky aspects, but is it that hard that it'll cost $300,000 to do? Something's fishy here...
-=JML=-
http://www.haifa.ibm.com/projects/systems/cjvm/ind ex.html
Sounds awefully like clustering JVM. One thing I am not sure is that;
1. failover is done by manager node?
2. application distribution over what stack? shared pool doesn't necessarily mean shared memory space.
3. parrallel or distributed processing or session clustering?
The more I think about it, this company sounds like a hype. $100,000 for 40 node pool and $5K per node is a bit of stretch in anyone's pocket in my opinion.
"Don't let fools fool you. They are the clever ones."
PLEASE stop using that word. It's not right.
My blog
"Java Virtualization for Server Consolidation"
These are english words, but I have no idea what they mean. Does it have anything to do with "customer-centric e-solutions in web-time"?
Well lets say your data centre is full, where are you going to put that hardware you buy with the $100k? Furthermore, those computers will slowly die and need to be replaced, and add to administration expenses like cooling and power.
In that case it's smarter to spend $100k on a product that can reportedly reduce server use by a factor of five, and make room for new applications to run on the same boxes you already have.
There are a number of complexities to this which mean it's not something you'd want to roll on your own, not if you wanted it to be stable anyway. And from the sounds of it since it's targeted at specific application servers (just Weblogic for now) it also has hooks into that system as well. To me the price seemed about right for a large company.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Take a look here for some objective information explaining how Java can (sometimes) be faster than statically compiled code. A fair criticism compared with fully compiled code is the JRE load time & basic memory requirement, as the bootstrap and the classes referenced in the classpath are loaded. For shared application "container" environments like a J2EE or Web server this cost is absorbed at startup.
Back on topic, I suppose this might be useful for companies with peak loads in various applications occurring at different times but it looks rather expensive. They must have done their market research though, so good luck to them.
My understanding unix rocks with clusters and similar , linux and windows far less.
This list says you should apt-get upgrade your understanding.
---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
Wow, you got an insightful mod when you didn't even understand the problem. The irony is overwhelming. Anyway, this really addresses a completely different problem than VMWare. It fits much more into the realm of distributed computing than virtualization. However, the JVM provides a *virtualized* platform that makes it easy to *distribute* the processing efficiently.
So, back to the VMWare thing, yes I suppose you could hack a cluster of ESX servers up to do this. Of course you would have all of the overhead that VMWare needs to introduce. This includes the host OS, world switch and priveleged instruction emulation overhead, guest os, and application image. On top of that, you would have to shovel images around your cluster to make it work so bandwidth would be a nuisance. You would also be severely limited in how dynamically you could reassign resources, given the requirements of the guest OS. And you would of course be restricted to x86 architectures, which may or may not be an issue.
So you could do it, but boy would it be dumb.
It's very similar to clustered J2EE application servers. With standard J2EE clustering you can group several machines together that all run a single application and spread clients between those systems though a round-robin approach(usually with sticky session) or new clients could be sent to the machine that is the least utilized. Currently with J2EE application server there isn't a whole lot of support for fine tuning client distribution with you own (performance/utilization) load balancing rules. That's where this software comes in, it looks like it adds in extra clustering features to Application Servers like BEA that can already be clustered(BEA is the only one supported at this point). I have nothing to do with these people, I'm a Java instructor and I spent 3 minutes looking at Cassatt's website. There seem to be some software cost justifications there too for those of you asking why it costs so much.
My Hello World is 512 bytes. But it's also a valid Fat12 boot sector, Fat12 file reader, and Pmode routine.
I'm so glad you asked this. Hardware is cheap to buy, but really expensive to run and maintain. Thing about all the costs:
Power (which Google now says costs them more than hardware)
A/C
Administration
Maintainance
Support
Software licenses (and J2EE servers like BEA aren't cheap)
We did an analysis with one of our customers on their costs. Each box (for a 2 CPU linux box) costs over $100,000 during it's three-year lifetime.
Steve Wilson
Cassatt Corporation
If they managed to make it relatively transparent it'd be neat, but there are probably all sorts of limits on the type of classes and such that can run on the virtualization layer (which covers multiple pieces of hardware, no?), like that they be serializable and implement some special form of runnable... If that's the case, I'd expect to find this at sourceforge for free =].
In english:
We use various technologies to allow us to efficiently and safely run more of your J2EE applications on fewer physical servers. By using fewer servers, but still maintaining your performance and availability characteristics, you can save a lot of money running your data center.
Does that help?
-Steve
Steve Wilson
Cassatt Corporation
http://www.cassatt.com/
It's difficult really to tell from the article, but is it a distributed JVM? Or just software to migrate java processes from one computer to another? I've personally tested a distributed JVM on a small beowolf cluster: http://www.cs.hku.hk/~clwang/projects/JESSICA2.htm l
It essentially keeps a single distributed heap for all of the objects, automatically migrates objects from one node to another, and migrates threads as well. To the programmer, it looks like a single computer, although you have to make sure as a programmer to utilize as many threading resources, and to decouple as many independent processes as possible to help the VM distribute resources better.
This seems like a high price, for a less ambitious technology.
-Jason Thomas.
Steve Wilson
Cassatt Corporation
Cassatt isn't a "Java Company." We make a product that helps people run data centers more effiently. We just introduced an extension to the product that makes it work really well with J2EE servers. However, our products also work with Microsoft technologies, and lots of our customers run Windows. No conflict there.
Side note: our internal IT and development systems are managed by our own product. We eat our own dog food.
-Steve
Steve Wilson
Cassatt Corporation