Un file .thrift è un file di definizione utilizzato dal framework Apache Thrift. Apache Thrift è un linguaggio di definizione di interfaccia (IDL) e un protocollo di comunicazione binario impiegato per definire e creare servizi per molteplici linguaggi di programmazione. Il file .thrift definisce le strutture dati, le interfacce e i servizi che verranno impiegati in un'applicazione Thrift. Specifica i tipi di dati, i campi, i metodi e le eccezioni che fanno parte del contratto di servizio. Il compilatore Thrift utilizza quindi questo file di definizione per generare codice in vari linguaggi di programmazione, come C++, Java, Python, PHP, Ruby, Erlang, Go e altri. Questo codice generato include le classi e le funzioni necessarie per la serializzazione e la deserializzazione dei dati, nonché per l'esecuzione di chiamate di procedura remota (RPC). Lo scopo primario di un file .thrift è abilitare la comunicazione e l'interoperabilità cross-language tra diversi componenti software. Permette agli sviluppatori di definire un servizio una sola volta e poi implementarlo in molteplici linguaggi, assicurando che tutte le implementazioni aderiscano allo stesso contratto. Questo semplifica lo sviluppo di sistemi distribuiti e architetture a microservizi.