awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
hwholiday avatar

hwholiday/learning_tools

0
View on GitHub↗
4,292 stars·724 forks·Go·Apache-2.0·10 vueswww.hwholiday.com↗

Learning Tools

Ce projet est un framework de microservices pour construire des systèmes backend scalables en Go. Il fournit une architecture pour les systèmes distribués avec une prise en charge intégrée de la découverte de services, de l'équilibrage de charge et des mécanismes de tolérance aux pannes.

Le framework se distingue par une architecture en couches pilotée par le domaine et un système de configuration orienté distant qui synchronise les paramètres entre les magasins distants et les fichiers locaux avec basculement automatique. Il implémente un modèle de communication haute performance utilisant gRPC pour l'échange de données unaires et en streaming, ainsi que des systèmes de notification en temps réel pour gérer les connexions clients persistantes.

Le système couvre un large éventail de capacités distribuées, notamment la gestion du trafic via le circuit breaking et la limitation de débit (rate limiting), ainsi que l'observabilité via le traçage distribué, la journalisation centralisée et la surveillance de la santé. Il intègre également des outils d'infrastructure de données tels que les filtres de Bloom probabilistes, le verrouillage distribué et l'authentification de service basée sur des jetons.

Le projet inclut une prise en charge du déploiement pour les environnements Elasticsearch et HBase conteneurisés.

Features

  • Microservice Frameworks - Provides a comprehensive framework for building resilient, production-ready distributed microservices in Go.
  • gRPC Data Streaming - Provides high-performance bidirectional and server-side data streaming using the gRPC protocol.
  • Layered Architectures - Employs a domain-driven layered architecture to isolate core business logic from technical infrastructure.
  • External Configuration Loading - Loads application settings from external remote sources to update system behavior without restarts.
  • Remote Configuration Synchronization - Synchronizes application settings between remote stores and local files with automatic failover.
  • Dynamic Configuration Management - Synchronizes application settings between remote stores and local files with automatic failover and reloading.
  • Registry-Based Balancing - Distributes requests across healthy service instances based on real-time registration data and heartbeats.
  • Middleware-Based Request Pipelines - Implements modular request pipelines to intercept and process network traffic for cross-cutting concerns.
  • Inter-Service RPCs - Uses gRPC unary and streaming calls to exchange structured data between distributed backend services.
  • Load Balancers - Distributes incoming network traffic across healthy service instances using various load distribution algorithms.
  • gRPC Service Implementations - Implements gRPC service definitions and code generation for high-performance inter-service communication.
  • Service Address Resolution - Maps standardized logical naming conventions to network addresses to locate services across a cluster namespace.
  • Service Communication Libraries - Provides libraries for routing and serializing requests between internal microservice components.
  • Identity Token Services - Uses cryptographically signed tokens to authenticate users and verify the origin of requests to service endpoints.
  • Token-Based Authentication - Secures service endpoints using cryptographic tokens to verify identity and request origins.
  • Go Microservices Architectures - Implements architectural patterns specifically tailored for building scalable distributed systems using the Go language.
  • Resilience Patterns - Implements essential stability patterns including circuit breaking and rate limiting.
  • Service Discovery Registries - Maintains a dynamic registry of active service instances and health status for cluster-wide discovery.
  • Etcd Integrations - Enables service instance registration and availability tracking using Etcd for distributed cluster traffic balancing.
  • Domain-Driven Designs - Provides architectural support for aligning software design with business domains through layered organization.
  • Service Middleware Pipelines - Implements composable middleware pipelines to handle cross-cutting concerns like logging, authentication, and tracing.
  • Distributed Locks - Provides global locks to coordinate access to shared resources across multiple service instances.
  • Service Scaling - Automatically adjusts the number of running service instances to match workload demand.
  • Request Rate Limiting - Prevents system overload by capping the number of incoming requests using rate-limiting patterns.
  • Push Notification Managers - Coordinates a gateway and logic server to manage real-time connections and delivery of push notifications.
  • Gateway-Based Request Routings - Implements routing rules at the API gateway to direct external requests to specific versions of internal services.
  • Real-Time Message Push - Manages persistent connections to push real-time updates and notifications to clients via Go-based gateways.
  • Tracing Context Propagation - Injects and extracts distributed tracing headers across network boundaries to maintain request correlation.
  • Circuit Breakers - Protects the system from cascading failures by stopping requests to dependencies that become unresponsive.
  • Task Execution Engines - Ships a task execution engine that decouples job submission from processing via persistent worker pools.
  • Worker Pool Models - Implements a worker-pool execution model to process tasks asynchronously and increase system throughput.
  • Centralized Logging Systems - Aggregates and indexes logs from distributed service components to enable efficient troubleshooting.
  • Application Logging - Provides application-level logging with automatic file rotation and request context tracking.
  • Distributed Observability Systems - Provides a unified observability environment for tracking requests and identifying bottlenecks via distributed tracing.
  • Distributed Tracing - Tracks requests across multiple services using unique identifiers to analyze latency and execution flow.
  • Service Health Monitoring - Tracks the operational status and performance of internal application services via health check interfaces.

Historique des stars

Graphique de l'historique des stars pour hwholiday/learning_toolsGraphique de l'historique des stars pour hwholiday/learning_tools

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Learning Tools

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Learning Tools.
  • roadrunner-server/roadrunnerAvatar de roadrunner-server

    roadrunner-server/roadrunner

    8,473Voir sur GitHub↗

    RoadRunner is a high-performance application server and process manager designed to serve PHP applications using a persistent worker model. It eliminates bootload overhead and initialization time by keeping application processes alive between requests, acting as a protocol-agnostic proxy that routes traffic to a pool of supervised workers. The server is built with a plugin-based modular architecture, allowing it to be extended with custom Go plugins and compiled into tailored binaries. It distinguishes itself by providing a unified execution model for a wide array of communication protocols,

    Goapplication-servergolanghacktoberfest
    Voir sur GitHub↗8,473
  • sofastack/sofa-rpcAvatar de sofastack

    sofastack/sofa-rpc

    3,920Voir sur GitHub↗

    Sofa-rpc is a high-performance remote procedure call framework designed for building distributed Java applications. It functions as a toolkit for managing a distributed service mesh, providing a gRPC communication layer and a system for registering and locating remote service instances. The framework features a network security layer that implements TLS encryption and authorization checks to protect data transmitted between services. It utilizes a pluggable protocol layer to support multiple communication standards, ensuring flexible point-to-point connectivity. Reliability and traffic manag

    Javahessianhttp2protobuf
    Voir sur GitHub↗3,920
  • macrozheng/springcloud-learningAvatar de macrozheng

    macrozheng/springcloud-learning

    6,924Voir sur 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
    Voir sur GitHub↗6,924
  • moleculerjs/moleculerAvatar de moleculerjs

    moleculerjs/moleculer

    6,373Voir sur GitHub↗

    Moleculer is a Node.js microservices framework designed for building distributed systems. It functions as a distributed service broker, task orchestrator, and service mesh framework, enabling a decentralized architecture with built-in service discovery and load balancing. The project differentiates itself through a pluggable transport layer supporting protocols such as NATS, Redis, TCP, and Kafka, as well as a dedicated microservices API gateway that maps external HTTP and WebSocket requests to internal service actions. It includes built-in fault tolerance mechanisms, including circuit breake

    JavaScript
    Voir sur GitHub↗6,373
Voir les 30 alternatives à Learning Tools→

Questions fréquentes

Que fait hwholiday/learning_tools ?

Ce projet est un framework de microservices pour construire des systèmes backend scalables en Go. Il fournit une architecture pour les systèmes distribués avec une prise en charge intégrée de la découverte de services, de l'équilibrage de charge et des mécanismes de tolérance aux pannes.

Quelles sont les fonctionnalités principales de hwholiday/learning_tools ?

Les fonctionnalités principales de hwholiday/learning_tools sont : Microservice Frameworks, gRPC Data Streaming, Layered Architectures, External Configuration Loading, Remote Configuration Synchronization, Dynamic Configuration Management, Registry-Based Balancing, Middleware-Based Request Pipelines.

Quelles sont les alternatives open-source à hwholiday/learning_tools ?

Les alternatives open-source à hwholiday/learning_tools incluent : roadrunner-server/roadrunner — RoadRunner is a high-performance application server and process manager designed to serve PHP applications using a… sofastack/sofa-rpc — Sofa-rpc is a high-performance remote procedure call framework designed for building distributed Java applications. It… macrozheng/springcloud-learning — This project is a reference implementation of a distributed system built using Spring Cloud Alibaba, Spring Boot, and… moleculerjs/moleculer — Moleculer is a Node.js microservices framework designed for building distributed systems. It functions as a… zq2599/blog_demos — This project is a collection of reference implementations and demonstration projects covering computer vision, DevOps… doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency…