Crates.io | channel-loader |
lib.rs | channel-loader |
version | 0.1.0-beta.12 |
source | src |
created_at | 2021-05-12 12:40:11.150274 |
updated_at | 2021-06-23 07:33:16.968391 |
description | A channel based solution designed for efficient data loading |
homepage | |
repository | https://github.com/Bajix/channel-loader-rs/ |
max_upload_size | |
id | 396507 |
size | 23,395 |
A work-stealing data loader designed around optimal load batching and connection utilization. Rather than using yields to collect batches of loads as would other data loaders, loads are enqueued to thread local dequeus and task handlers are spawned upfront. As field resolvers within the same request will already be scheduled, subsequent loads within the same request will be scheduled prior to the load task handler taking a task assignment and upon connection acquisition, all load requests will have been captured and loads by separate requests can be opportunistically batched together without introducing timeout overhead.