Architektura Thrift zawiera pełny zestaw do tworzenia klientów i serwerów. Główną częścią zestawu jest kod wygenerowany z Twojego pliku definicyjnego Thriftu. Usługi Thrift skutkują wygenerowaniem z tego pliku klienta i kodu maszynowego. W odróżnieniu od wbudowanych typów, stworzone struktury danych są wysyłane w postaci wyniku do generowanego kodu. Warstwa protokołu i transportu są częścią biblioteki wykonawczej Thrift. Dlatego też z Thrift można zdefiniować usługi, które mają prawo zmienić protokół i transport bez konieczności ponownego tworzenia kodu. Thrift obejmuje również infrastrukturę serwera, aby powiązać protokoły i transporty. Z dostępnych serwerów mamy do wyboru blokujące, nieblokujące, pojedyncze, jak również wielowątkowe. Podstawowe elementy zestawów obsługujących wejście/wyjście (I/O) są już uzależnione od danego języka. Dla języka Java i Python biblioteki we/wy są wbudowane w bibliotekę Thrift, podczas gdy implementacja języka C++ używa swoich własnych rozwiązań.
Źródło i licencja
Fragment artykułu Wikipedia — Apache Thrift · historia autorów.
Tekst: CC BY-SA 4.0. Wydzielono fragment z dłuższego artykułu.