front matter
Building high-performance network services remains a challenge with any programming language. Rust has several unique features that significantly lower the challenge threshold.
Indeed, Rust has been designed from the very beginning to be a language for highly concurrent and safe systems. Several programming languages (such as C, C++, Go, Java, JavaScript, and Python) are used to develop highly performant and reliable network services that can run on a single node or as part of a multi-node distributed system, either in on-premises data centers or in the cloud, but several points make Rust an attractive alternative:
- A small footprint (due to full control over memory and CPU usage)
- Security and reliability (due to memory and data-race safety, enforced by the compiler)
- Low latency (there is no garbage collector)
- Modern language features
This book teaches the various tools, techniques, and technologies that can be used to build efficient and reliable web services and applications using Rust. It also provides a hands-on introduction to network services and web applications in Rust, all the way from basic single-node, single-threaded servers built from standard library primitives to advanced multithreaded, asynchronous distributed servers, cutting across different layers of the protocol stack. You will learn about