CDN là gì ? và tìm hiểu về CDN

Trong bài viết này chúng mình cung nhau tìm hiểu về content delivery network (CDN) nó là cái gì, vậy nó có giúp website của bạn trở lên load nhanh hơn được không?

Nếu bạn sử dụng CDN đúng trường hợp của bạn thì nó sẽ giúp website của bạn tăng tốc rất đáng kể và ngược lại nếu không đúng trường hợp thì sẽ làm giảm tốc độ load website của bạn.

Trường hợp đó là gì và bạn có đang ở trong trường hợp đó không?

thì cùng nhau bắt đầu nhé.

tim-hieu-ve-cdn

content delivery network (CDN) là gì?

content delivery network  viết tắt là (CDN) gọi sang tiếng việt là dịch sang nghĩa là “mạng phân phối nội dung”  là một nhóm server đặt tại nhiều vị trái khác nhau để hỗ trợ nội dung được trải dài ở nhiều khu vực vị trí địa lý khác nhau.

Đây là lý thuyết cơ bản của CDN, nếu tìm hiểu kỹ hơn về lý thuyết của CDN bạn hãy thảm khảo tại wikipedia nói về CDN

Nguyên lý của CDNKhi không sử dụng CDN

nó sẽ cập nội dung cho một máy chủ trong hệ thống CDN đó rồi máy chủ CDN thay mặt webhost phục vụ nội dung tới người dùng.

Đối với những website không sử dụng mô hình CDN, dữ liệu sẽ được lưu trữ tại một máy chủ trung tâm và được phân phối làm mọi việc. Vì vậy, thời gian tải website phụ thuộc rất nhiều vào khả năng của máy chủ này. Trong khi đó, với website sử dụng CDN, Nghĩa là nó là một hệ thống máy chủ trên toàn cầu làm nhiệm vụ lưu bản sao của các nội dung tĩnh bên trong website, sau đó phân tán nó ra nhiều máy chủ khác (PoP của nhà cung cấp dịch vụ CDN bạn sử dụng) và từ các PoP đó nó sẽ gửi tới cho người dùng khi họ truy cập vào website. (PoP nào càng gần với người dùng sẽ ưu tiên phụ trách người gửi nội dung cho người dùng ở vị trị gần đó)

Ưu điểm của CDN

Tăng Tốc độ website

Ưu điểm CDN sẽ tăng tốc website ở điều kiện phạm vi khoảng cách xa sẽ giúp bạn cải thiện tăng tốc rất đáng kể.

bây giờ mình sẽ tính toán một chút lợi ích đem lại nhé.

Tính lợi ích khoảng cách máy chủ xa gần người dùng.

Áp dụng Vật lý học lớp 12 cơ bản.

Tính tốc độ thì ta lấy: khoảng của người dùng đến máy chủ cách quy đổi sang m chia cho tốc độ ánh sáng rồi nhân cho 1000 ( vì tốc độ ánh sáng là m/s nhưng với cái này cần quy đổi qua ms đơn giản là 1 giây bằng 1000ms, tốc độ ánh sáng là 3×10^8 m/giây)
Giả sử ví dụ luôn: mình đặt máy chủ ở Hồ Chí Minh mà người dùng truy cập tại hà nội cứ cho là khoảng cách là 1600km. Tính thời gian kết nối.
Bắt đầu tính: 1.600.000 ( đây là số m được chuyển đổi từ km qua m) : chia cho 3×10^8 kết quả bằng 0.0053 giây chuyển qua ms là 5,3 ms.

Ví dụ thứ 2: Giả sử máy chủ bạn ở nước mỹ và người dùng ở Việt nam lấy khoảng 15.000 km.
Bắt đầu tính: 15.000.000 : (3×10^8)= 0,05 giây chuyển qua ms là 50ms.
Khi đặt máy chủ ở trong nước thì chỉ có 5,3 ms đặt máy chủ ở nước mỹ là 50ms suy ra nhanh chỉ cần đặt gần khách hàng như vậy là tăng tốc được = 50ms – 5,3ms = 44,7 ms vậy là nhanh hơn 44,7 ms rồi đó.

Đó cũng chỉ là tốc độ lý thuyết thôi còn rủi ro môi trường tác động vào sẽ chêch lệnh với con số tính toán trên cao hơn phải cộng thêm kha khá đó, nhưng nếu bạn đặt máy chủ càng xa thì rủi ro giao động càng cao (đặc biệt là cá mập cắn cáp). Kinh nghiệm của mình mà sever thừ nước mỹ về việt nam tầm khoảng 200ms, còn ở trong nước thì tầm khoảng 20ms.

Giảm băng thông – cân bằng tải

Một vấn đề nhỏ dịch vụ hosting cung cấp cho bạn ít băng thông hàng tháng quá bạn không đủ để sử dụng. ( giời thị trường webhost cạnh tranh toàn cho không giới hạn hay nhiều TB dùng thoải mái luôn) đây trong trường hợp họ cho ít bạn không đủ dùng, CDN xử lý lượng lớn băng thông bằng cách chia nhỏ các điểm truy cập ra, vì vậy chi phí chính cho băng thông đến điểm truy cập chính giảm xuống.

Vấn đề lớn hơn là khi bạn sử dụng max giới hạn một máy chủ vật lý ( traffic khủng long rồi) máy chủ đó không thể phục vụ được tiếp cho bạn, thì CDN cũng là thứ giúp bạn cân bằng tải đơn giản.

Cải thiện bảo mật

Đây là một thứ rất hay khi bạn sử dụng CDN proxy ngược, họ giúp website của bạn giấu IP. để phòng bị script dò pass.

Hay nhiều CDN cao cấp luôn luôn tính hợp sẵn cung cấp các dịch vụ chống DDoS trong hệ thống của họ.

Kèm theo tính năng tăng tốc

Nhiều CDN cao cấp họ thường cung cấp thêm cho người, những tính năng giúp người dùng tăng tốc độ load website có thể là những tính năng độc quyền của bên hãng họ hay là những tính năng phổ biển nhưng bạn không biết cách tự có thể kích hoạt trong webhost của bạn.

CDN có tăng tốc độ load website không?

Câu trả lời không và có tuy từng trường hợp.

câu trả lời là có hoặc không tùy trường hợp của bạn, nhưng tôi sẽ giả thiết là cdn khoảng cách bằng với máy chủ webhost đi (lợi ích của cdn là ăn nhau ở khoảng cách địa lý phạm vi mà thứ đó là thứ quyết định như ở phần trên mình có chia sẻ về ưu điểm của CDN).

mình sẽ set theo điều kiện là cdn khoảng cách bằng với máy chủ webhost để làm ví dụ minh họa. ( giả sử máy chủ webhost của bạn ở singapore và cdn cũng đặt ở singapore)

Trong trường hợp này nó không giúp tăng tốc độ nó chỉ giúp bạn không bị chậm đi mà thôi, nó giúp webhost của bạn không bị quá tải chia sẻ công việc cho webhost khác khi trong trường hợp một máy chủ vật lý của bạn bị tối đa ram và cpu vật lý có thể có trong một máy chủ thì bắt buộc bạn phải sử dụng cân bằng tải hay cdn để giúp không khiến website của bạn chậm đi, thực tế rằng CDN hay cân bằng tải chậm hơn một máy chủ vật lý sử lý toàn bộ local.

nó giống như việc bạn không thể viết nhanh hơn khi trong tay bạn cầm 2 chiếc bút.

bản thân nguyên lý cơ bản của mạng điện tử thì unix socket luôn luôn nhanh hơn cổng port mạng 40%.

