Java PaaS    Overview of CloudBees                          http://clean-clouds.com
Source: CloudBees CloudBees
   Development Stage           Application Services     ◦ Improve Code Quality       ◦ Search content        Sonar Sour...
CloudBees Ecosystem                          Source: CloudBees
CloudBees                      OpenShift Tomcat                                 Yes                            Yes Java SE...
CloudBees   OpenShiftIDE tools                                                   Yes         YesCommand line tools        ...
CloudBees   OpenShift Built-in load balancer                                      Yes         Yes Custom domain for load  ...
CloudBees            OpenShift Free tier                                                  Yes                  Free Cost f...
Download with Linkedin Username/Password
Download with Linkedin Username/Password
Download with Linkedin Username/Password
Download with Linkedin Username/Password
Download with Linkedin Username/Password
Upcoming SlideShare
Loading in …5

Java PaaS - Overview of CloudBees


Published on

Java PaaS - Overview of CloudBees

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • No Vendor Lock-in since you can run your java code and don’t need to add any specific libraries to make it run on CloudBeesWhile all other PaaS vendors focus on providing a hosted runtime environment for applications, CloudBees takes theplatform concept further to support the entire development, testing and deployment life cycle of Java applications.
  • One of the most important attributes of a Java PaaS provider is the technology platform and stack it supports. After all, the technology platform is what distinguishes Java PaaS from all other PaaS offerings. Yet, during the long evolution of the Java platform, there have been many competing technology stacks on the platform. For the Java PaaS vendor, I believe that supporting as many different technology stacks as possible is very important.
  • A key value of the PaaS is that it makes life easier for application developers, as it removes the overhead for application and resource management. So, developer friendliness and tools integration is an important consideration in our evaluation.In this category CloudBees is a clear winner. It is not only a PaaS runtime environment, but also an integrated build and test environment. Developers can make use of the Jenkins service to have CloudBees automatically and continuously check out, build, test, and report code in the repository. This continuous integration process has been adopted by many large teams as a key component of their software development process. However, build server management is often time consuming and painstaking work for the QA team. CloudBees takes out this pain, and make the process much more transparent for developers. Recently, Red Hat OpenShift has made progress catching up to CloudBees in this space by supporting Maven and Jenkins integration.
  • One of the most important features of PaaS is the platform’s ability to auto-scale. That is to increase and decrease server capacity based on real-time demand of traffic. It requires the platform provider to load balance requests across a number of servers, monitor the load on each server, and to spin up new servers as needed.All PaaS providers support auto-scaling to some extent. But auto-scaling is harder than it looks. For starters, the Java EE application must be configured to access a centralized external database as opposed to a database server co-hosted on the same server. The programming paradigm and tools for all PaaS providers need to force the developer to do that.An even bigger problem is HTTP sessions. In Java application servers, the session state of HTTP sessions are managed in-memory by default. To build applications that can be load balanced across different servers, the developer must do one of the following:Configure the load balancer to support “sticky session”. That is for the load balancer to inspect the session ID of all incoming requests, and always direct requests in the same session to the same server behind the load balancer. While this is the simplest approach, problems include: the load balancer needs to perform more work, the load distribution could become unbalanced over time, and it is difficult to scale down the infrastructure when the load demand drops since each server will own some sessions. Because of these issues, few PaaS providers support this option.Set up a shared cache for in-memory HTTP sessions. This way, all servers have all HTTP sessions in-memory at all times. However, replicating the in-memory sessions across a cluster is both bandwidth and computationally intensive. It requires work on the application developer’s side to set up the shared cache and replication strategies.The application could also be configured to persist all HTTP sessions into the external relational database.
  • The pricing of those PaaS offerings is an important consideration for developers. Most service providers offer free service tiers for developers to try out. For smaller Java web sites, those free tiers are excellent choices.Another important factor to consider is the availability of support options.
  • Java PaaS - Overview of CloudBees

    1. 1. Java PaaS Overview of CloudBees http://clean-clouds.com
    2. 2. Source: CloudBees CloudBees
    3. 3.  Development Stage  Application Services ◦ Improve Code Quality ◦ Search content  Sonar Source  WebSolr ◦ Better Artifact ◦ Wiki Management  Xwiki  Artifactory  Database Services  Testing Stage ◦ NoSQL ◦ Cross Browser Testin  MongoHQ  Selenium  Cloudant  Production Stage ◦ MySQL ◦ Deep Monitoring  New Relic ◦ Enhanced Log Management  Paper Trail ◦ Email Provider  SendGrid CloudBees Ecosystem
    4. 4. CloudBees Ecosystem Source: CloudBees
    5. 5. CloudBees OpenShift Tomcat Yes Yes Java SE Yes Yes Java EE Yes Yes Support standard Java libraries Yes Yes File system access Yes Yes Thread access Yes Yes Outbound network connections Yes Yes MySQL Yes Yes Commercial relational External External databases Big Data support External External Deploy without special Yes Yes frameworks Friendly to migrate existing Yes Yes apps Portability of apps High High Production ready? Yes Beta Supported Technology Platforms and Stacks Source:
    6. 6. CloudBees OpenShiftIDE tools Yes YesCommand line tools Yes YesWeb-based console Yes YesTesting on dev machine Easy EasyBuild without non-standard Yes YesdependencySource control integration Yes PartlyIntegrated build Yes YesIntegrated testing Yes NoAccess to logs via web Yes YesThird party developer / testing Yes NoservicesAPI access Yes NoDocumentation Good GoodSupport for Developer Productivity andDevelopment Processes Source:
    7. 7. CloudBees OpenShift Built-in load balancer Yes Yes Custom domain for load Yes Yes balancer Auto-scaling of app server Yes Yes Auto-scaling of database No No User defined performance Yes Yes criteria Web-based monitoring Yes Yes dashboard Clustered HTTP session Manual Manual Performance and Scalability Source:
    8. 8. CloudBees OpenShift Free tier Yes Free Cost for low traffic entry level Free Free web apps Cross cloud provider No Planned Private cloud Beta (OpenStack or Planned vSphere) Support Email and Phone Forum Support quality Good Good Pricing and Business Concerns Source:
    9. 9. Download with Linkedin Username/Password
    10. 10. Download with Linkedin Username/Password
    11. 11. Download with Linkedin Username/Password
    12. 12. Download with Linkedin Username/Password
    13. 13. Download with Linkedin Username/Password
    14. 14.