Peer-to-peer search engine
YaCy (pronounced “ya see”) is a free distributed search engine built on the principles of peer-to-peer (P2P) networks, created by Michael Christen in 2003. The engine is written in Java and distributed on several hundred computers, as of  2006[ [update]], so-called YaCy-peers.
Each YaCy-peer independently crawls through the Internet, analyzes and indexes found web pages, and stores indexing results in a common database (so-called index) which is shared with other YaCy-peers using principles of peer-to-peer. This decentralized approach ensures privacy and eliminates the need for a central server.
Compared to semi-distributed search engines, the YaCy network has a distributed architecture. All YaCy-peers are equal and no central server exists. It can be run either in a crawling mode or as a local proxy server, indexing web pages visited by the person running YaCy on their computer. Several mechanisms are provided to protect the user's privacy. Search functions are accessed by a locally run web server which provides a search box to enter search terms, and returns search results in a format similar to popular search engines.
System components.
YaCy search engine is based on four elements:
* Discovery: Finding new web pages to index by following links.
* Fetching: Downloading the content of web pages.
* Parsing: Extracting relevant information such as text, metadata, and links from the downloaded pages.
YaCy platform architecture.
YaCy uses a combination of techniques for the networking, administration, and maintenance of indexing the search engine, including blacklisting, moderation, and communication with the community. Here is how YaCy performs these operations:
Distribution.
YaCy is available in packages for Linux, Windows, and Macintosh, and also as a Docker image; it can also be installed on other operating systems either by manually building it, or using a tarball. YaCy requires Java 8, OpenJDK 8 is recommended.
The Debian package can be installed from a repository available at the subdomain of the project's website, but is not yet maintained in the official Debian package repository.
References.
 ;templatestyles src="Reflist/styles.css" / ;
Further reading.
YaCy at LinuxReviews