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

goa

15
35
+ 1
0
linkerd

96
232
+ 1
7
Add tool

goa vs linkerd: What are the differences?

Developers describe goa as "A design driven approach for building microservices in Go". goa is a framework for building microservices in Go using a unique design-first approach. goa provides a novel approach for developing microservices that saves time when working on independent services and helps with keeping the overall system consistent. On the other hand, linkerd is detailed as "Twitter-Style Operability for Microservices". linkerd is an out-of-process network stack for microservices. It functions as a transparent RPC proxy, handling everything needed to make inter-service RPC safe and sane--including load-balancing, service discovery, instrumentation, and routing.

goa and linkerd can be categorized as "Microservices" tools.

Some of the features offered by goa are:

  • Creating a service with goa starts with the design. The goa DSL lets you describe the global properties, types and endpoints that make up the service API. The apidsl package docs provides a quick reference to all the DSL functions.
  • Once the design of the API is in place goagen generates the corresponding data structures, validation code and handlers. Handlers are defined as interface methods. Implementing the service is thus as simple as implementing the generated interfaces.
  • The best part about the goa DSL is that the engine is completely decoupled. Plugins can implement custom DSLs to extend the concepts described in the design. Plugins can also generate arbitrary outputs.

On the other hand, linkerd provides the following key features:

  • Adaptive load-balancing
  • Fine-grained instrumentation
  • Abstractions over service discovery

goa and linkerd are both open source tools. It seems that linkerd with 5.01K GitHub stars and 501 forks on GitHub has more adoption than goa with 3.46K GitHub stars and 389 GitHub forks.

Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of goa
Pros of linkerd
    Be the first to leave a pro
    • 3
      CNCF Project
    • 1
      Fast Integration
    • 1
      Pre-check permissions
    • 1
      Light Weight
    • 1
      Service Mesh

    Sign up to add or upvote prosMake informed product decisions

    Sign up to add or upvote consMake informed product decisions

    What is goa?

    goa is a framework for building microservices in Go using a unique design-first approach. goa provides a novel approach for developing microservices that saves time when working on independent services and helps with keeping the overall system consistent.

    What is linkerd?

    linkerd is an out-of-process network stack for microservices. It functions as a transparent RPC proxy, handling everything needed to make inter-service RPC safe and sane--including load-balancing, service discovery, instrumentation, and routing.

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

    What companies use goa?
    What companies use linkerd?
    See which teams inside your own company are using goa or linkerd.
    Sign up for Private StackShareLearn More

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

    What tools integrate with goa?
    What tools integrate with linkerd?
    What are some alternatives to goa and linkerd?
    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.
    Kong
    Kong is a scalable, open source API Layer (also known as an API Gateway, or API Middleware). Kong controls layer 4 and 7 traffic and is extended through Plugins, which provide extra functionality and services beyond the core platform.
    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.
    Jersey
    It is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. It provides it’s own API that extend the JAX-RS toolkit with additional features and utilities to further simplify RESTful service and client development.
    Azure Service Fabric
    Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices. Service Fabric addresses the significant challenges in developing and managing cloud apps.
    See all alternatives