joyent-portal/legacy/spikes/metrics-service
Sérgio Ramos 8295bd6882 chore: initial lerna setup
this shall be a progressive process
2017-05-25 10:56:50 +01:00
..
graphql chore: initial lerna setup 2017-05-25 10:56:50 +01:00
http1 chore: initial lerna setup 2017-05-25 10:56:50 +01:00
http2 chore: initial lerna setup 2017-05-25 10:56:50 +01:00
ws chore: initial lerna setup 2017-05-25 10:56:50 +01:00
readme.md chore: initial lerna setup 2017-05-25 10:56:50 +01:00

readme.md

metrics-service

A service which produces random streams of data (firehose) of interpretable metric information for various subsystems that can or will be pulled out from a container. These are currently defined in RFD-0037.

This spike's purpose was to find the best pattern to expose such metrics service with mock data.

http1

  • very simple API to push data from the server to the client
  • plain HTTP
  • requires a connection to each container - because it's not bidirectional, we can't subscribe to more containers on-demand

http2

  • very simple API to push data from the server to the client
  • multiplexing
  • push doesn't really help us, because it's only useful for static resources

graphql

  • common interface between all data resources
  • filter received data
  • api not finalised yet
  • api not documented

ws (with nes)

  • strong integration with Hapi
  • allow to subscribe and unsubscribe on-demand on a single connection
  • some networks might require fallback to pooling