Đo tốc độ của trang web bằng cURL từ thiết bị đầu cuối Ubuntu

về đo tốc độ của một trang web bằng cURL

Trong phần tiếp theo, chúng ta sẽ xem xét cách chúng ta có thể đo thời gian phản hồi của một trang web từ thiết bị đầu cuối bằng cách sử dụng cURL. Điều này thật thú vị để biết, vì nó có thể có tác động lớn đến trải nghiệm người dùng.

Cho dù bạn là nhà phát triển web hay bạn quản lý một máy chủ, bạn sẽ biết rằng tốc độ nó là thứ luôn phải sẵn sàng. Điều quan trọng là mọi thứ hoạt động chính xác để người dùng không cảm thấy bực bội khi truy cập trang web của bạn.

Tiếp theo, chúng ta sẽ xem một số lệnh để có thể đo thời gian phản hồi của một trang web. Với họ, chúng tôi sẽ có thể kiểm tra thời gian tính bằng giây của các trường khác nhau của cả trang http và https. Chúng tôi sẽ thực hiện mọi thứ từ dòng lệnh Ubuntu bằng cURL,

Sử dụng cURL để đo tốc độ tải

Từ các trang web có HTTP

kiểm soát tốc độ của web http

cURL có sẵn nhiều tùy chọn, trong số đó chúng ta có thể tìm thấy -w, điều này sẽ hữu ích cho in thông tin ra đầu ra tiêu chuẩn sau khi một hoạt động hoàn thành. Nó cũng cung cấp cho chúng tôi một số các biến mà chúng tôi có thể sử dụng để kiểm tra các thời gian phản hồi khác nhau của một trang web.

Để đạt được phép đo này, chúng tôi sẽ sử dụng một số biến có thể tìm thấy trong tài liệu chính thức của cURL. Chúng có thể được chuyển theo một định dạng nhất định dưới dạng một chuỗi ký tự hoặc trong một tệp.

Các biến mà chúng tôi sẽ sử dụng sẽ như sau:

  • time_namelookup → Thời gian tính bằng giây. Được lấy từ khi bắt đầu cho đến khi việc phân giải tên hoàn tất.
  • thời gian_kết nối → Thời gian tính bằng giây. Từ khi khởi động đến khi hoàn thành kết nối TCP tới máy chủ từ xa hoặc proxy.
  • thời gian_pretransfer → Thời gian tính bằng giây từ đầu cho đến khi quá trình chuyển tệp sắp bắt đầu. Điều này bao gồm tất cả các lệnh và thương lượng trước khi chuyển giao cụ thể cho các giao thức liên quan.
  • time_starttransfer → Thời gian tính bằng giây từ đầu cho đến khi byte đầu tiên sắp được chuyển. Điều này bao gồm time_pretransfer và cả thời gian để máy chủ tính toán kết quả.
  • thời gian_tổng cộngTổng thời gian tính bằng giây mà toàn bộ hoạt động kéo dài. Nó được giải quyết trong mili giây.

đến thực hiện lệnh mà chúng ta sẽ gắn kết với các biến trước đó, chúng tôi sẽ chỉ phải mở một thiết bị đầu cuối (Ctrl + Alt + T) và viết:

curl -s -w '\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null http://www.google.com

Vì điều này có thể trở nên hơi rườm rà để ghi nó vào một thiết bị đầu cuối mỗi khi chúng ta muốn sử dụng nó, chúng ta có thể chọn ghi nó vào một tệp.

Bên trong tệp, mà tôi sẽ đặt tên cho control-speed-web.txt, bạn phải dán mã sau:

\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n

Sau khi lưu và quay lại thiết bị đầu cuối, chúng tôi có thể sử dụng tệp này bằng cách gõ cú pháp sau:

curl -s -w "@control-velocidad-web.txt" -o /dev/null http://www.google.com

Lệnh trên sẽ hoạt động trên chế độ im lặng nhờ -s. Với -w in thông tin trong tiêu chuẩn. Đối với chuyển hướng đầu ra đến / dev / null, hãy sử dụng -o.

Từ các trang web có HTTPS

đo tốc độ của web https

Nếu chúng tôi quan tâm đến việc sử dụng thử nghiệm này cho các trang web HTTPS, chúng tôi có thể thực hiện lệnh trong thiết bị đầu cuối (Ctrl + Alt + T):

curl -s -w '\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nAppConnect Time:\t\t%{time_appconnect}\nRedirect Time:\t\t%{time_redirect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n' -o /dev/null https://ubunlog.com

Trong định dạng này, nhiều biến thời gian hơn được sử dụng ngoài các biến trên. Và đây là:

  • time_appconnect → Thời gian tính bằng giây từ đầu cho đến khi hoàn tất kết nối SSL / SSH / etc với máy chủ từ xa.
  • time_redirect → Thời gian tính bằng giây, mất tất cả các bước chuyển hướng trước khi giao dịch cuối cùng bắt đầu. Tính tổng thời gian thực hiện cho nhiều lần chuyển hướng.

Như trong trường hợp trước, nó cũng có thể được ghi vào một tệp. Như trong trường hợp trước, tôi sẽ gọi control-speed-web.txtvà bên trong bạn sẽ phải dán:

\nTiempo de respuesta para: %{url_effective}\n\nLookup Time:\t\t%{time_namelookup}\nConnect Time:\t\t%{time_connect}\nAppConnect Time:\t\t%{time_appconnect}\nRedirect Time:\t\t%{time_redirect}\nPre-transfer Time:\t%{time_pretransfer}\nStart-transfer Time:\t%{time_starttransfer}\n\nTotal Time:\t\t%{time_total}\n

Đã lưu tệp và quay lại thiết bị đầu cuối, chúng tôi có thể sử dụng nó với cú pháp:

curl -s -w "@control-velocidad-web.txt" -o /dev/null https://ubunlog.com

Để biết thêm thông tin, bạn có thể tham khảo ý kiến tài liệu cUrl hoặc trang người đàn ông:

man curl

Como giá trị thời gian phản hồi sẽ thay đổi do các yếu tố khác nhau, nên thực hiện các thử nghiệm khác nhau và thiết lập tốc độ trung bình. Một điều mà chúng ta cũng sẽ thấy là việc truy cập một trang web thông qua HTTP thường nhanh hơn nhiều so với việc truy cập thông qua HTTPS.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.