Introduction to protocol buffers
HTTP/1.1 is the standard that is adopted by the web community. In recent times, HTTP/2 is becoming more popular because of its advantages. Some of the benefits of using HTTP/2 are:
- Encryption of data via TLS (HTTPS)
- Compression of headers
- Single TCP connection
- Fallback to HTTP/1.1
- Support from all major browsers
The technical definition from Google about protocol buffers is:
Protocol buffers are a flexible, efficient, automated mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages. You can even update your data structure without breaking deployed programs that are compiled against the "old" format.
In Go, protocol buffers are coupled with HTTP/2. They are a format like JSON but strictly typed, understandable only...