There is a modest perf advantage in terms of object serialization of deriving your own server, but then it’s locked into an in-process model, which is not at all ideal for most scenarios. The only reason for such tight perf considerations is validation, which is completely internal to bc::node.