Apache Thrift

Thrift is an interface definition language that is used to define and create services for numerous languages. It is used as a remote procedure call (RPC) framework and was developed at Facebook for “scalable cross-language services development”. It combines a software stack with a code generation engine to build services that work efficiently to a varying degree and seamlessly between ActionScript, C#, C++ (on POSIX-compliant systems), Cappuccino, Cocoa, Erlang, Haskell, Java, OCaml, Perl, PHP, Python, Ruby, and Smalltalk. Although developed at Facebook, it is now an open source project in the Apache Software Foundation Incubator. The implementation was described in an April 2007 technical paper released by Facebook, now hosted on Apache. To put it simply, Apache Thrift is a binary communication protocol.

Apache solr

Solr is an open source enterprise search platform from the Apache Lucene project. Its major features include powerful full-text search, hit highlighting, faceted search, dynamic clustering, database integration, and rich document (e.g., Word, PDF) handling. Providing distributed search and index replication, Solr is highly scalable. 

Solr is written in Java and runs as a standalone full-text search server within a servlet container such as Apache Tomcat. Solr uses the Lucene Java search library at its core for full-text indexing and search, and has REST-like HTTP/XML and JSON APIs that make it easy to use from virtually any programming language.

Solr’s powerful external configuration allows it to be tailored to almost any type of application without Java coding, and it has an extensive plugin architecture when more advanced customization is required.
Apache Lucene and Apache Solr are both produced by the same ASF development team since the project merge in 2010. It is common to refer to the technology or products as Lucene/Solr or Solr/Lucene

Set the JAVA_HOME Variable in Windows

1) Locate the JDK Installation Directory .By default it will be C:Program FilesJavajdk1.6.0_26 (Latest version at the time of writting this)

2) Right-click the My Computer icon on your desktop and select Properties.ThenClick the Advanced tab.

3) Click the Environment Variables button.Under System Variables, click New and Enter the variable name as JAVA_HOME.

4)Enter the variable value as the installation path for the Java Development Kit. If path name includes space it , replace it with ~

5)Click OK and Click Apply Changes.

6)Restart Windows.

what is apache ant used for ?

Apache Ant is a software tool for automating software build processes. It is similar to Make but is implemented using the Java language, requires the Java platform, and is best suited to building Java projects.
The most immediately noticeable difference between Ant and Make is that Ant uses XML to describe the build process and its dependencies, whereas Make uses Makefile format. By default the XML file is named build.xml.
Ant is an Apache project. It is open source software, and is released under the Apache Software License.