Typhon is a wrapper around Go's net/http library that we use at Monzo to build RPC servers and clients in our microservices platform. A wrapper around Go's net/http to provide safety and convenience. At Monzo, Typhon forms the basis of most clients and servers in our microservices platform. Forgetting to body.Close() in a client when the body has been dealt with is a common source of resource leaks in Go programs in our experience. Typhon ensures that – unless you're doing something really weird with the body – it will be closed automatically. Marshalling and unmarshalling request bodies to structs is such a common operation that our Request and Response objects support them directly. If the operations fail, the errors are propagated automatically since that's nearly always what a server will want.

Features

  • No need to close body.Close() in clients
  • Middleware "filters"
  • Body encoding and decoding
  • Propagation of cancellation
  • Error propagation
  • Full HTTP/1.1 and HTTP/2.0 support

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow Typhon

Typhon Web Site

Other Useful Business Software
Monitor production, track downtime and improve OEE. Icon
Monitor production, track downtime and improve OEE.

For manufacturing companies interested in OEE monitoring solutions

Evocon is a visual and user-friendly OEE software that helps manufacturing companies improve productivity and remove waste as they become better.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Typhon!

Additional Project Details

Programming Language

Go

Related Categories

Go HTTP Servers, Go HTTP Clients

Registered

2023-05-19