19 repositorios
Standardized request-response and procedure-call patterns used for resource management and service orchestration.
Explore 19 awesome GitHub repositories matching networking & communication · Application Interface Standards. Refine with filters or upvote what's useful.
n8n is a workflow automation platform that combines a visual interface with code-based extensibility to design, orchestrate, and manage automated processes. It provides a comprehensive suite of tools for data transformation, filtering, and storage, allowing users to build complex logic through conditional branching, looping, and sub-workflow execution. The platform supports both pre-built integration nodes and custom code execution in JavaScript or Python, enabling connectivity with a wide range of external services and APIs. The platform includes a suite of generative AI capabilities, such a
Exposes a comprehensive HTTP interface for programmatic control over workflows and external system integrations.
The Model Context Protocol is a standardized communication framework designed to connect language models to external data sources, functional tools, and interactive user interfaces. It provides a vendor-neutral interface layer that enables AI hosts to discover and execute capabilities across heterogeneous service environments, using a JSON-RPC based messaging standard to facilitate bidirectional communication between clients and servers. The protocol distinguishes itself through a robust capability-based handshake that negotiates feature sets during session initialization, ensuring compatibil
Implements a JSON-RPC messaging standard to define bidirectional communication patterns for distributed service architectures.
Syncthing es un motor de sincronización de archivos descentralizado que mantiene estados de datos consistentes en múltiples dispositivos a través de redes mesh peer-to-peer. Funciona como un demonio en segundo plano que replica automáticamente las creaciones, modificaciones y eliminaciones de archivos entre nodos de confianza sin necesidad de servidores centrales. Al utilizar indexación de bloques direccionable por contenido y sincronización delta a nivel de bloque, el sistema identifica y transfiere solo los segmentos modificados de los archivos, asegurando una propagación de datos eficiente en entornos heterogéneos. El proyecto se distingue por una arquitectura centrada en la seguridad que se basa en la autenticación TLS mutua para verificar la identidad del dispositivo, asegurando que todas las conexiones estén vinculadas criptográficamente a huellas digitales de certificados de confianza. Admite modos de sincronización flexibles, incluyendo replicación bidireccional, duplicación unidireccional para copias de seguridad y cumplimiento basado en referencias. Para mayor privacidad, el sistema proporciona cifrado a nivel de carpeta para dispositivos no confiables y permite un control granular del tráfico de red, incluida la capacidad de restringir operaciones a redes locales o utilizar infraestructura de retransmisión para el cruce de NAT. Más allá de sus capacidades principales de replicación, la plataforma ofrece herramientas de gestión integrales, incluido un panel basado en web para monitorear el estado de la conexión y el rendimiento, así como una interfaz de línea de comandos para una configuración avanzada. Incluye estrategias de versionado robustas para proteger contra la pérdida de datos y admite escenarios de despliegue complejos a través de la integración de servicios nativos y métricas de observabilidad. El software está diseñado para la compatibilidad multiplataforma y puede instalarse a través de gestores de paquetes estándar o entornos contenedorizados.
Exposes programmatic control over synchronization services, conflict resolution, and configuration management through standard HTTP endpoints.
Nest is a server-side framework for building scalable and maintainable enterprise-grade applications using TypeScript. It provides a modular architecture that organizes code into encapsulated, reusable modules, utilizing a dependency injection container to manage object lifecycles and resolve component dependencies through declarative metadata. The framework distinguishes itself through a platform-agnostic abstraction layer that decouples core logic from underlying HTTP servers, allowing for flexible implementation choices. It employs a middleware-based request pipeline that processes traffic
Supports distributed system integration through robust messaging patterns and event-driven communication channels.
Memos is a self-hosted, container-native knowledge management platform designed for capturing and organizing personal notes. It functions as a private workspace where users can create content using markdown, tags, and media embeds to streamline daily productivity. The system is built to be deployed as a portable service, allowing individuals to maintain full control over their data and hosting environment. Beyond its core note-taking capabilities, the platform operates as a headless content service that exposes a structured RESTful API. This interface allows for programmatic interaction, enab
Enable programmatic interaction between distributed systems through standardized HTTP interfaces for automated data exchange.
This project serves as a comprehensive knowledge base and reference for distributed systems engineering and enterprise software architecture. It provides a structured collection of technical resources, design patterns, and methodologies intended to assist in the design, maintenance, and scaling of complex, high-performance software environments. The repository distinguishes itself by offering deep dives into core architectural concepts such as actor-based concurrency, aspect-oriented interception, and inversion-of-control containers. It emphasizes the practical application of distributed syst
Invoke functions across distributed systems to enable seamless communication between remote services.
This project is a reference implementation of microservices architectures using the Spring Cloud ecosystem. It provides a set of example services that demonstrate the construction of distributed systems through automated service discovery, dynamic routing, and shared configuration. The implementation covers core distributed patterns, including a service discovery system for tracking network components and an API gateway for orchestrating incoming traffic. It features a centralized configuration manager to propagate application settings across multiple instances and a distributed tracing syste
Provides a reference implementation for orchestrating microservices using automated discovery and dynamic routing.
gRPC Java is a library for building distributed systems that enables client and server applications to interact through remote procedure calls. It uses protocol buffers to define service interfaces and exchange structured data, providing a framework for connecting microservices across different environments. The framework utilizes an asynchronous networking foundation to manage concurrent connections and relies on a multiplexed binary protocol to facilitate efficient data exchange. It supports pluggable transport interceptors, allowing for the injection of custom logic into the request-respon
Facilitates high-performance inter-service communication using a language-agnostic protocol.
Feign es un cliente HTTP declarativo en Java que automatiza la generación de clientes de servicios web. Permite a los desarrolladores definir endpoints de API REST utilizando interfaces y anotaciones, eliminando la necesidad de escribir código repetitivo (boilerplate) para solicitudes y respuestas. El proyecto utiliza proxies dinámicos para mapear llamadas a métodos con plantillas de solicitud HTTP. Cuenta con un pipeline conectable de codificadores y decodificadores para transformar objetos Java en cuerpos de solicitud y convertir cuerpos de respuesta de vuelta a objetos con seguridad de tipos. La biblioteca cubre una amplia gama de capacidades de integración, incluyendo interceptación de solicitudes para la gestión de cabeceras, lógica de reintento basada en estrategias para el consumo resiliente de servicios y expansión de plantillas para URIs. También proporciona herramientas para registrar logs de tráfico HTTP y recopilar métricas de rendimiento del cliente.
Standardizes synchronous communication between distributed microservices using a declarative client approach.
Feign is a declarative Java HTTP client framework that maps method signatures to REST API requests. It functions as an HTTP interface mapper, allowing the creation of type-safe clients by defining service interfaces with annotations to eliminate manual request logic. The framework features a pluggable HTTP transport layer, which decouples request definition from execution by routing network traffic through interchangeable underlying HTTP engines. It provides a comprehensive request management pipeline including interceptors for modifying headers, policy-driven retry logic for failure recover
Facilitates communication between distributed Java microservices with built-in support for retries and request interceptors.
Iceberg is an open table format and big data table manager designed for huge analytic datasets in cloud storage. It provides a specification for tracking large-scale datasets to maintain transactional consistency and structural integrity. The project utilizes a standardized REST catalog interface to manage table metadata, ensuring interoperability between different compute engines. This allows diverse query engines to connect to a single table interface and maintain consistency across different processing frameworks. Its core capabilities include managing large-scale analytic tables, coordin
Implements a standardized REST catalog interface to manage table metadata and ensure interoperability between diverse query engines.
MassTransit is a .NET distributed application framework and asynchronous messaging library designed for building distributed systems. It serves as an enterprise service bus implementation that handles the routing, transformation, and delivery of messages between decoupled services. The framework provides a message broker abstraction layer, which decouples application code from specific messaging infrastructure such as RabbitMQ, Azure Service Bus, or Amazon SQS. It supports event-driven architecture and asynchronous microservices communication to improve system scalability and availability. T
Facilitates asynchronous microservices communication to allow independent operation of distributed components.
CAP is a .NET distributed transaction framework and event bus designed to manage asynchronous communication in microservices. It implements the outbox pattern to ensure eventual consistency and reliable message delivery by persisting messages in local database tables until transactions commit. The framework includes a distributed message monitor and web dashboard for tracking the status of sent and received messages. It provides tools for event traffic visualization, distributed request tracing, and the ability to manually trigger retries for failed delivery attempts. The system supports var
Orchestrates communication workflows between microservices using event topics and subscription groups.
Este proyecto es un framework de integración que arranca servicios de llamada a procedimiento remoto (RPC) de Apache Dubbo dentro de aplicaciones Spring Boot. Sirve como un framework de comunicación de microservicios que permite la implementación de servicios RPC, descubrimiento de servicios y gobernanza distribuida mediante configuración automatizada. El proyecto se distingue por proporcionar un puente RPC entre lenguajes, permitiendo que servicios escritos en diferentes lenguajes se comuniquen mediante estándares como gRPC y Protobuf. Además, permite la exposición de microservicios backend como endpoints REST utilizando el protocolo Triple para acceso directo desde navegadores web y clientes de terceros. El framework cubre una amplia gama de capacidades, incluyendo gobernanza de servicios distribuidos para enrutamiento de tráfico y limitación de tasa (rate limiting), gestión centralizada de configuración y observabilidad de microservicios para el rastreo de solicitudes y monitoreo de salud. También admite diversas capas de transporte e integraciones de almacenamiento para Redis y Memcached. El proyecto proporciona starters y configuraciones para automatizar el arranque de la infraestructura RPC dentro del entorno Spring Boot.
Implements a comprehensive framework for orchestrating distributed systems through high-performance RPC and messaging patterns.
Apache Dubbo Go es una implementación en lenguaje Go del framework Apache Dubbo, diseñada para construir microservicios de alto rendimiento. Sirve como un framework RPC multiplataforma y una capa de comunicación de microservicios que permite llamadas a procedimientos remotos entre servicios escritos en diferentes lenguajes de programación. El framework funciona como un conjunto de herramientas de gobernanza de servicios y un proxy de service mesh distribuido, permitiendo que los planos de datos se conecten con planos de control externos en modos con o sin proxy. Proporciona específicamente una capa de compatibilidad para facilitar la comunicación entre servicios basados en Go y Java a través de definiciones agnósticas al lenguaje y codificación de datos estandarizada. El sistema cubre una amplia gama de capacidades distribuidas, incluyendo descubrimiento dinámico de servicios, balanceo de carga basado en estrategias y gestión de tráfico mediante disyuntores (circuit breakers) y limitación de tasa (rate limiting). Incorpora observabilidad a través de rastreo de solicitudes distribuidas y métricas de rendimiento, al tiempo que garantiza la seguridad con cifrado de capa de transporte y control de acceso basado en identidad. La productividad del desarrollador se apoya mediante una interfaz de línea de comandos para el arranque de aplicaciones y la generación automatizada de stubs RPC a partir de definiciones de interfaz.
Handles service registration, health checking, and request tracing across distributed microservice clusters.
Este proyecto es un framework gRPC para Node.js utilizado para implementar llamadas a procedimientos remotos (RPC) de alto rendimiento. Proporciona una librería de comunicación cliente-servidor que utiliza HTTP/2 para streaming, multiplexación y enmarcado binario, junto con una implementación de protocol buffers para definir datos estructurados y generar stubs de servicio. El framework incluye una cadena de herramientas para compilar archivos de protocol buffer en objetos específicos del lenguaje y admite la generación de definiciones de tipo TypeScript estáticas para validar objetos en tiempo de ejecución. La librería cubre la red de sistemas distribuidos y la comunicación de microservicios, incluyendo cifrado SSL/TLS, compresión de mensajes y balanceo de carga. Gestiona el ciclo de vida de la solicitud a través de plazos, reintentos, recuperación de conexiones y cancelación de llamadas. Las capacidades adicionales incluyen streaming de datos bidireccional, reflexión de servicio para descubrimiento programático y servicios de verificación de salud estandarizados.
Connects distributed services using efficient request-response and streaming data exchange based on standardized schemas.
Seneca es un framework de arquitectura basada en mensajes y kit de herramientas de microservicios para Node.js. Funciona como un orquestador de tareas distribuido y enrutador de mensajes basado en patrones, permitiendo a los desarrolladores construir sistemas de servicios desacoplados que se comunican a través de un bus de mensajes. El framework se distingue por un sistema de plugins modular que organiza la lógica de negocio en módulos reutilizables y configurables. Soporta extensiones de acción dinámicas, permitiendo que nuevos manejadores envuelvan o sobrescriban patrones de acción existentes para inyectar lógica personalizada sin modificar el código original. El sistema cubre una amplia gama de capacidades, incluyendo comunicación de servicios distribuidos, orquestación de acciones asíncronas y gestión de datos de entidades. También proporciona herramientas de observabilidad para el rastreo de patrones de acción, visualización de logs basada en web y utilidades de aseguramiento de calidad para el mocking de dependencias de servicios.
Facilitates the orchestration of distributed systems through robust messaging patterns and event-driven communication across a network.
This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra
Defines standardized request-response and procedure-call patterns to ensure interoperation between diverse clients and servers.
This project is a cloud-based office suite and self-hosted document server that enables the creation and editing of documents, spreadsheets, and presentations. It functions as a headless office application, utilizing a server-side processing engine to handle file rendering and formatting without requiring a local graphical user interface. The system operates as a real-time collaborative editor, employing operational transformation to allow multiple users to edit files simultaneously. It also serves as a web-based document processor capable of automating office tasks through macro execution an
Implements a JSON-RPC based communication standard for sending structured commands to the remote processing engine.