awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
sqshq avatar

sqshq/piggymetrics

0
View on GitHub↗
13,935 stars·6,401 forks·Java·MIT·27 views

Piggymetrics

PiggyMetrics is a demonstration project that illustrates a complete microservice architecture built with Spring Boot, Spring Cloud, and Docker, centered around a personal finance tracking application. It records incomes, expenses, and savings for individual accounts while computing spending statistics and time-series data to track cash flow dynamics over time.

The project showcases a full Spring Cloud service mesh, including an API gateway for request routing, service discovery for dynamic instance location, and a centralized configuration server that manages application settings from a single Git-backed service. It implements OAuth2 token-based authentication for user login and secure inter-service communication, along with a Hystrix circuit breaker pattern that monitors service call failures and latency to prevent cascading errors. Distributed tracing via Sleuth and Zipkin adds unique identifiers to log entries for end-to-end request tracking across services, while the ELK stack aggregates logs from all services into a searchable index.

The system packages each microservice as a Docker container and uses Docker Compose for orchestrated multi-container deployment, with an automated CI pipeline that builds tagged Docker images on each code push. Client-side load balancing distributes requests across available service instances, and health monitoring collects metrics on request latency, error rates, and circuit breaker state for each service. Email notifications store user contact information and preferences, then send scheduled reminders and backups.

Features

  • Spring Boot Integrations - Building and running a distributed system of small, independently deployable services using Spring Boot and Spring Cloud.
  • Microservice Demonstrations - An example project demonstrating a microservice architecture built with Spring Boot, Spring Cloud, and Docker for personal finance management.
  • Personal Finance Management - Recording incomes, expenses, and savings for individual accounts and analyzing spending statistics over time.
  • Personal Finance Trackers - Records incomes, expenses, and savings per account with currency conversion and spending statistics analysis.
  • Spring Cloud Implementations - Illustrates service discovery, API gateway routing, centralized configuration, and circuit breaking using Spring Cloud components.
  • Centralized Configuration Management - Managing application settings from a single service that serves configuration files to all microservices.
  • Docker Compose Deployments - Packages each microservice as a Docker image and uses Docker Compose to orchestrate multi-container environments.
  • Microservices Deployments - Packaging each microservice as a Docker container for consistent deployment and CI/CD pipeline automation.
  • Service Discovery - Registers and locates microservice instances dynamically, enabling load balancing and failover without hardcoded addresses.
  • Centralized Configuration Storage - Stores all microservice settings in a single Git-backed service that serves configuration files on startup.
  • Distributed Tracing - Adds unique trace and span IDs to logs and sends them to Zipkin for end-to-end request tracking across services.
  • Request Routing - Directs incoming requests to the appropriate backend service and aggregates results from multiple services.
  • Circuit Breakers - Monitors service call failures and latency, then opens circuits to prevent cascading failures and allow graceful degradation.
  • OAuth2 Providers - Issuing and validating OAuth2 tokens for user login and secure service-to-service communication.
  • Inter-Service Token Issuances - Issues and validates OAuth2 tokens for user authentication and secure inter-service communication.
  • Distributed System Monitoring and Resilience - Aggregating metrics, tracing requests across services, and preventing cascading failures with circuit breakers.
  • Microservice Frameworks - Builds each service as a standalone Spring Boot application with embedded servers and auto-configuration.
  • Netflix Stack Integrations - Uses Eureka, Hystrix, Zuul, and Ribbon to provide service discovery, circuit breaking, API gateway routing, and client-side load balancing.
  • Centralized Logging Architectures - Collects logs from all services into Elasticsearch and visualizes them in Kibana for unified search and analysis.
  • Sleuth & Zipkin Implementations - Adds unique trace and span IDs to logs and sends them to Zipkin for end-to-end request tracking across services.
  • Cash Flow Dynamics - Computes statistics and time-series data normalized to a base currency to track cash flow dynamics.
  • Service Discovery Integrations - Routes requests through a single entry point and enables services to locate each other without hardcoded addresses.
  • Declarative API Clients - Declares REST clients as Java interfaces that automatically integrate with load balancing and circuit breaking.
  • Time-Series Spending Metrics - Computes financial metrics and captures time-series data normalized to a base currency to track cash flow over time.
  • Docker Image Builds - Builds tagged Docker images on each code push and makes them available for continuous delivery and rollback.
  • Docker Container Deployments - Packages each microservice as a Docker container for consistent deployment and CI/CD pipeline automation.
  • Client-Side Load Balancing - Distributes HTTP and TCP requests across available service instances without an additional network hop.
  • Microservices Health Monitoring - Collects and displays metrics on request latency, error rates, and circuit breaker state for each microservice.
  • Log Analysis - Aggregates logs from all services into a searchable index for identifying problems in a distributed environment.
  • Request Tracing - Adds unique identifiers to log entries so you can follow a single request as it travels through multiple microservices.
  • Microservice Reference Implementations - Personal finance tracker built with Spring Boot.

