{"product_id":"network-programming-with-go","title":"Network Programming with Go","description":"\u003cp\u003e\u003ci\u003e\u003cb\u003eNetwork Programming with Go\u003c\/b\u003e\u003c\/i\u003e\u003cb\u003e teaches you how to write clean, secure network software with the programming language designed to make it seem easy.\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eBuild simple, reliable, network software\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eCombining the best parts of many other programming languages, Go is fast, scalable, and designed for high-performance networking and multiprocessing. In other words, it’s perfect for network programming.\u003c\/p\u003e\u003cp\u003e\u003ci\u003eNetwork Programming with Go\u003c\/i\u003e will help you leverage Go to write secure, readable, production-ready network code. In the early chapters, you’ll learn the basics of networking and traffic routing. Then you’ll put that knowledge to use as the book guides you through writing programs that communicate using TCP, UDP, and Unix sockets to ensure reliable data transmission.\u003c\/p\u003e\u003cp\u003eAs you progress, you’ll explore higher-level network protocols like HTTP and HTTP\/2 and build applications that securely interact with servers, clients, and APIs over a network using TLS.\u003c\/p\u003e\u003cp\u003eYou'll also learn:\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eInternet Protocol basics, such as the structure of IPv4 and IPv6, multicasting, DNS, and network address translation\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eMethods of ensuring reliability in socket-level communications\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eWays to use handlers, middleware, and multiplexers to build capable HTTP applications with minimal code\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eTools for incorporating authentication and encryption into your applications using TLS\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eMethods to serialize data for storage or transmission in Go-friendly formats like JSON, Gob, XML, and protocol buffers\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eWays of instrumenting your code to provide metrics about requests, errors, and more\u003c\/span\u003e\u003c\/li\u003e\n\u003cli\u003e\u003cspan class=\"a-list-item\"\u003eApproaches for setting up your application to run in the cloud (and reasons why you might want to)\u003c\/span\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e\u003ci\u003eNetwork Programming with Go\u003c\/i\u003e is all you’ll need to take advantage of Go’s built-in concurrency, rapid compiling, and rich standard library.\u003c\/p\u003e\u003cp\u003e\u003cb\u003eCovers Go 1.15 (Backward compatible with Go 1.12 and higher)\u003c\/b\u003e\u003c\/p\u003e\u003ch3\u003eAbout the Author\u003c\/h3\u003e\u003cp\u003e\u003cb\u003eAdam Woodbeck\u003c\/b\u003e is a Senior Software Engineer at Barracuda Networks where he has implemented a distributed cloud environment in Go to supplant the previous cloud infrastructure, profoundly increasing its scalability and performance. Before his career in software engineering, Woodbeck spent time in the world of biomechanics and neurology, caring for patients as a chiropractor for nearly a decade. Adam relishes the opportunity to take a deep dive into interesting topics and distill that information into a digestible format for the benefit others.\u003c\/p\u003e\u003cp\u003e\u003cb\u003eTable of contents\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart I: Network Architecture\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eChapter 1: An Overview of Networked Systems \u003c\/p\u003e\u003cp\u003eChapter 2: Resource Location and Traffic Routing\u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart II: Socket-Level Programming\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eChapter 3: Reliable TCP Data Streams\u003c\/p\u003e\u003cp\u003eChapter 4: Sending TCP Data \u003c\/p\u003e\u003cp\u003eChapter 5: Unreliable UDP Communication \u003c\/p\u003e\u003cp\u003eChapter 6: Ensuring UDP Reliability \u003c\/p\u003e\u003cp\u003eChapter 7: Unix Domain Sockets\u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart III: Application-level Programming\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eChapter 8: Writing HTTP Clients \u003c\/p\u003e\u003cp\u003eChapter 9: Building HTTP Services \u003c\/p\u003e\u003cp\u003eChapter 10: Caddy: A Contemporary Web Server \u003c\/p\u003e\u003cp\u003eChapter 11: Securing Communications with TLS\u003c\/p\u003e\u003cp\u003e\u003cb\u003ePart IV: Service Architecture\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eChapter 12: Data Serialization \u003c\/p\u003e\u003cp\u003eChapter 13: Logging and Metrics \u003c\/p\u003e\u003cp\u003eChapter 14: Moving to the Cloud\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e","brand":"No Starch Press","offers":[{"title":"Paperback","offer_id":50506316447814,"sku":"9781718500884","price":3692.0,"currency_code":"INR","in_stock":true},{"title":"E-Book","offer_id":50506316480582,"sku":"9781718500884-2","price":3939.0,"currency_code":"INR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0754\/2797\/1142\/files\/516bIK4UMVL._SX376_BO1_204_203_200.jpg?v=1790326607","url":"https:\/\/cb-india.com\/products\/network-programming-with-go","provider":"Computer Bookshop (India) Pvt Ltd","version":"1.0","type":"link"}