Ideas from Airbnb building services part 1 and part 2.
Currently, the repo supports ruby
and node
servers/clients. The demo shows each client talking to all servers in a consistent way.
- ❎ test coverage
- ❎ test suite helpers
- ❎ standardize validation of args
- ❎ auth
- ❎ timeouts
- ❎ retries
- ❎ errors via Sentry
- ❎ metrics via DataDog
- ❎ logging via Sumo
- ❎ request context / distributed logging
- ❎ test coverage
- ❎ test suite helpers
- ❎ standardize validation of args
- ❎ auth
- ❎ standardize errors
- ❎ errors via Sentry
- ❎ metrics via DataDog
- ❎ logging via Sumo
- ❎ request context / distributed logging
- Define your schema
- Regenerate code per instructions below
- Update the servers to handle new signatures ruby and node
- Update the clients to test new calls ruby and node
Edit ./schema/calculator.thrift
then
./bin/generate-types.sh
cd ruby
bundle
ruby server.rb
cd js
yarn
node server.js
cd ruby
ruby client.rb
cd js
node client.js