Add chunk bulk upload API
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
Direzione di ricerca
Read the existing POST /chunks handler and websocket upload protocol, then compare them with the linked BeeTurbo ChunksBulkUploadHandler.cs for the proposed request format. The issue does not name Bee files or tests; first locate the upload entry points and tests. Done means a new, non-retro-compatible endpoint accepts multiple chunks in one request and validates each chunk’s integrity.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Current http and websocket upload APIs are heavily suboptimized. A better API to improve upload speed is necessary.
Motivation
Current POST /chunks API and websocket protocol work in the same way, sending one chunk at time, and waiting ack from node.
All the time the network is always waiting for something, or to receive new chunk data, or confirmation that data has been received. The network line is always empty of data.
Instead, to have a continuous stream of chunks is a really better solution.
Implementation
I've implemented an alternative rest API into an experimental reverse proxy project that I've called "BeeTurbo". It is putted directly in front of bee.
api implementation: https://github.com/Etherna/bee-turbo/blob/3516cf9f0b67af3ae58308d5f7433048fdbff5aa/src/BeeTurbo/Handlers/ChunksBulkUploadHandler.cs
Basically, it receives a set of chunks with a single POST request. Payload is composed as continuous list of chunks, where each one is described as:
- uint16 with chunk's size in byte
- chunk's payload, of the given size
- swarm hash, used only to check chunk's integrity
Drawbacks
The new api is not retro-compatible, a new endpoint has to be introduced
- Lingua principale
- Go
- Stelle
- 1.5k
- Fork
- 390
- Merge medio
- 2g 12h
- PR unite (30g)
- 19
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ethersphere/bee
-
Chequebook deployment uses a fixed 175,000 gas limit; it needs about 630,000 under Glamsterdam (live on Sepolia since 2026-10-06)Forse già presa @sbackend123 l’ha presa 6 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
ethersphere/bee#5650 · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
ethersphere/bee#5660 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
ethersphere/bee#5659 ·
I maintainer di solito rispondono entro 2 giorni
-
seen
Difficoltà 4/5 3-5 giorni Idoneità per principianti 40/100
ethersphere/bee#5648 ·
I maintainer di solito rispondono entro 2 giorni
-
pusher: chunksWorker deadlocks on a deferred chunk that fails IdentityAddress (send on nil op.Err), halting all push-syncForse già presa @sbackend123 l’ha presa 8 giorni fa. Apertaseen
Difficoltà 3/5 1-2 giorni Idoneità per principianti 75/100
ethersphere/bee#5641 · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di ethersphere/bee
Issue simili
-
bug performance scalability
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
Davidjustice28/basildb#35 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
rhysd/actionlint#761 ·
-
bug needs-triage P2 tier:1-mechanical
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
krakenhavoc/cmd_and_ctrl#3652 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
puppe1990/amarra-cais#345 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
limitlessprojects/Go-Hybrid#50 ·
I maintainer di solito rispondono entro 1 giorno