Giải thích một chút nhé khi bạn có một máy chủ websever trong đó vừa là nơi lưu trữ file cứng sử lý nó và đồng thời là nơi lưu trữ database luôn luôn nhanh hơn là một máy chủ sử lý file và một máy chủ sử lý database phải kết hợp vào với nhau còn còn rủi ro giám đoạn đường chuyền mạng, bình thường doanh nghiệp nhỏ và vừa thì chúng ta đề đang sử dụng một máy chủ kiêm luôn lưu trữ sử lý các file và đồng thời lưu trữ sử lý database luôn trong một máy chủ khi nào traffic nhiều đến mức một máy chủ vật lý không thể sử lý được hết đã giới hạn tối đa thì mới phải tách riêng ra. (khi đã có max vật lý thế này rồi traffic gọi là khủng long rồi thì không thiếu tiền thuê IT về làm việc sử lý).

Giới tăng tốc website chuyên nghiệp luôn luôn thích một máy chủ vật lý sử lý tất cả như vậy tốc độ là tốt nhất. khi đã max rồi thì lúc mới nghiên cứu về cân bằng tải, CDN, cloud sever để khả năng chịu tải…

Trong điều kiện ngang hàng vị trí bằng nhau: CDN không giúp bạn tăng tốc website bạn nhanh hơn chỉ giúp website của bạn không bị đi châm đi trong điều kiện máy chủ của bạn quá tải.

Có nên sử dụng CDN Không?

Cái đó tùy thuộc vào trường hợp và nhu cầu của bạn, thì mới có thể ra quyết định một cách chính xác được.

CDN sẽ không tăng tốc khi trường hợp:

  • Bạn chỉ kinh doanh nội địa Việt nam thôi, diện tích Việt Nam không quá rộng để cân nhắc sử dụng CDN khi bạn đã đặt máy chủ của bạn ở gần nước mình.
  • webhost của bạn đặt ở Việt Nam và đang hoạt động rất là tốt rồi.
  • Bạn có khả năng quản trị webhost thấy công nghệ này tốt bạn có thể tự cài đặt và sử dụng

CDN sẽ tăng tốc khi trong trường hợp:

  • Bạn kinh doanh phạm vi rộng kinh doanh quốc tế, hay những quốc gia có bán kinh địa lý rộng lớn.
  • Máy chủ riêng vật lý đã bị giới hạn vật lý rồi. cần CDN để cân bằng tải cũng là giải pháp hay (đã kinh doanh đến cái tầm này rồi thì không thiếu tiền thuê IT chuyên nghiệp về phát triển giúp bạn)
  • Máy chủ của bạn đang sử dụng đang đặt quá xa người dùng ví dụ, bạn kinh doanh ở Việt Nam nhưng lại đi đặt máy chủ ở Bên Mỹ.
  • Một số công nghệ kỹ thuật giúp bạn tăng tốc website bạn không biết hay không thể tự kích hoạt trên webhost bạn đang sử dụng, dùng CDN họ có thể làm sẵn cài này cho bạn.
  • webhost của bạn quá yếu hay đang bị quá tải
  • Băng thông nhà cung cấp webhost của bạn cho bạn mỗi tháng ít băng thông hàng tháng quá không đủ dùng, cdn cũng là lựa chọn cứu cánh
  • Một số công nghệ tăng tốc website nào đó không được bật sẵn trong webhost bạn không biết làm thế nào để cài đặt và sử dụng thì dùng CDN họ có thể giúp bạn
  • Không liên quan cho lắm nhưng không biết sao, khi dùng CDN mà chấm điểm các công cụ speed test là nhìn tưng bừng lắm 😁 😁

Kết Luận:

CDN có thể giúp website của bạn tăng tốc hoặc ngược lại làm giảm tốc của bạn, nó tùy thuộc vào trường hợp của bạn thì đó là mới là thứ quyết định bạn có nên sử dụng CDN hay không.

cá nhân mình WP Tăng Tốc thì hiện tại không sử dụng CDN và bạn có thể tham khảo bài viết thêm: tại sao mình ít khi chia sẻ về CDN