Tại sao PHP Composer quá chậm?


99

Tại sao PHP Composer lại chậm như vậy khi tất cả những gì tôi làm là bắt đầu một dự án không có phụ thuộc nào? Đây là các lệnh tôi chạy:

composer init

<bước qua quá trình tạo composer.json, xác định 0 không phụ thuộc>

composer install

Chờ 3 phút (không phải cường điệu).

Tất cả những gì nhà soạn nhạc phải làm là kéo trình tải tự động vào và tạo /vendor, vậy tại sao lại mất nhiều thời gian như vậy? Đối với vấn đề đó, tại sao bước đó không xảy ra composer init?

Có tùy chọn cấu hình nào tôi có thể sử dụng để lấy trình tải tự động được lưu trong bộ nhớ cache và nhà cung cấp initkhông?


1
Nghiêm trọng hơn: bạn đã cập nhật nhà soạn nhạc của mình trong 30 ngày qua chưa? Có một cải tiến hiệu suất lớn đối với mã chỉ trong tháng trước
Mark Baker

Tôi đã bắt đầu compose installhơn 5 phút trước và nó vẫn chưa hoàn thành. Composer version 1.0-dev (07c644ac229a21df80180598d8bb9aaba232eecb) 2015-02-03 12:51:10. Có thể nó không phải là phiên bản mới nhất nhưng vẫn mới hơn so với máy tính lớn IBM của bạn ;-)
axiac 10/02/15

Vui lòng xác nhận bạn đã hoàn thànhcomposer self-update
sjagr 10/02/15

Tôi có, cập nhật nó vào tuần trước hoặc lâu hơn.
AgmLauncher

Tôi đã phải vật lộn với việc cập nhật nhà soạn nhạc và việc tự cập nhật của nhà soạn nhạc cực kỳ chậm. Mất hơn 15 phút và sau đó ném các ngoại lệ. Tôi đã thay đổi máy chủ DNS bộ định tuyến của mình (từ máy chủ của Google sang ISP của riêng tôi) và trình soạn nhạc hoạt động như một cái duyên.
Gordon Hickley

Câu trả lời:


43

Ngoài ra, hãy tắt Xdebug . Xdebug có thể khiến Composer mất vài phút ngay cả khi chạy một lệnh đơn giản như vậy composer --version.


1
Đây thực sự là vấn đề của tôi. Xdebug làm cho trình soạn nhạc chạy cực chậm.
AgmLauncher

Hãy thử sử dụng hirak / uyssimo. Nó là một plugin trình soạn nhạc giúp bạn tải xuống các gói trong nhịp độ nhanh chóng. liên kết
Ritesh Chitrakar

3
Trong thời gian viết bài, tôi có cùng hiệu suất khi có hoặc không có gỡ lỗi, kể từ năm 2020/2019, trình soạn nhạc tự động tắt xdebug khi chạy, mặc dù quá trình cài đặt yii2-starter-kit mất khoảng 200 giây với tất cả các thư viện có thể là w / wo xdebug, vì vậy câu trả lời này đang trở nên lỗi thời
FantomX1

Đã thấy điều này, kéo lên trình gỡ lỗi của tôi. Nhận thấy rằng mặc dù xdebug chỉ được định cấu hình cho FPM, CLI đã khởi tạo nó và IDE của tôi đang ngồi đó tại một điểm nghỉ chờ tôi. Lượt tiếp tục và nhà soạn nhạc đã bắt đầu trở lại ngay lập tức.
ppostma1

377

Bởi vì Composer được thực hiện bởi file_get_contents(). Điều đó không có tối ưu hóa TCP, không có Keep-Alive, không có ghép kênh, v.v.

Tôi đã tạo một plugin Composer để tải xuống các gói song song: https://packagist.org/packages/hirak/prestissimo

$ composer global yêu cầu hirak / uyssimo

Hãy thử nó. Trong môi trường của tôi, composer installtrở nên nhanh hơn gấp 10 lần.


