joyent-portal/spikes/metrics-service
2016-11-04 17:11:35 +00:00
..
graphql metrics-service spike 2016-11-04 17:11:35 +00:00
http1 metrics-service spike 2016-11-04 17:11:35 +00:00
http2 metrics-service spike 2016-11-04 17:11:35 +00:00
ws metrics-service spike 2016-11-04 17:11:35 +00:00
readme.md metrics-service spike 2016-11-04 17:11:35 +00:00

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