Latency là một yếu tố rất quan trọng, có ảnh hưởng đáng đến với các công ty dịch vụ. Vậy cụ thể hơn, Latency là gì? Vì sao lại có latency? Cùng tôi tìm hiểu ngay trong bài viết này!
Latency là gì?
Độ trễ (latency) là thời gian trôi qua giữa một hành động của user đến khi kết quả được phản hồi. Network latency đề cập cụ thể đến độ trễ diễn ra trong mạng hoặc trên Internet. Mặc dù dữ liệu trên Internet truyền đi với tốc độ ánh sáng, ảnh hưởng của khoảng cách và độ trễ lại do thiết bị hạ tầng Internet gây ra. Do đó, latency không bao giờ có thể được loại bỏ hoàn toàn. Tuy nhiên, nó có thể và nên được giảm thiểu. Độ trễ cao làm giảm hiệu suất trang web, ảnh hưởng SEO. Thậm chí có thể khiến user rời khỏi trang web hoặc ứng dụng ngay lập tức.
Nguyên nhân gây ra Latency
Khoảng cách
Cụ thể là khoảng cách giữa các thiết bị khách thực hiện yêu cầu và server phản hồi lại các yêu cầu đó. Nếu một trang web được lưu trữ trong một trung tâm dữ liệu ở Columbus, Ohio, nó sẽ phản ứng khá nhanh chóng các yêu cầu từ users ở Cincinnati (đi khoảng 100 dặm). Có thể nhiều khả năng là trong vòng 10-15 mili giây. Mặt khác, users ở Los Angeles (khoảng 2.200 dặm) sẽ phải đối mặt với sự chậm trễ lâu hơn, gần 50 mili giây.
Việc tăng thêm vài mili giây có vẻ không nhiều, nhưng điều này được kết hợp bởi tất cả các giao tiếp back-and-forth cần thiết để máy khách và server thiết lập kết nối. Chẳng hạn như tổng kích thước và thời gian tải của trang cũng như bất kỳ sự cố nào với thiết bị mạng mà dữ liệu được truyền qua đường đi. Khoảng thời gian cần thiết để phản hồi đến thiết bị khách sau khi có yêu cầu của khách được biết là thời gian khứ hồi (round trip time).
Dữ liệu truyền qua Internet thường không chỉ phải trải qua một, mà là nhiều mạng. Càng nhiều mạng mà phản hồi HTTP cần đi qua, thì càng có nhiều cơ hội xảy ra chậm trễ. Chẳng hạn, khi các gói dữ liệu đi qua các mạng, chúng sẽ đi qua Internet Exchange Points (IXP). Ở đó, các router phải xử lý và định tuyến các gói dữ liệu. Và đôi khi các router có thể cần chia chúng thành các gói nhỏ hơn, việc xử lý các gói nãy sẽ thêm vài mili giây vào RTT.
Cách mà các trang web được xây dựng
Các trang web có nhiều nội dung nặng hoặc load nội dung từ nhiều bên thứ ba có thể gây ra tình trạng chậm chạp. Vì trình duyệt (browsers) phải tải xuống các tệp lớn để hiển thị chúng. User có thể ở ngay bên cạnh trung tâm dữ liệu lưu trữ trang web mà họ đang truy cập. Nhưng chẳng hạn trang web có nhiều hình ảnh độ nét cao high-definition . Khi đó vẫn có thể có một số latency khi tải hình ảnh.
Cách khắc phục Latency
Từ phía server
Sử dụng CDN (content delivery network) là một bước quan trọng để giảm latency. CDN lưu trữ nội dung tĩnh để giảm đáng kể RTT. CDN servers được phân phối ở nhiều vị trí để nội dung được lưu trữ gần hơn với những user cuối. Đồng thời cũng không cần phải di chuyển xa để tiếp cận họ. Điều này có nghĩa là tải một trang web sẽ mất ít thời gian hơn, từ đó cải thiện tốc độ và hiệu suất của trang web.
Các nhà phát triển web cũng có thể giảm thiểu số lượng tài nguyên render-blocking (ví dụ: tải JavaScript last). Tối ưu hóa hình ảnh để tải nhanh hơn và giảm kích thước file nếu có thể. Rút gọn mã (code minification) là một cách để giảm kích thước của các file JavaScript và CSS.
Ngoài ra, latency cũng có thể được giảm bằng cách sắp xếp asset sẽ được load trước. Một trang web có thể được cấu hình sẵn để tải khu vực above-the-fold của trang trước để user có thể bắt đầu tương tác với trang ngay cả trước khi nó tải xong (above-the-fold đề cập đến những gì xuất hiện trong cửa sổ trình duyệt browser window trước khi user ẩn xuống).
Các trang web cũng có thể chỉ tải nội dung khi cần thiết, sử dụng một kỹ thuật được gọi là tải chậm (lazy loading). Những cách tiếp cận này không thực sự cải thiện latency của mạng, nhưng chúng cải thiện nhận thức của user về tốc độ trang.
Từ phía user
Đôi khi, latency là do sự cố từ phía user chứ không phải phía server. Khách hàng luôn có tùy chọn mua thêm bandwidth nếu latency là một vấn đề quan tâm. Mặc dù bandwidth không đảm bảo cho hiệu suất của trang web. Chuyển sang Ethernet thay vì WiFi thì kết nối internet sẽ ổn định hơn. User cũng nên đảm bảo thiết bị internet của họ được cập nhật bằng cách nâng cấp các bản cập nhật thường xuyên hoặc thay thế toàn bộ thiết bị khi cần thiết.
Network latency, throughput và bandwidth
Latency, bandwidth và throughput đều có mối quan hệ với nhau, mặc dù chúng đều đo lường những thứ khác nhau. Băng thông (bandwidth) là lượng dữ liệu tối đa có thể truyền qua mạng tại bất kỳ thời điểm nào. Thông lượng là lượng dữ liệu trung bình thực tế đi qua trong khoảng thời gian nhất định. Throughput không nhất thiết phải tương đương với bandwidth, bởi vì nó bị ảnh hưởng bởi latency. Latency là thước đo thời gian, không phải lượng dữ liệu được tải xuống theo thời gian.
Câu hỏi thường gặp
Liệu việc sử dụng các ứng dụng thực tế ảo (VR) và thực tế tăng cường (AR) trong tương lai có bị ảnh hưởng bởi độ trễ mạng (latency) không?
Việc sử dụng các ứng dụng thực tế ảo (VR) và thực tế tăng cường (AR) trong tương lai chắc chắn sẽ bị ảnh hưởng bởi độ trễ mạng (latency). Lý do là vì:
– Yêu cầu về độ trễ thấp.
– Tăng dung lượng dữ liệu.
– Phát triển của VR và AR.
Độ trễ mạng (latency) có ảnh hưởng đến các giao dịch thương mại điện tử như thế nào?
Độ trễ mạng (latency) có thể ảnh hưởng đến các giao dịch thương mại điện tử ở Việt Nam theo nhiều cách sau:
– Tốc độ tải trang web.
– Quy trình thanh toán.
– Trải nghiệm người dùng.
– Tỷ lệ chuyển đổi.
– Cạnh tranh.
Khi xem video trực tuyến, đôi khi xuất hiện tình trạng load buffer chờ đợi. Liệu điều này có liên quan đến latency không?
Đúng vậy, latency (độ trễ) đóng vai trò quan trọng trong việc gây ra tình trạng load buffer (chờ đợi) khi xem video trực tuyến. Khi bạn xem video trực tuyến, video được truyền tải từ máy chủ đến thiết bị của bạn qua mạng internet. Quá trình này bao gồm nhiều bước, mỗi bước đều có thể dẫn đến độ trễ.
Lời kết
Hy vọng bài viết trên đã giúp bạn có cái nhìn tổng quan về Latency, cũng như cách khắc phục khi gặp phải tình trạng này. Nếu có bất kỳ thắc mắc nào hãy để lại bình luận ngay bên dưới, tôi sẽ giải đáp nhanh nhất!