Chà, tôi đã mất từ ​​124 giây để cài đặt một dự án laravel mới chỉ còn 21 giây. Yêu nó!
cornips 27/09/18

7
Tin tốt: Điều này dường như đã được hợp nhất vào Composer 2 vào tháng 1 năm 2019: github.com/composer/composer/pull/7904
Chuck Le Butt

@ChuckLeButt nhưng vẫn bị phát hành :(
hejdav

Cảm ơn người anh em. Nó nhanh hơn 20 lần.
Ilyas karim

61
  1. Đảm bảo bạn có phiên bản Composer mới nhất.
  2. Cài đặt ở chế độ tiết bằng cách thêm -vvv chẳng hạn composer global require "squizlabs/php_codesniffer=*" -vvv
  3. Nếu bạn có thể tìm ra nơi Composer đang gặp phải sự chậm chạp, chẳng hạn như của tôi đã bị kẹt trong 5 phút khi tải xuống các gói. Mất> 5 phút để tải xuống tệp 20 kB trên kết nối 50 Mbit / s. Điều này là do nó đang tải xuống các gói từ packagist bằng HTTP chứ không phải HTTPS. Thực hiện những thay đổi này đối với cấu hình đã giải quyết được sự cố của tôi: composer config --global repo.packagist composer https://packagist.org

3
Tôi là người mới sáng tác và cố gắng sửa lỗi này trong 2 ngày, sau khi đọc nhận xét của bạn và thêm -vvv, cuối cùng nó đã hoạt động. 1000 lượt ủng hộ
Huy Trịnh

# 3 đã giải quyết nó cho tôi. Bạn là anh hùng của tôi ngay bây giờ. Tôi đã lo lắng trong một thời gian dài tại sao nó quá chậm và chỉ hoạt động trên một số kết nối internet. Cám ơn!
Andreas Schantl

composer config --global repo.packagist composer https://packagist.org cái gì vậy! Tuyệt vời! 🏆
Rishi

13

Ở đây cũng vậy. Xem thêm thông tin chi tiết với "composer install --profile -vvv". Trong trường hợp của tôi, phải mất nhiều thời gian để tải xuống một vài tệp JSON. Chúng được lưu vào bộ nhớ đệm trên máy chủ của tôi, nhưng chúng vẫn được tải xuống với mọi cuộc gọi cài đặt / cập nhật Trình soạn nhạc.

... 30 phút sau ...

Có vẻ như một số vấn đề về hiệu suất @ packagist.org. Bây giờ cài đặt Trình soạn nhạc chạy trong vòng 2 giây! Và các tệp JSON đã tải xuống được lưu trữ đúng cách.


1
"Chúng được lưu vào bộ nhớ đệm trên máy chủ của tôi nhưng vẫn được tải xuống với mọi cuộc gọi cài đặt / cập nhật trình soạn nhạc" NÀY !! Bạn đã tìm ra giải pháp cho vấn đề này chưa? Tôi có kết nối chậm và thật tệ khi thấy điều đó.
lud

9

Tôi đã gặp phải vấn đề này và nó khiến tôi gặp khó khăn vì tôi không cài đặt Xdebug ở bất kỳ đâu trên máy của mình. Hóa ra đó là lỗi chế độ địa chỉ IPv6 . Vì vậy, để kiểm tra tôi đã chạy

curl --ipv4 'https://packagist.org/packages.json'
curl --ipv6 'https://packagist.org/packages.json'

IPv4 đã hoạt động nhưng IPv6 không thành công. Cuối cùng, bạn nên xem xét để tìm hiểu lý do tại sao ngăn xếp mạng của bạn không hỗ trợ nó, nhưng trong trường hợp của tôi, tôi quyết định chỉ ưu tiên lưu lượng IPv4 cho đến khi tôi có thể giải quyết điều đó. Trên CentOS, tôi đã tạo / sửa đổi tệp /etc/gai.conf và đưa vào như sau:

label       ::1/128        0
label       ::/0           1
label       2002::/16      2
label       ::/96          3
label       ::ffff:0:0/96  4
precedence  ::1/128        50
precedence  ::/0           40
precedence  2002::/16      30
precedence  ::/96          20
precedence  ::ffff:0:0/96  100

Trên Ubuntu, bạn cũng có thể chỉnh sửa tệp đó và bỏ ghi chú dòng

precedence ::ffff:0:0/96  100

Nguồn trên Trung tâm cộng đồng Rackspace


Xin lưu ý rằng điều này dường như không giúp ích cho cá nhân tôi, mặc dù tôi sẽ phải điều chỉnh lại nó để xác nhận tất cả các tùy chọn, mà chúng có thể là nguyên nhân.
FantomX1

@ FentomX1 Rất tiếc khi biết điều đó. Đó là lý do tại sao tôi đưa bài kiểm tra lên đầu trang. Nếu bạn thực hiện cả hai bài kiểm tra curl và nó đang kết nối, thì rõ ràng, không nên thực hiện các thay đổi vì mạng của bạn được thiết lập chính xác.
Aaron Chamberlain

1
Tìm thấy một video ngắn trên YouTube hướng dẫn cách thực hiện việc này trên Windows 10. Nó đã khắc phục sự cố của tôi. youtube.com/watch?v=63Lt_vlNWLc
Marcus

5

Trên VPS Ubuntu Xenial 16.04, bạn cần làm như sau:

sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"
composer global require hirak/prestissimo

Nó cấu hình IPv4 được ưu tiên hơn IPv6.

/server/93717/setting-ipv4-as-preferred-protocol-over-ipv6


kể từ khi tôi cài đặt uy tín, tốc độ soạn nhạc của tôi rất tuyệt vời.
Big Tree

3
Tôi có thể khẳng định rằng giải pháp này hoạt động ngay cả đối với ubuntu 18.04LTS
mwangaben

Vui lòng thêm một số giải thích cho câu trả lời của bạn để những người khác có thể học hỏi từ nó. Dòng đầu tiên đó làm gì?
Nico Haase

@NicoHaase Nếu bạn nhìn vào dấu thời gian, câu trả lời này thực sự là phản hồi cho vấn đề mà tôi đã mô tả, nhưng họ không đưa nó vào dạng nhận xét. Tôi đã kết hợp nó vào câu trả lời của mình. Có vẻ như packagist thích sử dụng IPV6, nhưng một số mạng vẫn không hoạt động tốt với nó. Dòng đầu tiên làm cho nó để Máy Linux của bạn thích địa chỉ IPv4 hơn và tìm kiếm những địa chỉ đó trước.
Aaron Chamberlain

1

Trong trường hợp của tôi, phiên bản nhà soạn nhạc mà tôi đang chạy đã bị lỗi thời. Sau khi cập nhật phiên bản nhà soạn nhạc, sự cố đã không còn nữa.

Để cập nhật phiên bản nhà soạn nhạc, hãy chạy

composer self-update

và sau đó yêu cầu gói trình soạn nhạc và bạn đã hoàn tất.

composer require "<package-name>"

sudo? nguồn gốc ? tại sao ?
Mohamed Elbahja

xin lỗi anh em, thêm sudo nếu bạn có vấn đề về quyền.
sh6210

hay bạn nên sửa chế độ tệp và quyền của chủ sở hữu / nhóm? hơn là chỉ chạy SUDO! mà không biết điều đó có nghĩa là gì? chắc chắn không phải là FIX.
Mohamed Elbahja

tất nhiên, bạn có thể khắc phục sự cố quyền của chủ sở hữu / nhóm bằng cách chạy lệnh "chown", nhưng bạn có thể thực hiện việc này một lần. Mục đích chính của tôi là đưa ra giải pháp theo cách đơn giản nhất theo quan điểm của tôi. Tuy nhiên, tôi xin lỗi nếu lời nói của tôi không có ý nghĩa gì đối với bạn.
sh6210

@ sh6210 Không khuyến khích dùng sudo khi dùng composer. Giả định rằng 'có thể' một permissionvấn đề là thành kiến.
dbf

0

Nếu bất kỳ câu trả lời nào trước đó không hoạt động, hãy kiểm tra xem tường lửa của bạn có cho phép TCP_OUT trên cổng 9418 hay không.

Bảo mật tường lửa của tôi quá sắc nét. Điều này khiến Composer mất rất nhiều thời gian, tôi không bao giờ nhận được bất kỳ thời gian chờ nào hoặc cho biết cổng bị chặn.


Bộ xử lý của bạn có bận gì trong quá trình cập nhật không?
Yevgeniy Afanasyev

0

Của tôi bị chậm khi tải xuống tệp json do phần mềm chống vi-rút. Một số antivirus quét tất cả lưu lượng truy cập web và nó có thể chậm phân tích các tệp json. Thử tắt AV của bạn trong khi chạy trình soạn nhạc.


0

Chỉnh sửa: Kết luận: không có giải pháp nào được liệt kê ở đây hoặc thường có vẻ như là chống đạn. Có gì cuối cùng giúp thường sử dụng nhà soạn nhạc từng bước, đòi hỏi hoặc gỡ bỏ chỉ một gói duy nhất tại một thời gian sử dụng composer require, composer removelệnh, cũng coi thêm bất kỳ "cụ thể không phụ thuộc" thiết lập, bất kỳ thư viện có thể được thêm / gỡ bỏ vì lợi ích của nó trong việc cập nhật / làm mới cấu hình bộ đệm ẩn khóa composer.json.

Nhóm kinh nghiệm của tôi với các câu trả lời từ đây và từ liên kết được đề cập.

Trước đây, tôi đã thử mọi giải pháp được đề cập trong câu hỏi này cho đến thời điểm này. Tuy nhiên, nó vẫn không giúp được gì cho tôi, mặc dù tôi đã thử / nhận thấy việc cài đặt bất kỳ thư viện đơn lẻ nào khác nhanh đáng kể, vì vậy tôi đã tiếp tục điều tra từng thư viện có thể gây ra sự cố.

1) CÓ Và tôi đã xác định nó là mã nguồn,"codeception/codeception": "2.4.0",

Nó chỉ mất gần 200 giây, mặc dù chạy nó cùng với các thư viện khác dường như đôi khi chạy gần như trong 12 phút. Hơn nữa, nhà soạn nhạc dường như không phản ánh thời gian thực khi sau khi bắt đầu trong 20 giây, nó xuất ra nó chạy 0,35 giây, v.v.

[374.9MiB/173.14s]     39/45:   https://codeload.github.com/sebastianbergmann/php-text-template/legacy.zip/31f8b717e51d9a2afca6c9f046f5d69fc27c8686
[374.9MiB/173.16s]     40/45:   https://codeload.github.com/sebastianbergmann/diff/legacy.zip/720fcc7e9b5cf384ea68d9d930d480907a0c1a29
[374.9MiB/173.17s]     41/45:   https://codeload.github.com/sebastianbergmann/exporter/legacy.zip/68609e1261d215ea5b21b7987539cbfbe156ec3e
[374.9MiB/173.19s]     42/45:   https://codeload.github.com/sebastianbergmann/phpunit-mock-objects/legacy.zip/f9756fd4f43f014cb2dca98deeaaa8ce5500a36e
[374.9MiB/173.20s]     43/45:   https://codeload.github.com/sebastianbergmann/recursion-context/legacy.zip/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8
[374.9MiB/173.23s]     44/45:   https://codeload.github.com/sebastianbergmann/php-code-coverage/legacy.zip/4cab20a326d14de7575a8e235c70d879b569a57a
[374.9MiB/173.24s]     45/45:   https://codeload.github.com/doctrine/instantiator/legacy.zip/ae466f726242e637cebdd526a7d991b9433bacf1
[374.9MiB/173.24s]     Finished: success: 45, skipped: 0, failure: 0, total: 45
[374.8MiB/173.25s] Analyzed 6622 packages to resolve dependencies
[374.8MiB/173.25s] Analyzed 435842 rules to resolve dependencies
[374.8MiB/173.25s] Package operations: 54 installs, 0 updates, 0 removals
[374.8MiB/173.26s] Installs: sebastian/recursion-context:3.0.0, sebastian/exporter:3.1.2, doctrine/instantiator:1.3.0, phpunit/php-text-template:1.2.1, phpunit/phpunit-mock-objects:6.1.2, codeception/stub:1.0.4, sebastian/diff:3.0.2, sebastian/comparator:3.0.2, theseer/tokenizer:1.1.3, sebastian/version:2.0.1, sebastian/environment:3.1.0, sebastian/code-unit-reverse-lookup:1.0.1, phpunit/php-token-stream:3.1.1, phpunit/php-file-iterator:1.4.5, phpunit/php-code-coverage:6.0.5, sebastian/object-reflector:1.1.1, sebastian/object-enumerator:3.0.3, sebastian/global-state:2.0.0, phpunit/php-timer:2.1.2, symfony/polyfill-ctype:v1.17.0, webmozart/assert:1.8.0, phpdocumentor/reflection-common:2.1.0, phpdocumentor/type-resolver:1.1.0, phpdocumentor/reflection-docblock:5.1.0, phpspec/prophecy:v1.10.3, myclabs/deep-copy:1.9.5, sebastian/resource-operations:1.0.0, phar-io/version:1.0.1, phar-io/manifest:1.0.1, phpunit/phpunit:7.1.5, codeception/phpunit-wrapper:7.6.1, symfony/yaml:v4.4.8, behat/gherkin:v4.6.2, symfony/polyfill-mbstring:v1.17.0, symfony/dom-crawler:v4.4.8, symfony/css-selector:v4.4.8, symfony/browser-kit:v4.4.8, symfony/event-dispatcher-contracts:v1.1.7, psr/container:1.0.0, symfony/event-dispatcher:v4.4.8, symfony/service-contracts:v2.0.1, symfony/polyfill-php73:v1.17.0, symfony/console:v4.4.8, symfony/finder:v4.4.8, ralouphie/getallheaders:3.0.3, psr/http-message:1.0.1, guzzlehttp/psr7:1.6.1, guzzlehttp/promises:v1.3.1, symfony/polyfill-php72:v1.17.0, symfony/polyfill-intl-idn:v1.17.0, guzzlehttp/guzzle:6.5.3, symfony/process:v4.4.8, facebook/webdriver:1.7.1, codeception/codeception:2.4.0
[374.8MiB/173.28s]   - Installing sebastian/recursion-context (3.0.0): [374.9MiB/173.28s] Loading from cache[374.9MiB/173.28s]
[374.9MiB/173.28s]  Extracting archive[374.9MiB/173.51s]   - Installing sebastian/exporter (3.1.2): [374.9MiB/173.52s] Loading from cache[374.9MiB/173.52s]
[374.9MiB/173.52s]  Extracting archive[374.9MiB/173.75s]   - Installing doctrine/instantiator (1.3.0): [374.9MiB/173.76s] Loading from cache[374.9MiB/173.76s]
[374.9MiB/173.76s]  Extracting archive[374.9MiB/174.00s]   - Installing phpunit/php-text-template (1.2.1): [374.9MiB/174.00s] Loading from cache[374.9MiB/174.00s]
[374.9MiB/174.00s]  Extracting archive[374.9MiB/174.23s]   - Installing phpunit/phpunit-mock-objects (6.1.2): [374.9MiB/174.23s] Loading from cache[374.9MiB/174.23s]
[374.9MiB/174.23s]  Extracting archive[374.9MiB/174.55s]   - Installing codeception/stub (1.0.4): [374.9MiB/174.56s] Loading from cache[374.9MiB/174.56s]
[374.9MiB/174.56s]  Extracting archive[374.9MiB/174.80s]   - Installing sebastian/diff (3.0.2): [374.9MiB/174.80s] Loading from cache[374.9MiB/174.80s]
[374.9MiB/174.80s]  Extracting archive[374.9MiB/175.07s]   - Installing sebastian/comparator (3.0.2): [374.9MiB/175.07s] Loading from cache[374.9MiB/175.07s]
[374.9MiB/175.07s]  Extracting archive[374.9MiB/175.33s]   - Installing theseer/tokenizer (1.1.3): [374.9MiB/175.33s] Loading from cache[374.9MiB/175.33s]

Cuộc chạy trước

 Problem 1
    - Installation request for codeception/codeception 2.4.0 -> satisfiable by codeception/codeception[2.4.0].
    - Conclusion: remove symfony/finder v5.0.8
    - Conclusion: don't install symfony/finder v5.0.8
    - codeception/codeception 2.4.0 requires symfony/finder >=2.7 <5.0 -> satisfiable by symfony/finder[v2.7.0, v2.7.1, v2.7.10, v2.7.11, v2.7.12, v2.7.13, v2.7.14, v2.7.15, v2.7.16, v2.7.17, v2.7.18, v2.7.19, v2.7.2, v2.7.20, v2.7.21, v2.7.22, v2.7.23, v2.7.24, v2.7.25, v2.7.26, v2.7.27, v2.7.28, v2.7.29, v2.7.3, v2.7.30, v2.7.31, v2.7.32, v2.7.33, v2.7.34, v2.7.35, v2.7.36, v2.7.37, v2.7.38, v2.7.39, v2.7.4, v2.7.40, v2.7.41, v2.7.42, v2.7.43, v2.7.44, v2.7.45, v2.7.46, v2.7.47, v2.7.48, v2.7.49, v2.7.5, v2.7.50, v2.7.51, v2.7.6, v2.7.7, v2.7.8, v2.7.9, v2.8.0, v2.8.1, v2.8.10, v2.8.11, v2.8.12, v2.8.13, v2.8.14, v2.8.15, v2.8.16, v2.8.17, v2.8.18, v2.8.19, v2.8.2, v2.8.20, v2.8.21, v2.8.22, v2.8.23, v2.8.24, v2.8.25, v2.8.26, v2.8.27, v2.8.28, v2.8.29, v2.8.3, v2.8.30, v2.8.31, v2.8.32, v2.8.33, v2.8.34, v2.8.35, v2.8.36, v2.8.37, v2.8.38, v2.8.39, v2.8.4, v2.8.40, v2.8.41, v2.8.42, v2.8.43, v2.8.44, v2.8.45, v2.8.46, v2.8.47, v2.8.48, v2.8.49, v2.8.5, v2.8.50, v2.8.52, v2.8.6, v2.8.7, v2.8.8, v2.8.9, v3.0.0, v3.0.1, v3.0.2, v3.0.3, v3.0.4, v3.0.5, v3.0.6, v3.0.7, v3.0.8, v3.0.9, v3.1.0, v3.1.1, v3.1.10, v3.1.2, v3.1.3, v3.1.4, v3.1.5, v3.1.6, v3.1.7, v3.1.8, v3.1.9, v3.2.0, v3.2.1, v3.2.10, v3.2.11, v3.2.12, v3.2.13, v3.2.14, v3.2.2, v3.2.3, v3.2.4, v3.2.5, v3.2.6, v3.2.7, v3.2.8, v3.2.9, v3.3.0, v3.3.1, v3.3.10, v3.3.11, v3.3.12, v3.3.13, v3.3.14, v3.3.15, v3.3.16, v3.3.17, v3.3.18, v3.3.2, v3.3.3, v3.3.4, v3.3.5, v3.3.6, v3.3.7, v3.3.8, v3.3.9, v3.4.0, v3.4.1, v3.4.10, v3.4.11, v3.4.12, v3.4.13, v3.4.14, v3.4.15, v3.4.16, v3.4.17, v3.4.18, v3.4.19, v3.4.2, v3.4.20, v3.4.21, v3.4.22, v3.4.23, v3.4.24, v3.4.25, v3.4.26, v3.4.27, v3.4.28, v3.4.29, v3.4.3, v3.4.30, v3.4.31, v3.4.32, v3.4.33, v3.4.34, v3.4.35, v3.4.36, v3.4.37, v3.4.38, v3.4.39, v3.4.4, v3.4.40, v3.4.5, v3.4.6, v3.4.7, v3.4.8, v3.4.9, v4.0.0, v4.0.1, v4.0.10, v4.0.11, v4.0.12, v4.0.13, v4.0.14, v4.0.15, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.0.6, v4.0.7, v4.0.8, v4.0.9, v4.1.0, v4.1.1, v4.1.10, v4.1.11, v4.1.12, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9, v4.2.0, v4.2.1, v4.2.10, v4.2.11, v4.2.12, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9, v4.3.0, v4.3.1, v4.3.10, v4.3.11, v4.3.2, v4.3.3, v4.3.4, v4.3.5, v4.3.6, v4.3.7, v4.3.8, v4.3.9, v4.4.0, v4.4.1, v4.4.2, v4.4.3, v4.4.4, v4.4.5, v4.4.6, v4.4.7, v4.4.8].
    - Can only install one of: symfony/finder[v2.7.0, v5.0.8].
    - Can only install one of: symfony/finder[v2.7.1, v5.0.8].
    - Can only install one of: symfony/finder[v2.7.10, v5.0.8].
    - Can only install one of: symfony/finder[v2.7.11, v5.0.8].

