Adobe Magento 2.4+ vs OpenMage (Magento 1.9 오픈 소스) 성능 2021

M2는 시장에서 가장 느린 플랫폼이며 M2 성능에 대한 오해의 소지가있는 광고 캠페인과 마케팅 거짓말이 많습니다. 그러한 거짓말 중 하나는 M2가 M1보다 빠릅니다. 확인해 봅시다.

OpenMage LTS (https://github.com/OpenMage/magento-lts)는 보안 취약성 패치, 버그 수정, 성능 개선 등이 포함 된 Magento 1.9의 커뮤니티 기반 진정한 오픈 소스 포크입니다.

오늘 우리는 Adobe가 이전 Magento 버전 1.9에 비해 버려진 Zend Framework v.1 및 Knockout.JS를 기반으로 구축 된 "혁신적인"전자 상거래 플랫폼의 성능을 어떻게 개선했는지 확인할 것입니다.

M1 및 Magento 2 샘플 데이터가 포함 된 C5.xlarge 인스턴스 (3GHz Intel Xeon Platinum 8124M, 4 vCPU, 8GiB 메모리)가 있습니다. PHP 7.4. 동일한 인스턴스에 설치된 모든 Magento 스택 (PHP, MySQL, ElasticSearch, Redis, Varnish, Nginx).

이전 테스트에서는 클라우드 지원 환경을 사용했습니다. ASG, 별도의 Redis Elastic Cache 인스턴스, RDS, EFS는 M2가 확장 가능한 아키텍처가없고 더 많은 Redis 및 SQL 호출, 추가 네트워크 대기 대기 시간 오버 헤드가 있기 때문에 기본적으로 확장 아키텍처에서 끔찍한 성능을 제공하기 때문에 M2를 선호합니다. 이 테스트에서는 모든 것이 하나의 인스턴스에 있으며 Magento 2에 가장 적합한 구성입니다. Reda AWS monocore 64 CPU Graviton 2 인스턴스가 느린 이유 Magento 클라우드 킬러 :

AWS Graviton 2 ARM C6g Magento Cloud Killer 인스턴스 — 성능

테스트 도구로 Magento 스크립트에 최적화 된 K6.io 오픈 소스로드 테스트 도구를 사용합니다.

또한 TideWays Profiler를 사용하여 두 플랫폼의 실제 코드 프로파일 링을 보여줄 것입니다.

테스트 시나리오는 이전 테스트와 동일합니다.

테스트 시나리오 :

  1. 카테고리 페이지, PLP
  2. 계층화 된 탐색 필터링
  3. “셔츠”검색
  4. 제품 페이지 단순, PDP
  5. 제품 페이지 구성 가능
  6. 빈 CMS 페이지 테스트 — "Hello World!" 테스트
  7. 프론트 엔드 성능, Lighthouse

“Hello World! 성능 평가는 시스템의 동작에 대한 깊은 이해를 제공하여 전체 동작뿐만 아니라 내부 메커니즘 및 정책을 정량화합니다. 시스템이 작동하는 방식, 작동을 제한하는 이유, 시스템을 개선하기 위해 해결해야하는 문제를 설명합니다. " Richard L. Sites

프로그램과 완전한 Magento 주변 컨텍스트 를주의 깊게 관찰하면 많은 것을 배울 수 있습니다 . 심지어 HelloWorld와 같이 "사소한"경우에도 마찬가지입니다. 이 중 일부 또는 전부가 머릿속 사진에서 누락되었을 수 있습니다.

• 부트 스트랩 시간

• 시작 / 종료 시간

• 사용자 코드보다 커널 코드에서 더 많은 시간

• 다른 사람을 기다리는 직렬화; 전혀 실행되지 않음

• 캐시 간섭

사소하지 않은 Magento 컨트롤러 인 HelloWorld를 대체하면 Magento 1,2 및 서버에서의 실행에 대해 더 많이 배울 수 있습니다.

1 명의 동시 사용자로 각 테스트를 20 번 실행하고 최소, 평균, 95 % 백분위 수 및 최대 페이지 서버 측 렌더링 메트릭을 수집합니다.

Magento 2 카테고리 페이지 성능

INFO[0012] Tested URL: /collections/performance-fabrics.html  source=console
running (00m11.5s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m11.4s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 5.0 MB 439 kB/s
    data_sent..................: 2.8 kB 244 B/s
    http_req_blocked...........: min=4.43µs   med=4.84µs   avg=16.87µs  max=241.13µs p(95)=18.26µs 
    http_req_connecting........: min=0s       med=0s       avg=9.42µs   max=188.41µs p(95)=9.42µs  
    http_req_duration..........: min=336.15ms med=354.05ms avg=370.79ms max=594.44ms p(95)=449.83ms
    http_req_receiving.........: min=1.53ms   med=2.17ms   avg=3.01ms   max=10.79ms  p(95)=5.84ms  
    http_req_sending...........: min=22.52µs  med=25.21µs  avg=28.83µs  max=84.56µs  p(95)=44.09µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=334.07ms med=351.95ms avg=367.75ms max=583.62ms p(95)=447.09ms
    http_reqs..................: 20     1.741933/s
    iteration_duration.........: min=123.48µs med=552.87ms avg=519.47ms max=795.11ms p(95)=640.39ms

최소 : 334ms

med : 351ms

평균 : 367ms

최대 : 587ms

백분위 수 96 : 447ms

Magento 2 카테고리 프로파일 링

타임 라인 :

Magento 1 카테고리 페이지 성능

Tested URL: /sale.html  source=console
running (00m05.8s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.8s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 1.1 MB 193 kB/s
    data_sent..................: 2.4 kB 405 B/s
    http_req_blocked...........: min=4.45µs   med=5.09µs   avg=18.49µs  max=269.66µs p(95)=20.15µs 
    http_req_connecting........: min=0s       med=0s       avg=10.12µs  max=202.58µs p(95)=10.12µs 
    http_req_duration..........: min=86.4ms   med=89.16ms  avg=89.11ms  max=92.51ms  p(95)=91.73ms 
    http_req_receiving.........: min=1.68ms   med=1.78ms   avg=1.99ms   max=3ms      p(95)=2.8ms   
    http_req_sending...........: min=20.11µs  med=24.27µs  avg=26.72µs  max=70.61µs  p(95)=40.56µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=84.68ms  med=86.85ms  avg=87.1ms   max=90.62ms  p(95)=89.93ms 
    http_reqs..................: 20     3.421097/s
    iteration_duration.........: min=134.45µs med=289.46ms avg=263.37ms max=293.04ms p(95)=292.24ms

최소 : 84.68ms

med : 86.85ms

평균 : 87.1ms

최대 : 9.62ms

백분위 수 95 : 89.93ms

Magento 1 카테고리 페이지 프로파일 링

타임 라인 :

Magento 2 레이어 탐색 성능

M2에는 Elastic Search가 있습니다. 많은 사람들이 M2를 더 빨리 인식하고 Magento 2 성능 문제를 해결할 것이라고 생각합니다. 확인 해보자!

Tested URL: /collections/performance-fabrics.html?size=168  source=console
running (00m16.2s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m16.1s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 4.8 MB 298 kB/s
    data_sent..................: 3.0 kB 185 B/s
    http_req_blocked...........: min=4.5µs    med=5.08µs   avg=18.94µs  max=275.28µs p(95)=20.35µs 
    http_req_connecting........: min=0s       med=0s       avg=10.55µs  max=211.12µs p(95)=10.55µs 
    http_req_duration..........: min=554.32ms med=578.73ms avg=605.73ms max=753.67ms p(95)=733.79ms
    http_req_receiving.........: min=2.33ms   med=3.75ms   avg=4.72ms   max=15.28ms  p(95)=8.49ms  
    http_req_sending...........: min=21.48µs  med=24.83µs  avg=27.89µs  max=80.98µs  p(95)=38.22µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=551.84ms med=575.74ms avg=600.97ms max=738.36ms p(95)=729.49ms
    http_reqs..................: 20     1.237863/s
    iteration_duration.........: min=131.53µs med=776.99ms avg=733.08ms max=954.79ms p(95)=931.66ms

최소 : 551.84ms

med : 575.74ms

평균 : 600.97ms

최대 : 738.56ms

백분위 수 95 : 729.29ms

보시다시피 탄력적 검색을 사용하는 Magento 2는 MySQL 검색보다 느립니다.

Magento 1 레이어 탐색 필터

Tested URL: /men/new-arrivals.html?size=80  source=console
running (00m05.6s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.6s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 916 kB 162 kB/s
    data_sent..................: 2.8 kB 490 B/s
    http_req_blocked...........: min=4.9µs    med=5.41µs   avg=19.62µs  max=279.81µs p(95)=27.91µs 
    http_req_connecting........: min=0s       med=0s       avg=11.16µs  max=223.37µs p(95)=11.16µs 
    http_req_duration..........: min=75.81ms  med=80.27ms  avg=80.5ms   max=89.57ms  p(95)=89.3ms  
    http_req_receiving.........: min=1.63ms   med=1.81ms   avg=2.3ms    max=6.55ms   p(95)=3.31ms  
    http_req_sending...........: min=20.48µs  med=24.21µs  avg=28.1µs   max=83.06µs  p(95)=40.7µs  
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=73.98ms  med=78.08ms  avg=78.17ms  max=87.75ms  p(95)=82.95ms 
    http_reqs..................: 20     3.540966/s
    iteration_duration.........: min=192.39µs med=280.36ms avg=255.62ms max=290.22ms p(95)=289.51ms
    iterations.................: 20     3.540966/s
    vus........................: 1      min=1 max=1
    vus_max....................: 1      min=1 max=1

최소 : 73.98ms

med : 78.08ms

평균 : 78.17ms

최대 : 67.75ms

백분위 수 95 : 82ms

Magento 1은 똑같이 빠릅니다.

Magento 2 검색 성능

Tested URL: /catalogsearch/result/?q=shirt  source=console
running (00m10.7s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m10.6s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 2.2 MB 201 kB/s
    data_sent..................: 2.7 kB 249 B/s
    http_req_blocked...........: min=4.61µs   med=5.18µs   avg=19.08µs  max=275.19µs p(95)=22.91µs 
    http_req_connecting........: min=0s       med=0s       avg=10.87µs  max=217.57µs p(95)=10.87µs 
    http_req_duration..........: min=299.96ms med=321.33ms avg=330.51ms max=428.45ms p(95)=367.26ms
    http_req_receiving.........: min=2.59ms   med=5.06ms   avg=5.59ms   max=14.12ms  p(95)=8.35ms  
    http_req_sending...........: min=22.6µs   med=25.04µs  avg=28.03µs  max=83.85µs  p(95)=32.11µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=294.18ms med=314.65ms avg=324.88ms max=422.23ms p(95)=363.49ms
    http_reqs..................: 20     1.8725/s
    iteration_duration.........: min=137.72µs med=520.42ms avg=482.88ms max=628.99ms p(95)=564.3ms

최소 : 294.18ms

med : 314.65ms

평균 : 324.88ms

최대 : 422.23ms

백분위 수 95 : 363.49ms

Magento 1 검색 성능

Tested URL: catalogsearch/result/?q=shirt  source=console
running (00m05.7s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.6s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 1.0 MB 177 kB/s
    data_sent..................: 2.8 kB 486 B/s
    http_req_blocked...........: min=4.22µs   med=5.32µs   avg=20.14µs  max=292.68µs p(95)=28.5µs  
    http_req_connecting........: min=0s       med=0s       avg=11.37µs  max=227.52µs p(95)=11.37µs 
    http_req_duration..........: min=76.46ms  med=80.42ms  avg=81.34ms  max=93.46ms  p(95)=88.18ms 
    http_req_receiving.........: min=1.43ms   med=1.85ms   avg=2.38ms   max=8.53ms   p(95)=3.09ms  
    http_req_sending...........: min=20.53µs  med=24.23µs  avg=27.46µs  max=91.12µs  p(95)=33.37µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=74.7ms   med=78.59ms  avg=78.93ms  max=86.16ms  p(95)=84.96ms 
    http_reqs..................: 20     3.512274/s
    iteration_duration.........: min=138.06µs med=280.71ms avg=256.34ms max=294.02ms p(95)=289.05ms

최소 : 74.7ms

med : 78.59ms

평균 : 78.93ms

최대 : 86.16ms

백분위 수 95 : 84.96ms

Magento 2 제품 페이지 단순 성능, PDP

Tested URL: /didi-sport-watch.html  source=console
running (00m09.2s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m09.2s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 1.2 MB 133 kB/s
    data_sent..................: 2.5 kB 271 B/s
    http_req_blocked...........: min=4.69µs   med=5.27µs   avg=19.08µs  max=279.47µs p(95)=22.47µs 
    http_req_connecting........: min=0s       med=0s       avg=10.07µs  max=201.47µs p(95)=10.07µs 
    http_req_duration..........: min=248.29ms med=251.61ms avg=260.13ms max=408.41ms p(95)=268.09ms
    http_req_receiving.........: min=937.24µs med=1.17ms   avg=1.59ms   max=4.12ms   p(95)=3.8ms   
    http_req_sending...........: min=22.03µs  med=24.65µs  avg=28.83µs  max=94.81µs  p(95)=33.45µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=247.29ms med=250.14ms avg=258.51ms max=407.23ms p(95)=266.33ms
    http_reqs..................: 20     2.165153/s
    iteration_duration.........: min=121.41µs med=451.88ms avg=418.87ms max=608.98ms p(95)=461.11ms

최소 : 247.29ms

med : 250.14ms

평균 : 258.51ms

최대 : 407.23ms

백분위 수 95 : 266.33ms

Magento 2 제품 페이지 프로파일 링

제품 프로파일 링 타임 라인

Magento 1 제품 페이지 단순 성능, PDP

Tested URL: /accessories/jewelry/swing-time-earrings.html  source=console
running (00m05.5s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.5s/10m0s  20/20 shared iters
█ teardown
█ setup
data_received..............: 596 kB 109 kB/s
    data_sent..................: 3.1 kB 559 B/s
    http_req_blocked...........: min=4.29µs   med=4.97µs   avg=18.73µs  max=277.13µs p(95)=20.98µs 
    http_req_connecting........: min=0s       med=0s       avg=10.97µs  max=219.57µs p(95)=10.97µs 
    http_req_duration..........: min=68.23ms  med=71.41ms  avg=71.94ms  max=82.54ms  p(95)=76.4ms  
    http_req_receiving.........: min=105.36µs med=136.39µs avg=147.06µs max=283.22µs p(95)=212.9µs 
    http_req_sending...........: min=20.91µs  med=24.75µs  avg=26.95µs  max=74.27µs  p(95)=31.2µs  
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=68.08ms  med=71.24ms  avg=71.77ms  max=82.33ms  p(95)=76.23ms 
    http_reqs..................: 20     3.64619/s
    iteration_duration.........: min=129.95µs med=271.48ms avg=247.8ms  max=283.53ms p(95)=276.53ms

최소 : 68.08ms

med : 71.24ms

평균 : 71.77ms

최대 : 82.33ms

백분위 수 95 : 76.23ms

Magento 1 제품 페이지 프로파일 링

타임 라인 :

Magento 2 제품 페이지
구성 가능한 성능, PDP

Tested URL: /breathe-easy-tank.html  source=console
running (00m10.1s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m10.1s/10m0s  20/20 shared iters
█ teardown
█ setup
data_received..............: 2.0 MB 199 kB/s
    data_sent..................: 2.5 kB 250 B/s
    http_req_blocked...........: min=4.4µs    med=5.32µs   avg=18.57µs  max=266.56µs p(95)=20.65µs 
    http_req_connecting........: min=0s       med=0s       avg=9.81µs   max=196.39µs p(95)=9.81µs  
    http_req_duration..........: min=288.19ms med=291.82ms avg=303.09ms max=407.24ms p(95)=401.23ms
    http_req_receiving.........: min=1.03ms   med=1.25ms   avg=1.8ms    max=4.59ms   p(95)=4.15ms  
    http_req_sending...........: min=16.37µs  med=24.51µs  avg=28.34µs  max=105.38µs p(95)=31.16µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=286.83ms med=290.38ms avg=301.26ms max=404.98ms p(95)=399.89ms
    http_reqs..................: 20     1.977375/s
    iteration_duration.........: min=125.08µs med=491.78ms avg=457.91ms max=608.37ms p(95)=596.23ms
    iterations.................: 20     1.977375/s

최소 : 286.83ms

med : 290.38ms

평균 : 301.26ms

최대 : 404.98ms

백분위 수 95 : 399.89ms

흥미로운 것은 404ms가 최대 시간입니다. 가격 캐시가 생성되지 않은 최초의 제품 부하입니다. 따라서 Magento의 프로덕션 및 실시간 페이지 생성에서는 더욱 악화됩니다.

Magento 1 제품 페이지
구성 가능한 성능, PDP

Tested URL: /men/shirts/plaid-cotton-shirt-476.html  source=console
running (00m05.9s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.9s/10m0s  20/20 shared iters
█ teardown
█ setup
data_received..............: 977 kB 166 kB/s
    data_sent..................: 3.0 kB 502 B/s
    http_req_blocked...........: min=4.17µs   med=5.03µs   avg=18.47µs  max=272.98µs p(95)=19.21µs 
    http_req_connecting........: min=0s       med=0s       avg=10.71µs  max=214.25µs p(95)=10.71µs 
    http_req_duration..........: min=87.32ms  med=91.04ms  avg=92.01ms  max=100.35ms p(95)=98.23ms 
    http_req_receiving.........: min=1.6ms    med=1.82ms   avg=2.11ms   max=3.15ms   p(95)=3.08ms  
    http_req_sending...........: min=21.88µs  med=24.44µs  avg=27µs     max=77.61µs  p(95)=29.31µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=85.58ms  med=88.93ms  avg=89.87ms  max=98.42ms  p(95)=95.44ms 
    http_reqs..................: 20     3.404569/s
    iteration_duration.........: min=128.86µs med=291.26ms avg=266.04ms max=301.31ms p(95)=298.75ms
    iterations.................: 20     3.404569/s

최소 : 85.58ms

med : 88.93ms

평균 : 89.87ms

최대 : 98.42ms

백분위 수 95 : 95.44ms

Magento 2 CMS 페이지 Hello World TEST

별도의 Hellow World 페이지를 만들 시간이 없습니다. 기본 고객 서비스 텍스트를 사용합니다. 기본적으로 무거운 전자 상거래 기능이없는 단순한 CMS 페이지입니다.

Tested URL: /customer-service  source=console
running (00m07.3s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m07.3s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 712 kB 97 kB/s
    data_sent..................: 2.4 kB 328 B/s
    http_req_blocked...........: min=4.58µs   med=5.28µs   avg=19.09µs  max=279.85µs p(95)=20.35µs 
    http_req_connecting........: min=0s       med=0s       avg=10.1µs   max=202.11µs p(95)=10.1µs  
    http_req_duration..........: min=157.49ms med=159.28ms avg=164.45ms max=261.55ms p(95)=167.27ms
    http_req_receiving.........: min=682.58µs med=829.21µs avg=1ms      max=2.44ms   p(95)=1.92ms  
    http_req_sending...........: min=22.41µs  med=24.03µs  avg=28.26µs  max=89.67µs  p(95)=43.27µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=156.45ms med=158.28ms avg=163.41ms max=260.65ms p(95)=165.39ms
    http_reqs..................: 20     2.727626/s
    iteration_duration.........: min=132.59µs med=359.65ms avg=331.88ms max=462.15ms p(95)=362.75ms

최소 : 156.45ms

med : 158.28ms

평균 : 163.41ms

최대 : 260.65ms

백분위 수 95 : 165.39ms

Magento 1 CMS 페이지 Hello World TEST

Tested URL: /customer-service/  source=console
running (00m04.6s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m04.6s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 508 kB 111 kB/s
    data_sent..................: 2.5 kB 550 B/s
    http_req_blocked...........: min=4.1µs    med=4.62µs   avg=19.4µs   max=294.12µs p(95)=22.42µs 
    http_req_connecting........: min=0s       med=0s       avg=11.75µs  max=235.08µs p(95)=11.75µs 
    http_req_duration..........: min=25.51ms  med=26.4ms   avg=26.8ms   max=35.02ms  p(95)=28.29ms 
    http_req_receiving.........: min=104.98µs med=122.53µs avg=126.24µs max=150.45µs p(95)=149.98µs
    http_req_sending...........: min=21.74µs  med=23.58µs  avg=26.72µs  max=72.4µs   p(95)=37.77µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=25.36ms  med=26.26ms  avg=26.65ms  max=34.8ms   p(95)=28.13ms 
    http_reqs..................: 20     4.35159/s
    iteration_duration.........: min=120.2µs  med=226.85ms avg=206.71ms max=235.96ms p(95)=228.41ms

최소 : 25.36ms

med : 26.26ms

평균 : 26.65ms

최대 : 34.8ms

백분위 수 95 : 28.13ms

보시다시피 Magento 2 자전거는 M1보다 6 배 느립니다!

Magento 1 Rest API 성능

Tested URL: /api/rest/products  source=console
running (00m04.2s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m04.2s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 4.1 kB 976 B/s
    data_sent..................: 2.5 kB 596 B/s
    http_req_blocked...........: min=4.3µs    med=4.98µs   avg=18.99µs  max=282.93µs p(95)=20.66µs 
    http_req_connecting........: min=0s       med=0s       avg=11.25µs  max=225.17µs p(95)=11.25µs 
    http_req_duration..........: min=8.87ms   med=8.98ms   avg=9.27ms   max=14.86ms  p(95)=9.42ms  
    http_req_receiving.........: min=62.18µs  med=71.55µs  avg=74.21µs  max=95.97µs  p(95)=93.43µs 
    http_req_sending...........: min=17.78µs  med=24.8µs   avg=28.45µs  max=83.22µs  p(95)=43.97µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=8.77ms   med=8.87ms   avg=9.17ms   max=14.68ms  p(95)=9.32ms  
    http_reqs..................: 20     4.719071/s
    iteration_duration.........: min=127.86µs med=209.53ms avg=190.79ms max=215.93ms p(95)=209.67ms

최소 : 8.77ms

med : 8.87ms

평균 : 9.17ms

최대 : 14.68ms

백분위 수 95 : 9.32ms

Magento 2 Rest API 성능

Tested URL: /rest/default/V1/products  source=console
running (00m05.5s), 0/1 VUs, 20 complete and 0 interrupted iterations
default ✓ [======================================] 1 VUs  00m05.5s/10m0s  20/20 shared iters
█ setup
█ teardown
data_received..............: 11 kB  2.1 kB/s
    data_sent..................: 2.6 kB 466 B/s
    http_req_blocked...........: min=4.6µs    med=5.23µs   avg=18.26µs  max=261.08µs p(95)=19.86µs 
    http_req_connecting........: min=0s       med=0s       avg=10.21µs  max=204.24µs p(95)=10.21µs 
    http_req_duration..........: min=71.31ms  med=73.16ms  avg=73.64ms  max=84.71ms  p(95)=75.43ms 
    http_req_receiving.........: min=69.61µs  med=81.48µs  avg=80.8µs   max=98.23µs  p(95)=94.85µs 
    http_req_sending...........: min=22.26µs  med=24.36µs  avg=28.21µs  max=80.57µs  p(95)=41.73µs 
    http_req_tls_handshaking...: min=0s       med=0s       avg=0s       max=0s       p(95)=0s      
    http_req_waiting...........: min=71.2ms   med=73.05ms  avg=73.53ms  max=84.54ms  p(95)=75.31ms 
    http_reqs..................: 20     3.629461/s
    iteration_duration.........: min=124.28µs med=273.55ms avg=249.38ms max=285.87ms p(95)=275.51ms

최소 : 71.2ms

med : 73.05ms

평균 : 73.53ms

최대 : 84.54ms

백분위 수 95 : 75.31ms

Magento 2 Frontend 성능, Lighthouse

성능 향상을 위해 Magento JS 번들링이 비활성화되었습니다.

변하기 쉬운:

결과 : 36

데스크탑 :

결과 : 69

Magento 1 Frontend 성능, Lighthouse

변하기 쉬운:

결과 : 100

데스크탑 :

결과 : 100

댓글이 없습니다. Magento 2는 백엔드와 UI 프런트 엔드 성능을 손상 시켰습니다. 이것이 바로 Magento 직원들이 핵심 구성 요소를 사용하지 않고 사용자 지정 솔루션을 구축하기로 선택한 이유입니다.

그러한 프로젝트의 예 :

성능 피벗 테이블

+----------------------+-------------+-------------+
|                      | Magento 2.4 | Magento 1.9 |
+----------------------+-------------+-------------+
| Simple Product       |      266.33 |       76.23 |
+----------------------+-------------+-------------+
| Configurable Product |      399.89 |       95.44 |
+----------------------+-------------+-------------+
| Category             |         447 |       89.93 |
+----------------------+-------------+-------------+
| CMS Page             |      165.39 |       28.13 |
+----------------------+-------------+-------------+
| Filter Products      |      729.29 |          82 |
+----------------------+-------------+-------------+
| Search               |      363.49 |       84.96 |
+----------------------+-------------+-------------+
| Rest API             |       75.31 |        9.32 |
+----------------------+-------------+-------------+

      
Magento 2 .4 vs Magento 1 Performance Chart

어윙 호프만 (https://www.linkedin.com/in/erwinhofman/ — M1에서 M2 로의 마이그레이션 성능에 대한이 사용 사례를 공유 한 2004 년 이후 📱🖥️ 웹 바이탈 스 랭킹 업데이트를 준비한 이후 매장 + 팀이 페이지 속도 (3G-5G)를 개선하도록 지원합니다.

참고 : 사용자 지정이없는 핵심 성능 테스트 일뿐입니다. 사용자 지정 및 기타 문제 이후 : 확장, Magento Cloud 호스팅, 1 자 사용자 지정, 비 낙관적 세션 잠금, + AJAX 요청, 크론 보유 및 중단, 인덱서, 비동기 작업 등 Magento 2 성능은 훨씬 더 나빠질 것입니다.

M2.3 v M1.9 성능에 대한 내 이전 게시물 :

Suggested posts

궁극의 DTC 마켓 플레이스 구축

The Fascination의 공동 창립자 인 Matthew Hayes가 미디어와 전자 상거래의 교차점에서 시장을 구축하는 방법에 대해 설명합니다.

궁극의 DTC 마켓 플레이스 구축

매일 새로운 DTC 브랜드가 론칭되는 것 같다면 사실이기 때문이다. 모든 산업, 모든 업종, 모든 채널에서 다음 "큰 것"이 관심, 클릭 및 현금을 놓고 경쟁하는 것입니다.

국회 의사당 폭동 체포 데이터 시각화

Python 및 PHP로 공개 데이터 이해하기

국회 의사당 폭동 체포 데이터 시각화

고향에서 국회 의사당 폭도들이 체포되었다는 소식을 들었을 때 나는 법치가 주재 할 것이라는 점을 안도했습니다. 우리는 너무 오래 갔다.

Related posts

"실용적인 프로그래머"의 5 가지 필수 사항

역대 베스트셀러 코딩 북의 요점

"실용적인 프로그래머"의 5 가지 필수 사항

Pragmatic Programmer는 1999 년에 처음 출판되었으며 이후 역대 최고의 프로그래밍 책으로 선정되었습니다. 저자 Andy Hunt와 David Thomas는 Agile Manifesto의 원저자 중 하나였으며 몇 가지 심각한 자격을 가지고 있습니다.

대규모 GraphQL 쿼리 공격으로부터 보호

공격자가 공개적으로 사용 가능한 GraphQL 인터페이스를 사용하여 사이트를 스크랩하거나 서비스 거부 공격을 실행하는 방법에 대해 알아보십시오. 이들은 4 가지 방법 중 하나로이를 수행 할 수 있습니다. 단일 대형 쿼리를 신중하게 구성하여 실행하고, 관련 데이터를 가져올 수있는 병렬 쿼리를 많이 작성하고, 일괄 요청을 사용하여 많은 쿼리를 연속적으로 실행하고, 마지막으로 많은 요청을 보냅니다.

기술 인터뷰의 사회적 구성 요소

코딩 문제는 스트레스가 많지만 스트레스에 대한 당신의 반응은 당신의 기술적 능력보다 더 크게 말합니다.

기술 인터뷰의 사회적 구성 요소

기술 업계의 직책을 위해 인터뷰 할 때 일반적으로 제안을 고려하기 전에 최소한 3 차례의 인터뷰를 거치게됩니다. 라운드는 일반적으로 다음과 같습니다. 그렇게 생각하면 잘못된 것입니다.

훌륭한 개발자의 3 가지 행동 특성

훌륭한 개발자의 3 가지 행동 특성

훌륭한 개발자를 만드는 비 기술적 인 것들 나는이 기사를 작성하는 것을 한동안 미루고 있습니다. 나는 그것을 작성할 자격이 있다고 생각하지 못했습니다. 오늘은 쓸 때라고 생각했습니다.