Need advice about which tool to choose?Ask the StackShare community!

Hystrix

169
161
+ 1
2
Istio

939
1.5K
+ 1
54
Add tool

Hystrix vs Istio: What are the differences?

### Introduction

Key differences between Hystrix and Istio:

1. **Service Resilience**:
Hystrix focuses on improving the resilience of individual services by providing circuit breakers, fallback mechanisms, and latency tolerance, while Istio emphasizes service resilience through its service mesh architecture, which enables load balancing, traffic shifting, and fault injection at the network level.

2. **Service Mesh vs Library**:
Hystrix is a library for adding fault-tolerance and latency tolerance to individual services, while Istio is a service mesh platform that manages communication between services across a distributed network, providing capabilities like traffic management, security, and monitoring.

3. **Platform Support**:
Hystrix is specifically designed for Java applications and integrates well with Spring Cloud and other Java frameworks, while Istio is a platform-agnostic solution that can be used with applications developed using various languages and frameworks, making it more versatile in a multi-language environment.

4. **Control Plane Functions**:
Istio includes a control plane that provides features like traffic management, policy enforcement, and telemetry collection to manage service communication, whereas Hystrix focuses primarily on client-side resilience features without the centralized control plane provided by Istio.

5. **Cross-Service Communication**:
Istio provides tools for managing cross-service communication such as traffic control, load balancing, and security policies at the network level, while Hystrix focuses on handling communication resilience within individual services through circuit breakers and fallback mechanisms.

6. **Granularity of Control**:
In Hystrix, developers have granular control over how each individual service handles faults and latency, while Istio offers a more centralized approach to managing service communication and resilience, providing a higher level of abstraction for developers. 

In Summary, Hystrix focuses on individual service resilience with client-side library features, while Istio provides a platform-agnostic service mesh solution for managing service communication at the network level.
Decisions about Hystrix and Istio
Prateek Mittal
Fullstack Engineer| Ruby | React JS | gRPC at Ex Bookmyshow | Furlenco | Shopmatic · | 4 upvotes · 287.3K views

Istio based on powerful Envoy whereas Kong based on Nginx. Istio is K8S native as well it's actively developed when k8s was successfully accepted with production-ready apps whereas Kong slowly migrated to start leveraging K8s. Istio has an inbuilt turn-keyIstio based on powerful Envoy whereas Kong based on Nginx. Istio is K8S native as well it's actively developed when k8s was successfully accepted with production-ready apps whereas Kong slowly migrated to start leveraging K8s. Istio has an inbuilt turn key solution with Rancher whereas Kong completely lacks here. Traffic distribution in Istio can be done via canary, a/b, shadowing, HTTP headers, ACL, whitelist whereas in Kong it's limited to canary, ACL, blue-green, proxy caching. Istio has amazing community support which is visible via Github stars or releases when comparing both.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Hystrix
Pros of Istio
  • 2
    Cirkit breaker
  • 14
    Zero code for logging and monitoring
  • 9
    Service Mesh
  • 8
    Great flexibility
  • 5
    Resiliency
  • 5
    Powerful authorization mechanisms
  • 5
    Ingress controller
  • 4
    Easy integration with Kubernetes and Docker
  • 4
    Full Security

Sign up to add or upvote prosMake informed product decisions

Cons of Hystrix
Cons of Istio
    Be the first to leave a con
    • 16
      Performance

    Sign up to add or upvote consMake informed product decisions

    What is Hystrix?

    Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.

    What is Istio?

    Istio is an open platform for providing 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, Mesos, etc.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Hystrix?
    What companies use Istio?
    See which teams inside your own company are using Hystrix or Istio.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Hystrix?
    What tools integrate with Istio?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Hystrix and Istio?
    Akka
    Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM.
    Envoy
    Originally built at Lyft, Envoy is a high performance C++ distributed proxy designed for single services and applications, as well as a communication bus and “universal data plane” designed for large microservice “service mesh” architectures.
    Zuul
    It is the front door for all requests from devices and websites to the backend of the Netflix streaming application. As an edge service application, It is built to enable dynamic routing, monitoring, resiliency, and security. Routing is an integral part of a microservice architecture.
    Polly
    It is a .NET resilience and transient-fault-handling library that allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner.
    See all alternatives