Skip to content

Instantly share code, notes, and snippets.

@tejacques
Created July 11, 2016 07:48
Show Gist options
  • Save tejacques/3b814a0a10b5d3414f4ab5f91ecc65a3 to your computer and use it in GitHub Desktop.
Save tejacques/3b814a0a10b5d3414f4ab5f91ecc65a3 to your computer and use it in GitHub Desktop.

Properties:

  • Highly efficient schema-driven RPC calls
  • Session-Aware Metrics
  • Standard reporting for services about their interfaces
  • Registration with membership/load balancing servers which spread requests and merge responses
    • One such load balancer is the router service, which registers a regular-like expression (trie routing)
    • Another such load balancer is data/query routing service -- think top level of a GraphQL API. It needs to communicate with other services to generate the data.
    • Should work isomorphically, client-side bundled multiple routes, server forwards routes
  • Should support in-process communication as well, which also live/hot updates (at least in supported languages). This can be accomplished by not saving stateful objects, but instead communicating to services over interfaces.
  • CQRS - style, event driven for maximal horizontal scalability
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment