Un nuovo backend dei media sperimentali zypper e il supporto per i download di pacchetti paralleli sono stati introdotti con il rilascio di libzyppLa versione 17.36.4 e zypperLa versione 1.14.87.

Questi miglioramenti, secondo una e-mail sulla mailing list di fabbrica, migliorano le prestazioni della gestione dei pacchetti riducendo il tempo necessario per recuperare pacchetti e metadati.

L’aggiornamento fornisce due caratteristiche principali: la possibilità di recuperare i pacchetti utilizzando connessioni simultanee e un backend multimediale semplificato che migliora il riutilizzo della connessione e la gestione dei metadati. Entrambe le funzionalità sono attualmente in fase sperimentale e devono essere abilitate manualmente.

Prima che la funzione sia abilitata ufficialmente per impostazione predefinita, il download del pacchetto parallelo può essere attivato impostando una variabile d’ambiente prima di eseguire un’operazione di zipper. Ciò consente di scaricare più pacchetti contemporaneamente, migliorando la velocità complessiva.

Abilita i download paralleli

env ZYPP_PCK_PRELOAD=1 zypper dup

Il numero di download simultanei può essere configurato nel zypp.confIl file utilizza la seguente direttiva:

download.max_concurrent_connections = 5

Il default è 5. Tuttavia, valori più elevati possono produrre prestazioni migliori a seconda delle risorse di sistema e delle condizioni di rete.

Il nuovo backend dei media può essere abilitato con una variabile di ambiente separata. Il backend elimina il sovraccarico evitando il metalink di recupero e la divisione dei file multi-server. È ottimizzato per un migliore riutilizzo della connessione durante i metadati.

Per attivare il nuovo backend dei media

env ZYPP_CURL2=1 zypper ref

Mentre queste due caratteristiche sono separate, sono più efficaci se usate insieme. Utilizzando l’uso metalink=Gli URL in .repoI file possono migliorare ulteriormente le prestazioni del mirror. Tuttavia, baseurl=Rimane l’impostazione preferita per i sistemi di produzione a causa del suo comportamento chiave di fiducia.

Le seguenti versioni sono necessarie per utilizzare le nuove funzionalità:

libzyppVersione 17.36.4 o più recente
zypperVersione 1.14.87 o più recente

Questi sono disponibili in Tumbleweed e Slowroll. Gli utenti possono testare questi nuovi miglioramenti su Leap o varianti desktop immutabili Aeon e Kalpa utilizzando Distrobox.

Gli utenti di openSUSE-repos su Tumblweed hanno guadagnato mediahandler=curl2Come parte degli URL del repository e preimpostati ZYPP_PCK_PRELOAD=1 via /etc/profile.d/opensuse_repos.shCon l’ultimo aggiornamento openSUSE-repos.

Gli utenti di Leap 15 e 16 possono attualmente ottenere l’aggiornamento zypper con questi miglioramenti dal repository di sviluppo.

Per installare i pacchetti aggiornati, gli utenti possono passare a una shell di root con sudo su -E correre zypper in <package-name>- Si’.

https://download.opensuse.org/repositories/zypp:/Head/

I download paralleli dovrebbero consentire ai sistemi di connessioni lente o ad alta latenza di utilizzare meglio la larghezza di banda disponibile. I aggiornamenti dei metadati diventano più efficienti con il nuovo backend. Questi miglioramenti riducono anche i tempi di configurazione nelle condutture CI/CD e negli ambienti automatizzati.

Di seguito sono riportati alcuni risultati di riferimento elencati nell’e-mail nella mailing list di fabbrica:

Scenario                                           Time
--------------------------------------------  --------
Download 100MB / ~250 packages
Default (MultiCurl)                               68.7 sec
New Backend (ZYPP_CURL2=1)                        29.6 sec
Parallel Downloads (ZYPP_PCK_PRELOAD=1)           13.1 sec

Download 1.02GB / 407 packages into empty rootfs
Default (MultiCurl)                               281.1 sec
New Backend (ZYPP_CURL2=1)                        208.5 sec
Parallel Downloads (ZYPP_PCK_PRELOAD=1)           119.6 sec

Questi risultati mostrano miglioramenti significativi negli scenari reali con tempi di esecuzione totali ridotti di oltre il 50% in alcuni casi.

Anche se ancora sperimentali, queste opzioni sono ora disponibili per gli utenti che desiderano abilitarle e testarle.

Gli utenti che desiderano fornire un feedback possono rispondere alla discussione della mailing list o inviare una segnalazione di bug contro il componente bugpppp bugzilla.

Più feedback prima la funzione può essere resa ufficiale.