3 ms·
Another binary message format? Another language for describing the format instead of XML or JSON? "Why?" is the big question which sits there unanswered.
by cjensen 14y ago
Another binary message format? Another language for describing the format instead of XML or JSON?
"Why?" is the big question which sits there unanswered.
- cbsmith 14y agoI'm with you on this. When Thrift came out, it kind of made sense, because there wasn't really anything quite like it (closest I'd say was Hessian) in terms of the mix of simplicity, performance, etc. When Protocol Buffers came out, it kind of made sense, because Google had worked on it prior to Thrift even existing (indeed, it inspired Thrift). When Avro came out, I was like, WTF!? This is making that mistake yet again!! EDIT: Damn, I forgot to mention MessagePack. ;-)
- DHowett 14y agoXML and JSON violate the following key property (which can be interpreted as a requirement): - Suitability for FPGA implementation
- cjensen 14y agoI meant the specification language, not the formatting,
- randersson 14y agoease of use. It is a much nicer syntax to use when authoring message specs. There are equivalent XML and JSON syntax variants for Blink schemas for those who'd prefer that. Rolf
- billwashere 14y agoI have no idea why they decided but my guess is that * XML and JSON can be slow. * XML parser are big * XML file size is big * JSON lacks proper binary support * Thrift defines a entire transport stack, so if you already have you already have a transport layer, you are adding more bloat * Some people may find protocol buffers and thrift files too hard/tedious * Why not? Sometimes it's easier/more fun to roll out your solution
- afuruhed 14y agoWire format - performance. Language describing the format - author friendliness compared to more verbose formats. We are going to release specs for an XML schema format and translations to and from the Blink format. The XML format can be used for mappings to and from "external" schemas. Should we do a JSON schema format?
- hythloday 14y agoIn games, for example, it's pretty common for bandwidth to be tight enough that a useful optimisation is quantizing floats down to shorts (which is good enough for e.g. quaternion representation of weapon direction). In that environment, the idea of using XML or JSON is ludicrous. (i.e. the Web is not the Internet)