What is Microservice+ Platform

What is Microservice+ Platform

Microservice architecture is about decomposing a software system into autonomous modules which are independently deployable, maintainable, and testable. These loosely coupled and independently deployable can communicates via lightweight, language-agnostic way, and together they fulfill the business goal.

Microservice+ Platform provides the full lifecycle management of your microservice modules on Kubernetes. The snapblocs dashboard UI facilitates microservice provisioning, pausing, resuming, monitoring, and teardown on the Kubernetes+ platform. Teams can focus on the development of microservice applications without managing Microservice infrastructure.

Microservice+ Platform includes the following software components:
  1. AWS EKS is used to provision stacks of Microservice+ Platform utilizing the customer's AWS account.
    Google GKE is used to provision stacks of Microservice+ Platform utilizing the customer's Google account.
    snapblocs provisions Microservice Platform following cloud provider guides (i.e., AWS Well-Architected, GKE Best Practices) for provisioning and configuring production-grade Kubernetes clusters and deploying workloads into the clusters. It provides benefits from patterns that have worked for many customers who have gone to production. Also, snapblocs make it easy to get started and easy to do the right thing. 
  2. Kubernetes is an open-source container-orchestration system for automating application deployment, scaling, and management. It is used to deploy selected Components.s. 
  3. Kafka is used for building real-time data pipelines and streaming applications by integrating data from multiple sources and locations into a single, central Event Streaming Platform. In Kafka-centric microservice architectures, each microservice publishes an event when something notable happens, i.e. Order Service would publish a new event when the order has been created or modified. The other microservices subscribe to the events, which they are interested in (for example Inventory Service would subscribe to new order events because it needs to reduce the appropriate goods count in the inventory database).
  4. Istio is an open Service Mesh platform. It provides a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies, and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes.
  5. Jaeger is a distributed tracing system used for monitoring and troubleshooting microservices-based distributed systems, including Distributed transaction monitoring. Performance and latency optimization.
  6. kiali is an observability console for Istio with service mesh configuration and validation capabilities. It visualizes the service mesh topology and provides visibility into features like request routing, circuit breakers, request rates, latency, and more. Kiali offers insights about the mesh components at different levels, from abstract Applications to Services and Workloads.
  7. Elastic provides observability (monitoring, alerting, APM) to answer questions about what's happening inside the system by observing the outside of the system.
  8. Grafana is used to build visualization and analytics. It allows you to query, visualize, and explore your metrics and to set an alert for quickly identifying problems in your system moments so that you can minimize disruption to your services.
  9. Microservices Components are containers used to deploy and manage your custom microservice. Add as many as you need in your stack.They enable you to manage your microservices as a highly maintainable, loosely coupled, independently dployable object within the snapblocs Microservices+ Platform. All microservices run on Kubernetes.

There are many known expected benefits from Microservice architecture, such as:
  1. Offers low coupling due to a high degree of isolation
  2. Enhanced modularity
  3. Failure in one service does not impact the whole system as they are isolated
  4. It provides higher flexibility
  5. It provides a very high degree of scalability
  6. Ease of modification can result in faster evolutionary iterations
  7. It can facilitate improved error handling

While Microservices simplify much of the development process,, they can also cause new forms of complexity.
  1. A higher chance of failure exists during communication between different services
  2. Difficult to manage a large number of services
  3. Needs to solve new problems, such as network latency and load balancing, and other issues similar to a distributed architecture
  4. Complex testing over a distributed environment
  5. Implementation requires much more time
  6. Complex dependency management if number of services is high
    • Related Articles

    • How to configure Microservice+ Platform

      You can initiate configuring a new stack from a few different places: On the Home page, "Configure stack" button on the Stacks statistics block. On the Stacks page, the "Configure new stack" button on the top page On the Projects page, select Project ...
    • How to customize Microservice+ Platform

      You can configure a new stack for Microservice+ Platform by following this. Test / Proof of Concept (POC) Stack To create a simple test Microservice+ Platform stack, set the following parameters. On AWS & K8S component: Provider Key Name: Choose the ...
    • What are common use cases for Microservice+ Platform

      Example use cases for Microservice+ Platform: Legacy applications refactoring and modernization Enterprises often rebuild their IT systems to change the functionality, add new features, move to the Cloud, or conduct global system modernization. A ...
    • How to configure a Microservice component

      Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow, enforce policies, and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management ...
    • What is Kafka+ Platform

      Kafka+ Platform provides a SaaS-managed event streaming platform using Confluent Kafka on Kubernetes for moving data from various input data sources to target data destinations in the stream. This allows a user to use snapblocs dashboard UI to create ...