Friday Jul 18, 2014

Tech Article: Build with NetBeans IDE, Deploy to Oracle Java Cloud Service

If you've decided PaaS is is what your application needs, see how you can swiftly build and deploy applications to Oracle Java Cloud Service using NetBeans IDE. In "Build with NetBeans IDE, Deploy to Oracle Java Cloud Service," Oracle ACE Harshad Oak shows you how to set up Oracle Java Cloud Service, then install and use the Oracle Cloud Plugin in the NetBeans IDE.

Oak explains "Considering the rapid adoption of cloud-based services, it will only be a matter of time before we will all be building software using IDEs that integrate with multiple cloud services for various stages in the software development process." Read "Build with NetBeans IDE, Deploy to Oracle Java Cloud Service," and put your applications in the cloud. 

Monday Feb 03, 2014

PaaS for Java Developers

The concept of Platform as a Service promises a deployment and runtime option where operating systems and services are managed for you, where scalability concerns are handled more or less automatically and where late-night calls about unavailable systems are a thing of the past. But how close is this to reality? In the "Java PaaS" hands-on lab at the Jfokus conference today, developers learned about the current PaaS landscape.

Håkan Jonson and Patrik Fredriksson, both developers at Citerus, presented ideas based on their experiences delivering business applications in the cloud. They provided help with how to "navigate your way through the swamp of vendor logos." The PaaS industry has moved from infancy to consolation quickly, so it's great to get advice experienced users.

Here are the guidelines they provided on what to consider when looking at PaaS providers. You should consider:

  • The company's level of maturity (how far out of beta are they? can they point to success stories?where is the documentation?)
  • What are the deployment routines? (how hard is it to set up? how long does redeployment take? do they offer CI? )
  • What tooling is included? (admin, monitoring)
  • What is infrastructure and service stack technology? (on top of EC2? machines running in someone's a basement? what's the language and DB language support?)
  • SLA and legal considerations (where are the machines physically running? will your app be affected by network latency?) 
  • What is the pricing model? (fixed price or by consumption? how do you pay?)

and, most importantly,

  • What is Your ESCAPE ROUTE? How do you get your app and data out if things go wrong? 
To protect yourself, it is best to:

  • Use an established and mature tech stack (established/common technologies may not be the flashiest, but ubiquity makes it much easier to switch)
  • Keep the number of platform customizations to a minimum
  • Own your data (have your own import/export procedures)

Johson told a story of a having spun up an app very quickly and having "three exciting weeks with the app running. It had deployed very quickly. We had 99% uptime!" Then they started learning the limitations of their vendor. They needed more instances than originally planned (dev, test, production), therefore got a higher bill for infrastructure (the client was not happy to learn this). When they started to tweak the JVM, it took them outside the vendor's "standard config." Security issues came up when they learned that data going between nodes was unencrypted. The physical location of the cloud instances had an effect the application's responsiveness. All of this lead to the painful realization that the vendor's support staff was a different time zone, leaving only a two hour overlap of business hours.

The last straw was when the vendor accidentally deleted the entire application, including data. It took the vendor several hours to get the app back online. This lead them to the three most important considerations:

  • OWN YOUR DATA - they were able to switch to another provider in 3 hours
  • BE AWARE OF GEOGRAPHY - both for network latency and tech support hours
  • PRICING - expect to need mirrored environments (stage and test) or prices might be higher than you expect

With this much to consider, is PaaS really worth it? Why not just do IaaS? A good question, but as a developer, PaaS provides a quick way to spin up an application, automatic scaling, OS updates, and for you, the developer, it's one less thing to worry about.  A few PaaS vendors even provide a free tier to get started with. As with all technologies, PaaS has advantages and disadvantages. Nikoloas Roumpoutsos was at the lab and liked it because "it's always good to have another tool in your toolbox."

Thursday Oct 03, 2013

Hands on with Oracle Java Cloud Service in Java Magazine

The latest issue of Java Magazine, which takes as its theme “Seize the Cloud,” has an article by IndicThreads founder Harshad Oak, titled “Hands on with Oracle Java Cloud Service, Part One,” that provides an introduction to Oracle’s platform-as-a-service (PaaS) Java offerings. PaaS is about renting a software platform and running a custom business application on it, thus enabling developers to focus on the business application and not have to worry about the hardware or core software platform, according to Oak.

Oak points out that, “Java EE has been the primary software platform for enterprise and server-side development for more than a decade, and it is increasingly the platform of choice even on the cloud.”

He explains that Oracle’s cloud push began in 2011, and has subsequently launched several cloud solutions that support more than 25 million cloud users worldwide. “Oracle Java Cloud Service and Oracle Database Cloud Service have been Oracle’s most visible PaaS solutions so far,” comments Oak. “Oracle’s other PaaS offerings are Oracle  Developer Cloud Service, Oracle Storage Cloud Service, and Oracle Messaging Cloud Service. Oracle Developer Cloud Service simplifies development with an automatically provisioned development platform that supports the complete development lifecycle. Oracle Storage Cloud Service enables businesses to store and manage digital content in the cloud. Oracle Messaging Cloud Service provides an infrastructure that enables communication between software components by sending and receiving messages via a single messaging API, establishing a dynamic, automated business workflow environment.”

All in all, the article examines the Java PaaS space and presents guidelines in selecting a Java PaaS service. It offers a basic description of Oracle’s Java PaaS solution—Oracle Java Cloud Service—and its capabilities. Looking ahead, Part 2 will go deeper into Oracle Java Cloud Service by showing how to develop and deploy a Java EE application on it.

Check out the latest issue of Java Magazine.

Insider News from the Java Team at Oracle!



« May 2016