2) CÓ Btw, ảo thuật viên như tôi đã đề cập đã được áp dụng và nó có vẻ hữu ích, như trên một máy tính rất nhanh khác có internet nhanh hơn nhiều mà hoàn toàn không có mã, cài đặt mất hơn 5 lần, 518 giây, trong khi có lẽ do ảo thuật hoặc các lời khuyên khác ở đây, mất 110 giây.

composer global require hirak/prestissimo

3) CÓ Windows chạy chậm và các thư mục ảo hóa từ Windows sang Linux cũng vậy. Chạy bên ngoài thư mục chia sẻ bên trong Linux dường như tăng tốc nó lên khoảng hai lần. Mặc dù nó có thể là do bộ nhớ cache.

4) KHÔNG

    "process-timeout": 1800,

là cho mỗi quá trình đơn lẻ như kiểm tra git và dường như không giúp ích gì cả khi được đặt thành 10 giây, vì nó đã rất lớn. Nó có lẽ chỉ hữu ích khi có sự cố hoàn toàn của một số dịch vụ.

5) CÓ cài đặt với thư mục nhà cung cấp bị xóa hoặc trống = mới có vẻ nhanh hơn đáng kể (khoảng 1 phút và hơn), so với việc thêm vào tệp nhà cung cấp và các gói khác hiện có trong đó

