Hotline : 07 088 44444
Thích
Chia sẻ

Time to live là gì? Cách thức hoạt động của Time to live

19/08/2021

Time to live (TTL) đề cập đến lượng thời gian hoặc “hops” mà một packet được thiết lập để tồn tại trong mạng trước khi bị router loại bỏ. Time to live cũng được sử dụng trong các trường hợp khác chẳng hạn như trong CDN caching và DNS caching.

Time to live là gì?

Time to live (TTL) là thời gian một đối tượng được lưu trữ trong hệ thống bộ nhớ đệm trước khi nó bị xóa hoặc làm mới. Trong trường hợp của CDN, Time to live thường đề cập đến bộ nhớ đệm nội dung, là quá trình lưu trữ bản sao tài nguyên trang web của bạn (ví dụ: hình ảnh, giá cả, văn bản) trên proxy CDN để cải thiện tốc độ tải trang và giảm tiêu thụ băng thông của server gốc.

Trong trường hợp này, Time to live điều chỉnh tốc độ làm mới của các bản sao này nhằm mục đích đảm bảo các phiên bản “cũ” của nội dung sẽ không được hiển thị cho khách truy cập trang web của bạn.

Time to live là gì?
Time to live là gì?

Cách thức hoạt động của TTL

cách thức hoạt động của Time to live
Cách thức hoạt động của TTL (Time to live)

Khi một packet thông tin được tạo và gửi qua Internet, có nguy cơ nó sẽ tiếp tục truyền từ router này đến router khác vô thời hạn. Để giảm thiểu khả năng này, các packet được thiết kế với giới hạn thời hạn nhất định gọi là time-to-live hoặc hop limit. Packet TTL cũng có thể hữu ích trong việc xác định thời gian một packet được lưu hành và cho phép người gửi nhận thông tin về đường dẫn của packet qua Internet.

Mỗi packet đều chứa một giá trị số, số này xác định thời gian nó sẽ tiếp tục di chuyển trong mạng. Mỗi khi một router nhận được một packet, nó sẽ trừ đi một packet trong số lượng Time to live và sau đó chuyển nó đến vị trí tiếp theo trong mạng. Nếu tại bất kỳ thời điểm nào số lượng Time to live bằng 0 sau phép trừ, router sẽ loại bỏ packet và gửi một thông báo ICMP trở lại host ban đầu.

Các network command thường được sử dụng là ping và traceroute cả hai đều sử dụng TTL. Khi sử dụng lệnh traceroute, một luồng các packet có các chuỗi TTL tuần tự ngày càng cao hơn sẽ được gửi tới đích qua Internet. Bởi vì mỗi bước dọc theo kết nối là điểm dừng cuối cùng của một trong các packet, mỗi vị trí sẽ trả về một thông báo ICMP cho người gửi sau khi loại bỏ packet. Thời gian cần thiết để tin nhắn ICMP trả lại cho người gửi sau đó được sử dụng để xác định khoảng thời gian cần thiết để một packet di chuyển thành công trên mạng.

Khi nào Time to live được sử dụng

Ngoài việc theo dõi các route packet qua Internet, time to live còn được sử dụng trong bối cảnh thông tin lưu trữ trong một khoảng thời gian nhất định. Thay vì đo thời gian theo hop giữa các router, mỗi router có thể mất một lượng thời gian khác nhau, một số trường hợp sử dụng mạng hoạt động theo kiểu truyền thống hơn.

Ví dụ như CDN của Cloudflare thường sử dụng TTL để xác định thời lượng nội dung được lưu trong bộ nhớ cache của edge server CDN trước khi một bản sao mới sẽ được tìm nạp từ server gốc. Bằng cách cài đặt chính xác khoảng thời gian giữa các lần kéo của server gốc, CDN có thể phục vụ nội dung được cập nhật mà không có yêu cầu truyền liên tục ngược trở lại server gốc. Tính năng tối ưu hóa này cho phép CDN phục vụ nội dung ở gần với người dùng hơn để đẩy nhanh tốc độ hiển thị trang và đồng thời giảm băng thông yêu cầu từ server gốc.

Trong trường hợp của DNS record, Time to live là một giá trị số xác định thời gian cache server DNS có thể phục vụ DNS record trước khi tiếp cận với DNS server có thẩm quyền và nhận bản sao mới của record.

>> Xem thêm: CloudFlare là gì?

Những cách để cài đặt Time to live hiệu quả

cài đặt time to live

TTL được cài đặt thông qua HTTP header, chẳng hạn như Cache-Control header và được đo bằng giây. Ví dụ: giá trị “Cache-Control: max-age = 30” là chỉ thị cho một tài nguyên nhất định được làm mới sau mỗi 30 giây trước khi vượt quá time to live. Ngược lại, chỉ thị “max-age = 0” chỉ ra rằng tài nguyên hoàn toàn không nên được lưu vào bộ nhớ cache.

Time to live ảnh hưởng trực tiếp đến thời gian tải trang của trang web của bạn (tức là dữ liệu được lưu trong bộ nhớ cache tải nhanh hơn), cũng như độ mới của nội dung (tức là dữ liệu được lưu trong bộ nhớ cache quá lâu có thể trở nên cũ).

Để đảm bảo rằng khách truy cập của bạn chỉ nhìn thấy phiên bản mới nhất của trang web của bạn, các TTL nên được cài đặt theo:

Loại tài nguyên

Có hai loại tài nguyên cần được xem xét khi đặt TTL trong bộ nhớ cache của bạn, đó là: tĩnh và động.

Các file tĩnh (ví dụ: file hình ảnh, PDF, v.v.) hiếm khi được cập nhật và do đó thường có TTL dài hơn. Ví dụ: nhóm hình ảnh sản phẩm của trang web thương mại điện tử thể hiện nội dung tĩnh. Bởi vì hình ảnh hiếm khi được làm mới, có thể an toàn để lưu chúng vào bộ nhớ cache trong một khoảng thời gian dài (ví dụ: ngày hoặc tuần). Điều này làm cho việc thiết lập TTL của họ có thể dự đoán được và dễ dàng duy trì.

Ngược lại, nội dung động (ví dụ: file HTML) được cập nhật liên tục, làm phức tạp việc thiết lập các TTL chính xác. Ví dụ: phần nhận xét trong một sản phẩm được xem là động, vì nó thay đổi thường xuyên. Vì bạn không có toàn quyền kiểm soát nội dung này và không thể dự đoán thời gian làm mới của nội dung, đặc biệt nếu có tùy chọn cho người dùng sửa đổi các bài đăng hiện có, thì bạn không nên lưu vào cache.

Sử dụng tài nguyên

Time to live trong bộ nhớ cache của tài nguyên cũng phải được điều chỉnh dựa trên tần suất sử dụng. Ví dụ: một trang web thương mại điện tử có thể chọn cập nhật file HTML hiển thị giá sản phẩm của họ mỗi ngày. Do đó, các trang bao gồm giá cả nên được đặt bằng TTL hết hạn vào cuối ngày, đảm bảo khách hàng chỉ xem được thông tin được cập nhật mới nhất.

Cách CDN đơn giản hóa cấu hình TTL

cấu hình Time to live
Cách CDN đơn giản hóa cấu hình TTL

Một số CDN cũng sử dụng các kỹ thuật máy học để quản lý toàn bộ thời gian của bạn để thực hiện chính sách, tự động hóa quy trình một cách hiệu quả. Điều này cho phép lưu vào bộ nhớ cache của một số nội dung động trên trang web của bạn.

Bằng cách theo dõi các tương tác của người dùng trong trang web của bạn, CDN có thể truy tìm sự khác biệt giữa các phiên bản nội dung được cung cấp cho những người dùng khác nhau. Dựa trên những khác biệt này, dịch vụ có thể xác định xem một đối tượng nhất định có thực sự là động hay chỉ được xây dựng bằng ngôn ngữ động (ví dụ: PHP), với một bản sao giống hệt nhau được cung cấp cho tất cả khách truy cập.

Việc mở rộng chính sách bộ nhớ cache của bạn để bao gồm các đối tượng động có thể có tác động đáng kể đến hiệu suất trang web. Việc này thường thúc đẩy việc sử dụng bộ nhớ cache lên 20% hoặc hơn. Hơn nữa, điều này đảm bảo rằng người dùng nhận được thông tin chính xác và cập nhật.

Nếu bạn có thắc mắc hay có vấn đề cần hỗ trợ, bạn có thể liên hệ trực tiếp với Vietnix thông qua các kênh sau:
  • Hotline: 1800 1093 - 07 088 44444
  • Email: support@vietnix.vn
  • Hoặc chat trực tiếp với Vietnix thông qua biểu tượng Livechat ở góc phải màn hình. Đội ngũ chuyên viên của chúng tôi luôn sẵn sàng tư vấn và hỗ trợ bạn 24/7.
Vietnix hiện đang có chương trình khuyến mãi lớn nhất trong năm, giảm giá TRỌN ĐỜI: Đăng ký dùng thử ngay và Vietnix sẽ hoàn tiền 100% nếu quý khách không hài lòng với chất lượng sản phẩm, dịch vụ!
Mình là Bo - admin của Quản Trị Linux. Mình đã có 10 năm làm việc trong mảng System, Network, Security và đã trải nghiệm qua các chứng chỉ như CCNP, CISSP, CISA, đặc biệt là chống tấn công DDoS. Gần đây mình trải nghiệm thêm Digital Marketing và đã hòan thành chứng chỉ CDMP của PersonVUE. Mình rất thích được chia sẻ và hỗ trợ cho mọi người, nhất là các bạn sinh viên. Hãy kết nối với mình nhé!
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments