CREATEIT SOFTWARE
Symfony Armenian Community

By Createit.am

Ինչպես օգտագործել Composer-ը քիչ օպերատիվ հիշողության պայմաններում

logo-composer-transparentComposer-ը օգտագործելու համար պահանջվում է մինիմալը 1GB օպերատիվ հիշողությամբ սպասառու համակարգիչ՝ սերվեր, որը այնքան էլ էժան հաճույք չէ։ Դրանից առաջանում է խնդիր՝ deployment-ի ժամանակ։ Կախվածությունների(Dependency) տեղադրման ժամանակ տեղի է ունենում հետևյալ սխալը (օրինակ 512MB օպերատիվ հիշողության դեպքում):      

ErrorException: proc_open(): fork failed - Cannot allocate memory in phar

Դա նշանակում է, որ համակարգի օպերատիվ հիշողությունը չի հերիքում composer.phar ֆայլի կատարման համար։ *nix համակարգերում խնդիրը լուծելու համար պետք է ստեղծել  swap ֆայլ, որը փոխարինում է օպերատիվ հիշողությանը՝ վերջինիս չհերիքելու դեպքումSwap ստեղծելու մասին պոստեր կան բավականին շատ ռեսուրսներում, կարող եք օգտվել հետևյալ գրառումներից Ռուսերեն։ Файл подкачки: swap-файл и swap-раздел в Linux Անգլերեն։ Linux Add a Swap File – Howto  

Կարգավորումներ

Նման սխալ կարող է առաջանալ նաև համակարգի սխալ կոնֆիգուրացիայի դեպքում, երբ PHP Command Line ինտերֆեյսը չունի համապատասխան կարգավորումներ, որպիսի օգտագործի համակարգի ամբողջ ազատ օպերատիվ հիշողությունը։ Ուղղելու համար պետք է կատարել հետևյալը 1. Բացել կոնֆիգուրացիոն ֆայլը խմբագրիչով

sudo nano /etc/php5/cli/php.ini

2. փոփոխել հիշողության սահմանը, դնելով -1 արժեքը, որը թույլ կտա օգտագործել ամբողջ ազատ հիշողությունը

memory_limit = -1

  Մասնավոր դեպքերում թարմացման հրամանը կունենա այսպիսի տեսք՝

php -d memory_limit=-1 composer.phar install

Այսքանը ։)

Մեկնաբանություններ (0)

Առայժմ մեկնաբանություններ չկան

Symfony.AM (c) 2016

tigran[@]symfony.am