6) CÓ vẻ chậm hơn trên Ubuntu18 apache2 không có ảnh riêng của xdebug, so với trên Debian10 php-fpm ngay cả với xdebug tại Yii2-starter-kit, vì lý do nào đó chậm hơn khoảng hai lần, cat /etc/*-releaseđể tìm ra bản phân phối Linux

7) KHÔNG php -ddefault_socket_timeout=1 /usr/local/bin/composer --verbose --profile install được đề cập ở đây dường như không giúp cập nhật chậm các phụ thuộc của trình soạn nhạc, mặc dù cờ --prefer-dist cũng như không đề cập đến giao thức IP v6 v v4 Mặc dù có thể là do bộ nhớ cache.

8) KHÔNG Cài đặt zip dường như không hữu ích, cài đặt PHP đã được cài đặt sẵn zip, nó vẫn bị phàn nàn là không ở đó cho đến khi được cài đặt dưới dạng các gói Linux nhưng nó làm cho quá trình trong một mô phỏng chậm hơn 100 giây từ 650 đến 750 giây. Điều kiện môi trường giống nhau. As there is no 'unzip' command installed zip files are being unpacked using the PHP zip extension https://stackoverflow.com/a/51208804/3419535 kiểm tra trong điều kiện không có bộ nhớ cache--no-cache

9) CÓ xóa "minimum-stability ": "dev",

10) CÓ sử dụng prefer-dist composer require robmorgan/phinx:@dev --prefer-dist -vvv --profile (ví dụ sử dụng lệnh request, như sử dụng lệnh request từng phần như đã đề cập ở trên, thay vì cài đặt đầy đủ thông qua lệnh install, dường như là một trong những cách tăng tốc đáng kể nhất, cộng với yêu cầu @ cũng như các điểm trước đó khi minimum-stability: devkhông được áp dụng chung cho tất cả các phụ thuộc dường như là vô hại khi sử dụng trên cơ sở từng trường hợp (phụ thuộc))


Điều này có liên quan như thế nào đến câu hỏi đã cho? Theo mô tả vấn đề, không có một phụ thuộc nào được liệt kê trong bài toán OP
Nico Haase

Vấn đề nên được giải quyết một cách chung chung, tôi đã cố gắng tóm tắt tất cả những gì đã giúp tôi và thêm một số giải pháp khác từ nơi khác. Yêu cầu của trình soạn nhạc về cơ bản chỉ là một phần con của cài đặt trình soạn nhạc. Chỉ vì tôi cũng đã sử dụng một từ / lệnh 'yêu cầu' trong phản hồi, không có nghĩa là nó cũng không áp dụng để cài đặt, nhưng nếu bạn muốn, tôi có thể xóa từ đó. 'Không có một phụ thuộc nào được liệt kê', nhưng nó như thế nào thay đổi bất cứ điều gì, cài đặt trình soạn nhạc không có gì khác ngoài phụ thuộc.
FantomX1

Tôi đã đi từ 1 điểm xuống -1 chỉ vài phút sau đó vì tôi đã trả lời bạn, có thể vì bạn đã bầu chọn tôi trước đó. Hãy nói với tôi rằng câu trả lời đã chọn là prestistimo hoặc sử dụng ipv 6 hoặc vô hiệu hóa xdebug không quá chung chung và không áp dụng cho lệnh yêu cầu trình soạn nhạc cụ thể. Tôi xin lỗi vì một vài chỉnh sửa vội vàng nhưng tôi cũng sử dụng nó như một wiki cá nhân, và tôi thậm chí còn không liệt kê một cái tên cụ thể, nhưng sẽ điều chỉnh nó. Nếu bạn không thích tôi đã đánh máy, hãy đề cập đến điều đó, nhưng không nói chung chung thì không có ý nghĩa. Tôi đã sử dụng lệnh 'request' làm tham chiếu, vì sử dụng 'request' là một trong những giải pháp.
FantomX1

1
OP đã hỏi tại sao Composer chậm mà không có phụ thuộc nào - ngay cả khi danh sách nội dung của bạn có thể giúp ích trong nhiều trường hợp khác, tôi không thấy có liên quan gì đến câu hỏi đã cho
Nico Haase

2
Prestissimo giúp ích ngay cả với danh sách yêu cầu trống - một số tệp được tải xuống bởi nhà soạn nhạc bất kể danh sách phụ thuộc, vì vậy tải xuống song song cũng sẽ hữu ích ở đây.
rob006


-1

Cách tốt nhất để tìm hiểu là chạy cập nhật / cài đặt trình soạn nhạc một cách chi tiết. nhà soạn nhạc {install / update} -vvv. Sử dụng cờ -h có thể giúp ích cho bạn trong tương lai


Hãy chia sẻ một lời giải thích cho điều đó. OP đang chạy các bài kiểm tra bằng cách sử dụng một danh sách phụ thuộc hoàn toàn trống
Nico Haase

-1

Trong trường hợp, Nếu bạn đã xóa tệp composer.lock của mình và sau đó xóa tệp đó composer installquá chậm để tải xuống các tệp phụ thuộc. Nếu trường hợp này xảy ra, hãy sử dụng composer updatelệnh và nó có thể giúp ích cho bạn hoặc những người khác.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.