This training course provides in-depth coverage of the Apache Thrift serialization and RPC platform for polyglot programming. Attendees will learn how to create collaborative RPC servers and clients using Apache Thrift in several languages. Lecture and labs will teach students how to isolate applications from the underlying physical endpoints in serialization and communications scenarios using Thrift transports.
Transport layering, framing and buffering will be covered in detail along with I/O to memory, disk, and networks. The course examines the Thrift plug-in serialization framework, covering binary, compact and JSON protocols as well as serialization techniques for persistent cross-language data storage. The Apache Thrift IDL is covered throughout the course giving students comprehensive experience with the type and service features of the language.
Available for Instructor-Led (ILT) in-person/onsite training or Virtual Instructor-Led training (VILT) delivery; Open Enrollment options may be available.
Who Should Attend
Developers, Architects, Engineering Managers and DevOps personnel
What Attendees will learn
This course is designed to provide attendees a comprehensive introduction to the Apache Thrift remote procedure call platform. Attendees will learn how to build high performance microservices using the Apache Thrift tool chain. Upon completion of the course attendees will have the skills and information necessary to begin designing and working with Apache Thrift based microservices in a production setting. Learning modules include:
- Apache Thrift foundation
- Thrift Interface Definition Language (IDL) basics
- Working with Transports, Protocols, and User Defined Types
- API evolution
- Debugging and Troubleshooting
Each attendee will require the ability to run a 64 bit virtual machine (provided with the course). Basic Linux command line skills are helpful. Because the course focuses on microservice properties and design, no particular programming language expertise is required though attendees should have experience with at least one programming language.