Saturday, May 18, 2019

Spring Cloud

Spring Cloud by itself is not a cloud.   Rather, it provides a number of components those are essential when developing applications targeting cloud deployments that adhere to the twelve-Factor application principles.   The cloud-ready solutions that were developed by using Spring Cloud are also portable across many cloud provides


Cloud computing promises many benefits such as :


  • Cost advantage
  • Speed
  • Agility
  • Flexibility and elasticity.


Popular cloud providers :


  • Amazon ( AWS)
  • Microsoft ( Azure)
  • Google ( Google Cloud) 
  • Pivotal(Cloud Foundry)
  • IBM ( Blue Mix)
  • Red Hat (Open Shift)
  • Rackspace(Rackspace)

Manual deployment could severely challenge the microservices rollouts.  With many server instances running, this could lead to significant operational overheads.  Moreover, the chances of errors are high in this manual approach.

Microservices require elastic could-like infrastructure which can automatically provision VMs or containers, automatically deployapplications, adjust traffic flows, replicate new version to all instances, and gracefully phase out older versions.

The automation also takes care of scaling up elastically by adding containers or VMs on demand, and scaling down when the load falls below threshold.

The application(in our case microservice) has to follow and check Twelve-factor rules before moving to cloud:


The Twelve Factors  -   Twelve-Factor Apps define a set of principles of developing applications targeting the cloud.  Many organizations prefer to lift and shift their applications to the cloud.  The application(in our case microservice) has to follow and check Twelve-Factor rules before moving to cloud i.e., in order to run microservices seamlessly across multiple clouds, it is important to follow Twelve-factor rules while developing cloud native microservices.


I. Codebase

One codebase tracked in revision control, many deploys.  Each microser

II. Dependencies or Bundling dependencies.

Explicitly declare and isolate dependencies

III. Config or Externalizing Configurations.

Store config in the environment.  This principle suggests the externalization of all configuration parameters from the code.  The micro services configuration parameters should be loaded from an external server.

IV. Backing services

Treat backing services as attached resources

V. Build, release, run

Strictly separate build and run stages

VI. Processes

Execute the app as one or more stateless processes

VII. Port binding

Export services via port binding

VIII. Concurrency

Scale out via the process model

IX. Disposability

Maximize robustness with fast startup and graceful shutdown

X. Dev/prod parity

Keep development, staging, and production as similar as possible

XI. Logs

Treat logs as event streams

XII. Admin processes

Run admin/management tasks as one-off processes








Spring cloud config :

In spring boot applications, 

No comments:

Post a Comment

Hyderabad Trip - Best Places to visit

 Best Places to Visit  in Hyderabad 1.        1. Golconda Fort Maps Link :   https://www.google.com/maps/dir/Aparna+Serene+Park,+Masj...