Immutables allows you to embrace immutablity to tackle complexity and concurrency challenges. To get the benefits of immutability in Java, there's an annotation processor to easily create simple and consistent value objects. You can think of it as Guava's Immutable Collections but for regular objects. It includes support for JSON marshaling, MongoDB repositories, and JAX-RS.
Data Shovel Pinnacle Performance Utilities is a collection of utilities for large input/output tasks. bare takes line feed-separated file names on standard input and concatenates the file contents on standard output. baresha512 takes line feed-separated file names on standard input and provides the SHA512 message digest for the concatenated file content on standard output. Both can optionally open and read files with O_DIRECT, bypassing the kernel's block cache. cock provides a digital petcock. It relives I/O pressure on the kernel by rate limiting data throughput. It can auto-throttle to mitigate lag spikes, or use a specified megabytes-per-second rate limit.
Flexviews adds materialized view support to MySQL. Flexviews includes FlexCDC, a change data capture utility which reads MySQL binary logs and produces "change log" tables. These tables can be used to incrementally refresh materialized views, which can be significantly faster than completely rebuilding the views each time. Flexviews also supports "complete refresh" materialized views, which are always rebuilt from scratch each time.
PerfMonger is an yet another performance monitoring tool. The monitoring targets of PerfMonger are similar to the ones of sysstat (CPU usages, IO usages, etc.), but PerfMonger can collect and report performance information very frequently (the reporting interval of sysstat is 1 second at minimum, but PerfMonger can use a much smaller interval such as 0.5 seconds or 0.01 seconds) and can display performance information in both human-readable and machine-readable formats.
Metrix++ is a platform to collect and analyze code metrics. It has a plugin-based architecture, so it is easy to add support for new languages, define new metrics, and/or create new pre- and post-processing tools. Every metric has 'turn-on' and other configuration options. There are no predefined thresholds for metrics or rules; you can choose and configure any limit you want. It scales well to large codebases. For example, initial parsing of about 10000 files takes 2-3 minutes on an average PC, and only 10-20 seconds for iterative re-run. Reporting summary results and exceeded limits takes less than 1 - 10 seconds. It can compare results for 2 code snapshots (collections) and differentiate added regions (classes, functions, etc.), modified regions, and unchanged regions. As a result, easy deployment is guaranteed into legacy software, helping you to deal with legacy code efficiently, and either enforce the 'leave it not worse than it was before' rule or motivate re-factoring.
Django-live-profiler is a low-overhead data access and code profiler for Django-based applications. Profiling Web applications on a development environment often produces misleading results due to different patterns in the data, different patterns in user behavior, and differences in infrastructure. All existing DB access profiling solutions for Django seem to focus on a single request, but in the real world certain queries might be negligible in a single request while still putting a considerable strain the database across all requests. Django-live-profiler aims to solve these issues by collecting database usage data from a live application.
libLunchbox facilitates the development and deployment of multi-threaded applications. It provides OS Abstraction, using utility classes abstracting common operating system features (such as threads, locks, memory maps, shared library loading, and condition variables), high-performance primitives (including thread-safe utilities tuned for performance, such as atomic variables, spin locks, and lock-free containers), and utility classes (including helper primitives which are not in the standard library, such as logging, pools, and random number generation).
Embedded Profiler is low-overhead C++ profiler based on automatic instrumentation of functions done by the compiler (GCC, MinGW, or MSVC). Profiling can be done either automatically or manually. Automatic profiling generates a complete call tree and needs no modification of code. Manual profiling requires using the EProfiler API to specify the parts of code to be profiled. The resulting log can be opened in Performance Analyzer, a GUI application with several views designed for comfortable log analysis.
RegressionSuite is a software test suite that incorporates measurements of startup lag and accurate execution times, generating execution statistics, customized input distributions, and processable regression specific details as part of the regular unit tests. It provides a framework around which the individual unit regressors are invoked (and details and statistics collected). Unit regressors are grouped into named regressor sets (or modules), and regressors are created by implementing specific regressor interfaces. These two features make regressors particularly amenable to testing analytics (and other similarly state-light) modules.