It appears the hype about cloud computing can't be prevented, however the actual transition to that particular new platform is susceptible to many discussions...
From the Theoretical point of view, the next could be stated:
- architectural change (you will possibly not install anything you like)
- learning curve (due to the above mentioned)
- no failover (since failure is taken proper care of)
- granular cost (pay per Ghz or Gbyte)
- immediate scalability (not too immediate, but a minimum of transparent?) ? lower latency
- failover (is dependent on provider)
- manual scalability (requires maintenance)
- static cost (you have to pay the package , whether you utilize it fully or otherwise)
- less expensive (for entry- packages only)
- data possession ( you need to do )
- liberty ( you need to do ) ? lower latency ( is dependent on provider)
Presuming the above mentioned is correct or otherwise Nonetheless, may well position is "it is dependent.." .. about the application itself. Now comes the hidden question: how does one profile your j2ee application to find out if it's an applicant to cloud or otherwise knowing that it's
- a quite large application in quantity of services/ functions (i.e. servlets)
- uses complex database (ie. num. tables)
- does not need much media assets, mostly text based
architectural change (you will possibly not install anything you like)
Is dependent: moving from the "handled server" to some Platform (e.g. GAE) may be.
learning curve (due to the above mentioned)
Amazon . com EC2 is probably not a large learning curve if you're accustomed to running your personal server
no failover (since failure is taken proper care of)
Is dependent: EC2 -> you need to roll your personal
immediate scalability (not too immediate, but a minimum of transparent?) ? lower latency Is dependent: EC2 -> you need to arrange for this / make use of an adjunct service
You will find numerous cloud companies and so far as I have seen you will find two primary kinds of them:
- Ones that support a cloud computing platform (e.g. Amazon . com E2C, MS Azure)
- Virtual instance companies supplying you capability to create numerous running instances (e.g. RightScale)
So far as the platforms, remember that relational database support continues to be quite poor and also the learning curve is very lengthy.
For virtual instance companies the training curve is actually little (you just need to turn on your instances), but instances take some method of syncing... for any complex application this may not work.
For your original question: I do not think there's any standard way you can profile wether a credit card applicatoin should / might be gone to live in the cloud. You most likely have to acquaint yourself using the options, limit to some couple of companies if the benefits you can get for them could be associated with a significant conquer handled hosting (which you are most likely presently doing).