Tăng tốc độ upload lên S3 bucket bằng Transfer Acceleration

Share and Enjoy !

Shares

Mở đầu

Transfer Acceleration là một tính năng được AWS trang bị trên S3 nhằm tăng tốc độ truyền dữ liệu từ client (web browser, mobile app,..) ở nhiều khu vực khác  nhau đến S3 bucket trung tâm. Bằng cách tận dụng mạng lưới EDGE  đang được phân bổ toàn cầu của dịch vụ CDN CloudFront, Transfer Acceleration giúp dữ liệu được truyền qua edge gần với client nhất (về mặt khoảng cách địa lý), qua đó giảm đáng kể thời gian tương tác giữa người dùng cuối S3 bucket trung tâm.

Vì vậy, S3 Transfer Acceleration được sử dụng nhiều nhất trong các trường hợp sau:

  • Khách hàng sở hữu ứng dụng web và mobile có user trên khắp thế giới thường xuyên upload, download dữ liệu đến và đi khỏi S3 bucket tập trung.
  • Doanh nghiệp có văn phòng phân bổ trên khắp thế giới và file, nội dung, hình ảnh từ các chi nhánh này cần truyền về S3 bucket trung tâm.

Trong nội dung bài lab hôm này, mình sẽ hướng dẫn bật Transfer Acceleration trên S3 bucket và so sánh tốc độ truyền dữ liệu của nó so với cách upload thông thường.

Lab steps

Task 1: Tạo S3 bucket và upload object theo cách thông thường

1. Truy cập Storage >> S3 từ menu Services

2. Tại giao diện của S3, nhấn chọn Create bucket và điền lần lượt vào các trường sau cho bucket details.

  • Bucket name: đặt tên cho bucket (S3 bucket name mang tính định danh trên tất cả các region của AWS nên phải duy nhất và không trùng lặp).
  • Region: Lần này chúng ta sẽ chọn Virginia (us-east-1) nhằm mục đích test tốc độ truyền dữ liệu cho phần sau.
  • Object ownership: Chọn ACLs disabled

Những phần khác giữ nguyên như mặc đinh và nhấn Create bucket.

3. Sau khi quá trình taọ bucket hoàn tất, hệ thống sẽ tự động chuyển đến giao diện chứa danh sách tất cả các bucket đang có trong tài khoản AWS của bạn.

Task 2: Upload object lên S3 Bucket

Trong phần này, để có thể xem trực quan được tốc độ và thời gian upload một file lên bucket, mình sẽ không thao tác qua Web Console như các lab trước, mà sẽ sử dụng công cụ AWS CLI (anh em có thể xem lại bài cách cài đặt và cấu hình AWS CLI).

1. Upload một file lên bucket bằng lệnh sau:

aws s3 cp <file-path> s3://<bucket-name>

Ví dụ mình copy file 512MB.zip từ máy tính lên bucket hiepsharing-saa-b-1: aws s3 cp 512MB.zip s3://hiepsharing-saa-b-11

Ở đây ta thấy tốc độ upload trung bình từ máy tính của mình lên bucket ở region Virginia tầm 2.0 MiB/s.

Task 2: Bật Transfer Acceleration trên bucket

1. Ngay tại giao diện chứa danh sách bucket, nhấn chọn vào bucket name hiepsharing-saa-b-11, chuyển sang tab Properties

2. Cuộn chuột xuống cuối trang, tìm mục Transfer acceleration và nhấn Edit

3. Tại giao diện mới mở ra, chọn giá trị Enable và nhấn Save changes.

4. Sau khi bật Transfer Acceleration thành công, anh em để ý thấy giá trị Accelerated endpoint có cấu trúc:

<bucket name>.s3-accelerate.amazonaws.com

Đây cũng chính URL endpoint mới mà chúng ta có thể dùng để tương tác với S3 bucket.

Task 3: Kiểm tra hoạt động của Transfer Acceleration

Sau khi đã bật Transfer Acceleration trên S3 bucket, bây giờ thử upload object cùng dung lượng xem tốc độ có khác gì không. Anh em có thể dùng lệnh sau:

aws s3 cp <file name> s3://<bucket name> --region <region id> --endpoint-url https://s3-accelerate.amazonaws.com

Rõ ràng với file có cùng dung lượng 512 MB nhưng tốc độ upload bây giờ tầm 9 MiB/s, tức là tăng lên hơn 4 lần so với cách upload trực tiếp thông thường.

Lời kết

Như vậy là mình đã hoàn thành bài lab hướng dẫn kích hoạt và kiểm tra tốc độ truyền dữ liệu lên S3 bucket  với Transfer Acceleration.

Nếu có bất kỳ thắc mắc, góp ý về nội dung bài viết hoặc anh em có thêm những tip hay khác có thể chia sẻ dưới phần bình luận nhé.

Trong thời gian tới, mình sẽ cố gắng bổ sung nhiều lab khác về chủ để S3 vào serie SAA Hands-on Labs, anh em nhớ theo dõi nhé.

Share and Enjoy !

Shares
Giới thiệu Hiệp Phạm 135 bài viết
Hiệp hiện đang là thành viên nhóm tác giả của HIEPSHARING.COM. Thích tìm hiểu, nghiên cứu Ethical Hacking, SysAdmin, DevOps và những công nghệ mới. Phương châm sống của mình: "Chỉ cần bản thân không bỏ cuộc, chậm chút cũng không sao."

Hãy bình luận đầu tiên

Để lại một phản hồi

Thư điện tử của bạn sẽ không được hiện thị công khai.


*