Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Access control / semaphores

Aperta
#2,386 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
go, php
Ambito
api, backend

Direzione di ricerca

Inizia dallo scenario delle risorse esterne citato in #1796 e dal punto di ingresso proposto frankenphp_guard. Poiché l’issue non indica file o test, chiarisci innanzitutto l’API e il comportamento del semaforo, comprese le soglie di blocco e rifiuto. Il lavoro è completato quando il design e l’ambito dell’implementazione per i thread del server di FrankenPHP sono concordati.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement
Describe your feature request

While thinking some more about cases where servers get stuck on external resources like #1796, I realized that you don't necessarily need a connection pool to limit access, some kind of semaphore would be enough.

Not sure how this would look like exactly, maybe something like this:

frankenphp_guard (
  key: 'slow-api-request',
  block_count: 10, # block on more than 10 parallel requests
  reject_count: 20, # throw on more than 20
  callback: function(){
    # slow IO to external API
  }
);

Doing this with files/apcu is actually pretty hard, mainly due to fatal errors and resulting deadlocks.
It would be easy to do on the FrankenPHP since we have full control over all threads.

Lingua principale
Go
Stelle
11.4k
Fork
487
Merge medio
2g 22h
PR unite (30g)
19

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di php/frankenphp

Tutte le issue di php/frankenphp

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.