14 个仓库
Patterns for executing a sequence of asynchronous requests where the output of one is the input to the next.
Distinct from Operation Chaining: Candidates are either for math operations, file systems, or cancellation; none cover general async network request chaining.
Explore 14 awesome GitHub repositories matching software engineering & architecture · Asynchronous Operation Chaining. Refine with filters or upvote what's useful.
The Reactive Extensions for JavaScript
Each operator returns a new observable that wraps the previous one, enabling a composable chain without mutating the source.
Restangular is a REST client and resource mapper for AngularJS applications. It provides a suite of tools for mapping API endpoints to local objects and collections, facilitating frontend CRUD implementation through standard HTTP methods. The project distinguishes itself through an async data binding system that links user interface elements to server-side objects, ensuring automatic updates upon request completion. It also features a programmable request interceptor pipeline for modifying headers and transforming responses, as well as a JSONP request handler to bypass same-origin policy rest
Executes multiple asynchronous requests in sequence, using the output of one call as the input for the next.
This project is a PHP implementation of the Promises/A+ specification, providing a library for managing asynchronous operations and deferred values. It serves as an asynchronous task coordinator that allows for the creation of non-blocking code through a promise-based pattern. The library enables the simulation of asynchronous coroutines, allowing non-blocking code to be written in a linear style. It features duck-typed interoperability, which allows it to integrate with any foreign object that implements a then method regardless of class inheritance. The project covers broader capabilities
Implements a sequential execution pipeline by returning new promise objects from handlers.
es6-promise is an ES6 promise polyfill and JavaScript compatibility layer. It provides a standardized interface for managing asynchronous flow control and background tasks in environments that lack native support for the ES6 Promise specification. The project serves as a bridge to ensure consistent asynchronous behavior across different browser engines and legacy environments. It includes utilities for global promise injection and polyfilling, which add the implementation to the global namespace for application-wide availability. The library covers the coordination of asynchronous workflows,
Implements patterns for sequencing asynchronous operations where the output of one stage serves as the input to the next.
This repository is a collection of practical code snippets and implementation patterns for Flutter and Dart. It serves as a comprehensive guide and reference for asynchronous programming, state management patterns, and UI component design. The project provides advanced language reference material covering generics, reflection, factory constructors, and null-aware operators. It also includes specific utilities for manipulating Dart collections, such as helper methods for transforming and filtering maps, lists, and iterables. The coverage extends to high-level capabilities including asynchrono
Sequences dependent asynchronous tasks by flattening results that return further promises.
Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th
Chains futures so the output of one async task becomes the input to the next.
Reactor Core is a reactive programming toolkit and non-blocking foundation for composing asynchronous data pipelines on the JVM. It serves as an asynchronous stream processing framework and a backpressure management system, allowing developers to transform, filter, and combine sequences of events while regulating data flow between producers and consumers to prevent resource exhaustion. The library differentiates itself through a sophisticated concurrency scheduling system and demand-based flow control. It decouples signal processing from specific threads using a scheduler registry and provide
Enables wrapping sequences of asynchronous operations into reusable functions for consistent application across subscribers.
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
Triggers subsequent tasks automatically upon the successful completion of a preceding request to handle dependent data flows.
JDA 是一个 Java 库,充当 Discord API 包装器、机器人框架和语音 API 客户端。它使应用程序能够与 Discord REST API 和实时网关交互,以构建自动化助手、管理服务器并处理用户交互。 该项目包括一个分片管理器,用于将网关连接分布在多个分片上,以扩展高容量部署。它还提供了一个 UI 组件库,用于在消息中构建交互式按钮、选择菜单和模态表单。 其能力涵盖语音和音频管理,包括音频流和音板播放。该库还包括用于社区管理、服务器管理以及通过基于规则的触发器进行自动化内容审核的工具。 该系统实现了多种架构模式,包括事件驱动的监听器注册表、可配置的内存缓存,以及针对 API 请求的自动速率限制处理。
Sequences multiple API calls using combinators to manage complex workflows without nested callbacks.
Returns 是一个 Python 函数式编程库,提供用于管理状态、错误处理和可选性的类型安全容器。它作为一个单子 (monadic) 容器库和类型安全错误处理框架,用 Result 和 Optional 容器替换传统的 try-catch 块和空值检查,从而将异常视为数据。 该项目的特色在于使用专门的 Mypy 静态分析插件来验证函数式流水线并模拟高阶类型。它提供了通过 IO 容器隔离副作用的机制,并提供了一个类型安全依赖注入框架,将依赖项的提供推迟到计算的最终执行阶段。 该库涵盖了广泛的函数式原语,包括柯里化、部分应用和声明式数据流水线的组合。它通过将协程包装在容器中来链式处理非阻塞操作,从而支持异步工作流管理,并包括用于资源生命周期管理和自定义容器代数定律验证的实用程序。
Links future results and handles exceptions in asynchronous call chains without repetitive wait statements.
This project is an ECMAScript 2015 reference guide and JavaScript language cheat sheet. It provides a concise summary of the language specifications, syntax updates, and new features introduced in the 2015 standard. The guide serves as a technical overview of modern language patterns used to manage modular code structures and asynchronous operations. It functions as a reference for implementing current coding standards and studying core updates to the language. The content covers a wide range of capabilities, including asynchronous programming, object modeling, and module management. It deta
Details patterns for chaining asynchronous operations where the output of one serves as the input to the next.
Seneca 是一个用于 Node.js 的消息驱动架构框架和微服务工具包。它作为分布式任务编排器和基于模式的消息路由器运行,允许开发人员构建通过消息总线通信的解耦服务系统。 该框架通过将业务逻辑组织为可重用、可配置模块的模块化插件系统而脱颖而出。它支持动态操作扩展,使新的处理程序能够包装或覆盖现有的操作模式,从而在不修改原始代码的情况下注入自定义逻辑。 该系统涵盖了广泛的功能,包括分布式服务通信、异步操作编排和实体数据管理。它还提供用于操作模式跟踪、基于 Web 的日志可视化以及用于服务依赖模拟的质量保证工具的观测工具。
Provides patterns for executing a sequence of asynchronous requests where the output of one serves as the input to the next.
RxJavaSamples 是一个参考实现和实践指南集合,用于将响应式模式应用于异步网络和状态管理。它提供了将响应式流与 Retrofit 集成的代码演示,以非阻塞方式处理网络请求。 该项目专注于管理 API 调用的异步模式,包括组合并发流以及使用 Subject 缓存发射的值以进行状态管理。它特别演示了如何实现自动化令牌刷新工作流,以在不中断用户的情况下维护已认证的会话。 该仓库涵盖了请求编排中更广泛的功能,例如对依赖网络调用进行排序,以及将多个并行请求聚合为单个响应对象。它还包括用于响应数据格式化和将 API 响应适配映射为结构化 Java 对象的实现。
Sequences dependent network calls by piping the output of one reactive request into the input of another.
This project is a promise-based concurrency framework and asynchronous task library for Swift and Objective-C. It functions as a workflow orchestrator that uses monadic transformations to chain operations and propagate results through a state machine. The library specializes in transforming traditional completion-handler APIs into promise-based structures to enable sequential execution. It provides mechanisms for coordinating simultaneous background processes, including the ability to aggregate results from multiple tasks or synchronize operations through racing and waiting. The framework co
Sequences multiple asynchronous tasks in a pipeline where each operation feeds its output into the next.