Star history

Star history chart for sqshq/piggymetricsStar history chart for sqshq/piggymetrics

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does sqshq/piggymetrics do?

PiggyMetrics is a demonstration project that illustrates a complete microservice architecture built with Spring Boot, Spring Cloud, and Docker, centered around a personal finance tracking application. It records incomes, expenses, and savings for individual accounts while computing spending statistics and time-series data to track cash flow dynamics over time.

What are the main features of sqshq/piggymetrics?

The main features of sqshq/piggymetrics are: Spring Boot Integrations, Microservice Demonstrations, Personal Finance Management, Personal Finance Trackers, Spring Cloud Implementations, Centralized Configuration Management, Docker Compose Deployments, Microservices Deployments.

Which projects share features with sqshq/piggymetrics?

Projects with overlapping indexed features include: dyc87112/springcloud-learning — SpringCloud-Learning is an educational project that demonstrates how to build microservices using Spring Cloud,… ityouknow/spring-cloud-examples — This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building… macrozheng/springcloud-learning — This project is a reference implementation of a distributed system built using Spring Cloud Alibaba, Spring Boot, and… apache/brpc — brpc is a high-performance C++ RPC framework and network programming library designed for building distributed… pig-mesh/pig — Pig is a microservice-based RBAC permission management platform built on Spring Cloud and Spring Boot, with OAuth2… spring-cloud/spring-cloud-gateway — Spring Cloud Gateway is an API gateway and routing service built on Spring Boot. It acts as a central entry point for…

Projects sharing features with Piggymetrics

These projects share indexed features with Piggymetrics. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • dyc87112/springcloud-learningdyc87112 avatar

    dyc87112/SpringCloud-Learning

    7,375View on GitHub↗

    SpringCloud-Learning is an educational project that demonstrates how to build microservices using Spring Cloud, covering the core patterns of service discovery, centralized configuration management, and API gateway routing. The project provides hands-on examples for registering and discovering microservice instances with Nacos, Eureka, or Consul, and for routing external API requests through Spring Cloud Gateway with support for filters and load balancing. The tutorials explore service resilience through circuit breakers and rate limiting with Sentinel and Hystrix, including custom fallback l

    Javaconsuleurekahystrix
    View on GitHub↗7,375
  • ityouknow/spring-cloud-examplesityouknow avatar

    ityouknow/spring-cloud-examples

    6,196View on GitHub↗

    This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building microservice architectures. The repository covers the fundamental building blocks of a microservices system, including service discovery through a central registry, centralized configuration management from Git or SVN repositories, API gateway-based request routing, circuit breaker patterns for fault tolerance, and distributed request tracing across service boundaries. The examples show how to implement service registration and dynamic discovery so that clients can locate microservices b

    Javaeurekahystrixhystrix-dashboard-turbine
    View on GitHub↗6,196
  • macrozheng/springcloud-learningmacrozheng avatar

    macrozheng/springcloud-learning

    6,924View on GitHub↗

    This project is a reference implementation of a distributed system built using Spring Cloud Alibaba, Spring Boot, and JDK 17. It serves as a comprehensive model for implementing a microservices architecture. The system integrates a wide range of distributed patterns, including global transaction coordination for data consistency, OAuth2 and JWT for identity management, and Kubernetes-based container orchestration. It features a dedicated observability stack for distributed request tracing, log aggregation, and service health monitoring. The implementation covers several functional domains, i

    Javajavaspringbootspringcloud
    View on GitHub↗6,924
  • apache/brpcapache avatar

    apache/brpc

    17,545View on GitHub↗

    brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio

    C++rpc
    View on GitHub↗17,545
  • Compare all 30 related projects→