title: Apache Thrift
text: # Apache Thrift
  
  Apache Thrift è un linguaggio di definizione di interfaccia usato per definire e creare servizi per diversi linguaggi informatici, in dettaglio. un protocollo di comunicazione binario. È usato come framework per procedure di chiamata remota (RPC) e fu sviluppato presso Facebook per lo "sviluppo di servizi per linguaggi scalabili". Combina un software stack con un motore della generazione di codice per costruire servizi che lavora efficientemente per diversi gradi e senza soluzione di continuità tra Delphi, C#, C++ (su sistemi POSIX compatibili), Cappuccino, Cocoa, Erlang, Go, Haskell, Java, OCaml, Perl, PHP, Python, Ruby, Node.js e Smalltalk. Sebbene sviluppato presso Facebook, ora è un progetto open source presso la Apache Software Foundation. L'implementazione fu descritta in un articolo tecnico reso disponibile su Facebook nell'aprile 2007, ora presente su Apache.
  
  ## Architettura
  
  Thrift include uno stack completo per la creazione di client e server. Ad alto livello c'è un codice generato dalla definizione Thrift.
  
  ### Protocolli supportati
  
  * TBinaryProtocol
  * TCompactProtocol
  * TDebugProtocol
  * TDenseProtocol
  * TJSONProtocol
  * TSimpleJSONProtocol
  
  ## Creare un servizio Thrift
  
  Creazione di un servizio Thrift in C++:
  
  