Redis unserialize foutenopstelling opstellen
In Adobe Commerce leidt het uitvoeren van de opdracht setup:static-content:deploy tot een Redis-fout voor ongedaan maken van de serienummering wanneer parallelle processen problemen opleveren met de Redis-verbinding tijdens de implementatie van statische inhoud. Deze kwestie onderbreekt plaatsing en keert unserialize en Redis verbindingsfouten terug. Om deze kwestie te bevestigen, stel statische inhoudsplaatsing op enig-draadwijze in werking om parallelle Redis toegangsconflicten te verhinderen.
Beschrijving description
Betrokken versies
- Adobe Commerce op locatie: 2.1.2 en hoger
- Adobe Commerce over cloudinfrastructuur 2.1.2 en hoger
- Redis, elke versie
Probleem/symptomen
Als u de opdracht setup:static-content:deploy uitvoert, treedt de fout Redis op:
)
[ 2017-06-02 19:57:59] Command:php ./bin/magento setup:static-content:deploy --jobs=3 en_US
[ Exception]
Notice: unserialize(): Error at offset 0 of 1 bytes in /app/<domain>/vendor/magento/module-config/App/Config/Type/System.php
on line 214
.....
[ CredisException]
read error on connection
[ RedisException]
read error on connection
.....
[ Exception]
Notice: unserialize(): Error at offset 0 of 1 bytes in /app/<domain>/vendor/magento/module-config/App/Config/Type/System.php
on line 214
.....
[ RuntimeException]
Command php ./bin/magento setup:static-content:deploy --jobs=3 en_US returned code 3
Oorzaak
Het probleem wordt veroorzaakt door parallelle storende processen op de Redis-verbinding.
Hier was een proces in App/Config/Type/System.php dat een reactie voor system_cache_exists verwachtte die door een ander proces werd gemaakt. Zie de gedetailleerde verklaring in Jason Woods' post .
Resolutie resolution
U kunt parallellisme uitschakelen en setup:static-content:deploy uitvoeren in een modus met één thread door de volgende omgevingsvariabele in te stellen:
STATIC_CONTENT_THREADS=1
U kunt ook de opdracht setup:static-content:deploy uitvoeren, gevolgd door het argument -j 1 (of --jobs=1 ).
Nota: Op de enig-draadwijze, kan het statische proces van de inhoudsplaatsing vier keer langer duren.
Gerelateerde lezing
In onze documentatie voor ontwikkelaars: