- vừa được xem lúc

5 cách tối ưu việc load ảnh cho website

0 0 8

Người đăng: Thuc Pham Ngoc

Theo Viblo Asia

"A picture is worth a thousand words" - Henrik Ibsen

Trong việc diễn đạt thông tin, một tấm ảnh sẽ hữu ích hơn 1000 từ ngữ. Điều này cũng hiển nhiên đúng với các website. Tuy nhiên, việc load nhiều ảnh sẽ khiến hiệu suất của website chậm đi. Bài viết sau đây của mình sẽ chia sẻ cho các bạn 5 cách để tối ưu việc load ảnh trên website.

Cách 1. Chọn đúng loại image

Việc chọn đúng loại ảnh cho từng tình huống khác nhau rất quan trọng bởi vì mỗi loại ảnh sẽ có các đặc tính khác nhau:

  • Nếu muốn ảnh transparent: Xài PNG
  • Nếu muốn ảnh có animation: Xài GIF
  • Nếu muốn ảnh nhiều màu sắc: Xài JPG
  • Nếu muốn ảnh đóng vai trò là icon, logo, illustration: Xài SVG

Cách 2. Giảm chất lượng image

Với các công nghệ AI, Machine Learning, ta có thể dễ dàng giảm chất lượng ảnh mà không làm hình ảnh xấu đi. Điều này giúp tăng đáng kể tốc độ website mà không làm ảnh hưởng tới trải nghiệm người dùng. Một số website giúp bạn giảm chất lượng ảnh có thể kể đến:

Cách 3. Xoá meta-data của image

Với mỗi một file ảnh, máy tính sẽ chứa đựng thêm các thông tin liên quan như tác giả, ngày chụp, loại máy ảnh,... Các thông tin này mặc dù có ích nhưng không cần thiết khi hiển thị trên website. Do đó, chúng ta nên xoá đi các thông tin này để dung lượng ảnh giảm đi. Bạn có thể xoá meta-data của ảnh bằng website sau: https://www.verexif.com/en/index.php

Cách 4. Responsive image

Đối với thiết bị di dộng, việc load ảnh phải thật sự tối ưu vì tài nguyên của điện thoại rất hạn chết. Cùng một nội dung ảnh nhưng ta sẽ sử dụng 2 tấm khác nhau khi load trên máy tính và load trên điện thoại. Chẳng hạn trên máy tính, ta sử dụng logo có kích thước 300x100 thì trên điện thoại ta chỉ cần sử dụng logo có kích thước 60x20 là đủ rồi. Việc chọn image sẽ phụ thuộc vào 2 yếu tố:

  • Kích thước màn hình
  • Độ phân giải của thiết bị

Để responsive image, bạn có thể sử dụng thuộc tinh srcset trong tag <image/>. Tham khảo ở đây: https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images

Cách 5. CND image

CND image giúp tăng hiệu năng cho website vì yêu cầu được phản hồi nhanh hơn. Đồng thời việc sử dụng CDN giúp tiết kiệm băng thông cho server. Tuy nhiên, bạn cần lưu ý CDN chỉ thực sự hữu ích trong các trường hợp sau:

  • Có 1 lượng lớn người dùng nằm xa vị trí của máy chủ hoặc phân bố trên toàn thế giới.
  • Lượt truy cập ngày càng nhiều khiến server tốn nhiều băng thông.
  • Khi phối hợp sử dụng với Load Balancing.

Bạn có thể sử dụng dịch vụ CDN image của www.imgix.com

--- Kết bài

Vừa rồi mình đã chia sẻ cho các bạn về "5 cách tối ưu việc load ảnh trong website". Nếu có vấn đề gì hãy để lại comment bên dưới cho mình biết nhé!

Bình luận

Bài viết tương tự

- vừa được xem lúc

MOSH: Kẻ hủy diệt SSH

Lời nói đầu. Lời đầu tiên xin được xin chào cả nhà, đã lâu lắm rồi mình không viết blog nay May Fest mà người iu mình thích cái áo viblo quá nên xin phép nổ phát súng trên Viblo về Mosh - thứ khá hay

0 0 138

- vừa được xem lúc

Vòng đời và trạng thái của Thread

A. Giới thiệu.

0 0 139

- vừa được xem lúc

Giải quyết vấn đề N+1 trong quan hệ cha - con vô tận bằng Eager Loading

Vấn đề. Trong khi phát triển ứng dụng, chắc hẳn các bạn đã gặp phải trường hợp đệ quy cha-con trong khi phát triển các dự án, ví dụ như cây thư mục như sau:.

0 0 182

- vừa được xem lúc

Bạn tổ chức thư mục views cho các dự án Laravel như thế nào?

Hầu hết các ứng dụng Laravel có rất nhiều views. Một ứng dụng nhỏ sẽ không xảy ra vấn đề gì cả, tuy nhiều nếu dự án lớn dần theo thời gian, chúng ta sẽ gặp bế tắc trong việc tổ chức và sắp xếp các vie

0 0 202

- vừa được xem lúc

Sự khác nhau giữa những điều tưởng giống nhau - Phần 3

Hôm nay, để tiếp tục cho series so sánh, hãy cùng mình khám phá thêm 2 địa danh mới khá nổi tiếng của Việt Nam mình đó là Cù Lao Chàm và đảo Lý Sơn. .

0 0 112

- vừa được xem lúc

Một số thuật toán sắp xếp

Chắc hẳn ngồi trên ghế giảng đường đại học thì ai cũng sẽ được làm quen với thuật toán. Nghe thì thật là trừu tượng và mơ hồ, nhưng để tối ưu hóa những bài toán đặt ra thì bắt buộc các bạn phải học đế

0 0 178