5. Encoding and Evolution
5.13 Terminology introduced here
Terminology introduced here
53- rolling upgrade / staged rollout
- backward compatibility
- forward compatibility
- encoding / serialization / marshaling
- decoding / parsing / deserialization / unmarshaling
- zero-copy formats (Cap'n Proto, FlatBuffers)
- Base64
- JSON Schema
- open vs closed content model
- `additionalProperties`
- binary JSON variants (MessagePack, CBOR, BSON…)
- interface definition language (IDL)
- field tag
- variable-length integer (varint)
- `repeated`
- schema evolution
- reserved tag numbers
- Avro IDL
- writer's schema / reader's schema
- schema resolution
- union type
- object container files
- schema registry
- field aliases
- ASN.1 / DER / X.509
- data outlives code
- migration
- archival storage
- service
- web service
- REST / RESTful
- OpenAPI / Swagger
- service framework
- remote procedure call (RPC)
- location transparency
- idempotence
- service discovery
- load balancing
- hardware/software load balancers
- service mesh / sidecar
- API versioning
- workflow / task / activity / durable function
- workflow engine (orchestrator + executor)
- BPMN / BPEL
- durable execution
- exactly-once semantics
- determinism
- event-driven architecture
- message broker / event broker / message queue / message-oriented middleware
- queue vs topic
- AsyncAPI
- actor model
- distributed actor framework