Associations Indexing Service (AIS) was originally done as an extension of human memory for tagging (storing under personal keywords and associations) resources, URIs, bookmarks, and memos (for fast access to the information in future) by using the same keywords or queries, similar to popular search engines. It can be seen as a local search engine, used as an automatic indexer of big file hierarchies (e.g. personal archives or files repositories). It is based on Lucene, so the application will remain very fast with any size index.
allmon is a generic system for collecting and storing various runtime metrics collections used for system performance, health, quality, and availability monitoring purposes. The system also provides a set of data-mining algorithms useful for further performance analysis. Allmon is designed to harvest different metrics values coming from many areas of monitoring infrastructure. The collected data are based on quantitative and qualitative performance and availability analysis. Allmon collaborates with other analytical tools for OLAP multidimensional analysis and data mining processing. The tool can be used for production as well as for development (profiling) and QA (load testing) purposes.
Thread Weaver is a framework for writing multithreaded unit tests for Java classes. It lets you create breakpoints inside your code and to stop individual threads when they reach a breakpoint. This allows you to produce controlled repeatable tests that can help to verify thread safety and detect race conditions.
Niocchi is a Java crawler library implementing synchronous I/O multiplexing. This specific type of implementation allows crawling tens of thousands of hosts in parallel on a single low end server. Niocchi has been designed for big search engines that need to crawl massive amount of data, but can also be used to write no-frills crawlers.
lambdaj is a Java library that allows you to manipulate collections in a pseudo-functional and statically typed way. The main purpose of lambdaj is to partially eliminate the burden of writing (often nested and poorly readable) loops while iterating over collections. In particular, it allows you to iterate a collection in order to filter its items on a given condition, convert each item with a given rule, extract a given property from each item, sort the items on the values of one of their properties, group or index the items on the value of one or more properties, invoke a method on each item, or aggregate the items or the values of one of their properties. It allows all this without having to write a single explicit loop.