7 mẹo để tối ưu hóa hiệu suất trong phát triển web
27/03/2024 01:21
Để thu hút khách truy cập và bán hàng mỗi giây là vấn đề quan trọng đối với một ứng dụng web. Trang web tải nhanh hơn sẽ tạo ra nhiều lưu lượng truy cập hơn và tạo ra nhiều doanh thu hơn. Tìm hiểu 7 mẹo để tối ưu hóa hiệu suất trong phát triển web
Bạn có biết thực tế là Google từng phải đối mặt với tình trạng lưu lượng truy cập giảm 20% vì các trang tải lâu hơn 5 giây so với trước đây không?
Bạn có biết rằng Walmart đã thấy tỷ lệ chuyển đổi tăng 2% cho mỗi 1 giây cải thiện thời gian tải trang không?
Cả hai ví dụ trên đều đủ để cho bạn biết tại sao hiệu suất của ứng dụng web lại thực sự quan trọng để điều hành một doanh nghiệp thành công. Chà, ngày nay không ai trong thế giới kỹ thuật số này sẵn sàng chờ đợi bất cứ điều gì. Chúng tôi muốn khả năng truy cập của bất kỳ ứng dụng nào nhanh nhất có thể. Nếu bạn nhấp vào kết quả tìm kiếm trên Google và nếu nó không tải trong vòng vài giây, bạn sẽ nhanh chóng chuyển sang các tùy chọn khác. Ở nhiều tổ chức khác nhau, khi xây dựng một ứng dụng, nhiều nhà phát triển và các thành viên khác trong nhóm chú ý quá nhiều đến một số nội dung lớn như thiết kế, nội dung và tiếp thị kỹ thuật số nhưng họ thường quên tầm quan trọng của hiệu suất của web.
Tại sao tối ưu hóa tốc độ web lại quan trọng?
Hãy coi rằng tốc độ trang web của bạn không quan trọng…
Bạn có biết điều gì sẽ xảy ra không?
Theo nghiên cứu của Aberdeen Group, mỗi giây chậm trễ trong thời gian tải trang sẽ mang lại:
- Số lượt xem trang ít hơn 11%
- Mức độ hài lòng của khách hàng giảm 16%
- Mất 7% chuyển đổi
Để thu hút khách truy cập và bán hàng mỗi giây là vấn đề quan trọng đối với một ứng dụng web. Trang web tải nhanh hơn sẽ tạo ra nhiều lưu lượng truy cập hơn và tạo ra nhiều doanh thu hơn. các trang web nhận được sự tương tác của người dùng tốt hơn, tỷ lệ chuyển đổi cao hơn, thứ hạng SEO cao hơn và hơn thế nữa. 47% người tiêu dùng mong đợi các trang web tải trong hai giây hoặc ít hơn và 46% người dùng không truy cập lại các trang web hoạt động kém. Nếu người dùng đang sử dụng thiết bị di động thì họ có thể rời khỏi trang web. Quá trình tải sẽ mất hơn 5 giây. Các kỹ sư tại Google cũng phát hiện ra rằng kết quả tìm kiếm sẽ ít hơn nếu thời gian tải trang chậm hơn 0,4 giây.
- Một cuộc khảo sát cho thấy 79% khách truy cập ít có khả năng truy cập một trang web có vấn đề về hiệu suất. Ngoài ra, 52% người mua hàng nói rằng trang web nhanh hơn rất quan trọng đối với sự trung thành của trang web. 44% cũng cho biết họ kể với bạn bè về trải nghiệm trang web kém. Theo khảo sát này, bạn có thể tưởng tượng tác động tồi tệ nhất của một trang web chậm đối với doanh nghiệp của bạn.
- Walmart một công ty nổi tiếng đã được hưởng lợi khi họ cải thiện thời gian tải trang. Công ty đã chia sẻ số liệu thống kê sau:
- Tỷ lệ chuyển đổi tăng 2% cho mỗi giây cải thiện thời gian tải trang.
- Cứ mỗi 100 mili giây cải tiến, doanh thu của công ty lại tăng lên tới 1% .
- Số lượt tải xuống của Firefox tăng 15,4% hay 10 triệu mỗi năm, tăng tốc độ trang của họ thêm 2,2 giây .
- Pinterest đã tăng lưu lượng truy cập trên công cụ tìm kiếm và số lượt đăng ký lên 15% khi họ giảm 40% thời gian chờ đợi .
- BBC nhận thấy họ mất thêm 10% người dùng mỗi giây mà trang web của họ tải thêm.
Tất cả các khảo sát và ví dụ trên cho thấy rõ ràng tác động tích cực của các trang web nhanh hơn và tác động tiêu cực của các trang web chậm. Tối ưu hóa tốc độ trang web ảnh hưởng đến các yếu tố chính dẫn đến thành công của trang web…
- Chuyển đổi: Điều đó có nghĩa là khiến khách truy cập của bạn làm những gì bạn muốn họ làm.
- Khả năng hiển thị: Nó có nghĩa là người dùng có thể tìm thấy trang web của bạn dễ dàng như thế nào. Nói cách khác, kết quả xếp hạng của Google. Google hạ thứ hạng website chạy chậm Việc xếp hạng cũng tính đến phiên bản di động của trang.
- Khả năng sử dụng: Nếu trang web hoạt động tốt, nó sẽ mang lại trải nghiệm người dùng tốt hơn, dẫn đến mức độ hài lòng của khách hàng cao hơn. Nó cũng ảnh hưởng đến số lượng khách hàng trung thành.
Mẹo và kỹ thuật để tối ưu hóa hiệu suất trang web
Hiệu suất của các ứng dụng web phụ thuộc vào rất nhiều yếu tố. Có rất nhiều cách và kỹ thuật bạn có thể sử dụng để làm cho trang web của mình hoạt động nhanh hơn. Bạn cần sử dụng các kỹ thuật ở cả phía máy khách và phía máy chủ của ứng dụng web của mình. Hãy thảo luận về một số kỹ thuật hoặc các bước chính để tối ưu hóa trang web của bạn…
1. Mạng phân phối nội dung và bộ nhớ đệm
Lưu trữ trang web của bạn trên một máy chủ sẽ làm tăng thời gian tải của trang web. Mỗi người dùng phải thực hiện các yêu cầu trên cùng một máy chủ và cần có thời gian để xử lý từng yêu cầu. Trang web phải chịu lượng truy cập lớn và trang mất nhiều thời gian hơn để tải. Ngoài ra, khi người dùng ở xa máy chủ, thời gian tải sẽ tăng nhiều hơn vì thông tin có khoảng cách di chuyển xa hơn. Giải pháp để giải quyết vấn đề này là sử dụng CDN. Về cơ bản CDN là một nhóm máy chủ được phân bổ theo địa lý nơi bạn có thể chuyển tất cả nội dung cần thiết để tải nội dung Internet bao gồm các trang HTML, tệp JavaScript, biểu định kiểu, hình ảnh và video. CDN lưu trữ tất cả các tệp này trên các máy chủ gần nơi người dùng của bạn ở hơn, giảm tải nặng cho trang web của bạn và làm cho ứng dụng của bạn nhanh hơn.
2. Giảm thiểu yêu cầu HTTP
Nếu trang web của bạn thực hiện một số lượng lớn yêu cầu HTTP thì các trang web sẽ mất nhiều thời gian hơn để tải. Theo Yahoo, 80% thời gian tải của một trang Web được dành để tải xuống các phần khác nhau của trang, như hình ảnh, biểu định kiểu và tập lệnh. Khi khách truy cập muốn truy cập các phần tử này trên trang web của bạn, họ sẽ yêu cầu nhiều yêu cầu HTTP hơn và mất nhiều thời gian để hiển thị trang.
Trước tiên, hãy xác định có bao nhiêu yêu cầu HTTP bằng cách sử dụng tab mạng trong công cụ dành cho nhà phát triển Chrome (góc dưới bên trái). Bạn có thể giảm số lượng yêu cầu bằng cách sử dụng một số kỹ thuật như…
- Không sử dụng các plugin, hình ảnh, JavaScript và CSS không cần thiết
- Nhóm tài sản của bạn lại với nhau. Kết hợp các tệp JavaScript thành một và thực hiện tương tự với các tệp CSS.
- Không sử dụng framework của bên thứ ba trừ khi chúng thực sự cần thiết
- Sử dụng sprite . Bạn có thể sử dụng sprite để phân phối nhiều hình ảnh trong một yêu cầu. Bằng cách sử dụng thuộc tính vị trí nền trong CSS, bạn có thể tham chiếu từng hình ảnh riêng lẻ.
- Giảm thiểu các tệp HTML, CSS và JavaScript của bạn. Giảm thiểu loại bỏ các ký tự không cần thiết trong một tệp. Có một số cách và công cụ để thu nhỏ các tệp này, chẳng hạn như công cụ WillPeavy , JavaScript Minifier hoặc Grunt .
3. Giảm chuyển hướng
Để di chuyển và xóa các trang hoặc để loại bỏ vấn đề liên kết bị hỏng, bạn có thể đang sử dụng chuyển hướng nhưng những chuyển hướng này tạo ra nhiều yêu cầu HTTP hơn và điều đó tác động tiêu cực đến hiệu suất. Chuyển hướng (301, 302) làm chậm các trang và làm giảm hiệu suất của trang web. Trước tiên, bạn nên phát hiện tất cả các chuyển hướng bằng cách sử dụng một số công cụ như Screaming Frog và sau đó xác định xem chuyển hướng nào không cần thiết trên trang web của bạn. Loại bỏ các chuyển hướng không cần thiết và chỉ giữ lại những chuyển hướng quan trọng.
4. Kích hoạt tính năng nén
Theo Google , thế giới mạng chứng kiến 99 năm nhân loại bị lãng phí mỗi ngày do nội dung web không được nén. Tệp của bạn càng lớn thì trang của bạn sẽ tải càng chậm. Giảm kích thước tệp là một kỹ thuật tuyệt vời để đạt được tốc độ trang tốt hơn, vì vậy hãy luôn cố gắng nén tệp càng nhiều càng tốt. Nó làm giảm các yêu cầu HTTP và giúp làm cho trang web nhanh hơn.
GZIP là kỹ thuật nén tệp hiệu quả và phổ biến nhất. Nó hoạt động tốt với các loại tập tin. Bạn có thể kích hoạt GZIP và nén các trang web, CSS và JavaScript ở cấp máy chủ trước khi gửi chúng tới trình duyệt. Về cơ bản, đây là một ứng dụng phần mềm cho phép bạn tìm các chuỗi hoặc phiên bản mã tương tự trong tệp của mình và sau đó thay thế tạm thời bằng các ký tự ngắn hơn. Về phía người dùng, trình duyệt sẽ giải nén các tệp và hiển thị nội dung gốc. Bạn có thể sử dụng thử nghiệm nén URL GZIP để kiểm tra xem GZIP có được bật trên trang web của bạn hay không.
- Nếu trang web của bạn trên WordPress, hãy sử dụng plugin WP-rocket hoặc W3 Total Cache để bật tính năng nén GZIP.
- Cách tốt nhất để kích hoạt tính năng nén GZIP là ở cấp độ máy chủ của Apache hoặc Nginx.
Lưu ý: Không sử dụng hình ảnh GZIP, PDF hoặc dữ liệu nhị phân khác. Chúng đã được nén sẵn nên sẽ lãng phí tài nguyên CPU.
Một lựa chọn khác: Bạn cũng có thể sử dụng Brotli để nén, một phương pháp khá mới nhưng đang trở nên phổ biến trên thị trường.
5. Bộ nhớ đệm
Khi người dùng truy cập một trang web, các thành phần sẽ được lưu trữ trong bộ lưu trữ ổ cứng tạm thời được gọi là bộ đệm. Khi lần sau cùng một người truy cập vào cùng một trang, họ có thể tải trang mà không cần gửi yêu cầu HTTP khác đến máy chủ. Quá trình này tải các trang nhanh hơn. Về cơ bản, bộ nhớ đệm lưu trữ phiên bản hiện tại của trang web trên máy chủ lưu trữ và hiển thị phiên bản này cho đến khi trang web được cập nhật. Không cần phải gửi yêu cầu cơ sở dữ liệu mỗi lần cho các trang được lưu trong bộ nhớ đệm.
Thiết lập bộ nhớ đệm trang web tùy thuộc vào nền tảng mà trang web của bạn đang chạy. Nếu chúng ta nói về WordPress thì bạn có thể sử dụng plugin W3 Total Cache để kích hoạt bộ nhớ đệm một cách dễ dàng. Bạn có thể bật bộ đệm của trình duyệt bằng cách điều hướng đến Cài đặt chung > Bộ đệm của trình duyệt và chọn hộp bên cạnh “Bật”. Đối với VPS và máy chủ chuyên dụng, bạn có thể bật bộ nhớ đệm đối tượng thông qua cài đặt chung để tăng tốc các yếu tố động trên trang web của mình. Trong trường hợp bộ nhớ đệm lưu trữ được chia sẻ không phải là lựa chọn tốt nhất để sử dụng. Đối với trang HTML tĩnh, bạn có thể bật bộ nhớ đệm bằng tệp .htaccess của mình.
6. Tối ưu hóa cơ sở dữ liệu
Cơ sở dữ liệu cũng có tác động rất lớn đến hiệu suất của ứng dụng web. CMS được tích hợp nhiều plugin phức tạp giúp tăng kích thước cơ sở dữ liệu và thời gian tải của trang web. Vô hiệu hóa các plugin mà bạn không cần trong cơ sở dữ liệu của mình. WordPress CMS lưu trữ các bài đăng, nhận xét, trang và các dạng dữ liệu văn bản và dữ liệu được mã hóa khác chiếm nhiều dung lượng lưu trữ. Cơ sở dữ liệu trở nên đông đúc theo thời gian và nó bắt đầu thu thập dữ liệu rác như nhận xét trong hàng thư rác, nhận xét không được phê duyệt, bản sửa đổi bài đăng, các mục bị vứt vào thùng rác như bài đăng và trang. Loại bỏ tất cả những dữ liệu rác và nội dung vô dụng này. Giới hạn, vô hiệu hóa và xóa các bản sửa đổi bài đăng. CMS khác nhau có các kỹ thuật tối ưu hóa khác nhau. Đối với WordPress, bạn có thể xem xét WP-Optimize.
7. Tối ưu hóa HTML, CSS và JavaScript
- Luôn giữ các tập lệnh ở phía dưới. Việc đặt các thuộc tính JavaScript bên trong thẻ head hoặc gần đầu tài liệu HTML sẽ chặn quá trình tải các phần tử HTML và CSS. Để có hiệu suất tốt hơn, hãy đặt chúng trước thẻ đóng body. Bạn cũng có thể thử nghiệm các thuộc tính async/defer .
- Sử dụng bộ nhớ đệm bằng cách đặt tất cả tài nguyên của bạn vào một tệp bên ngoài. Điều này bao gồm các đoạn mã như tập lệnh theo dõi, kiểu nội tuyến và tập lệnh được tải xuống mỗi khi HTML được yêu cầu.
- Giảm số lượng phần tử DOM.
- Đặt biểu định kiểu ở đầu tài liệu HTML của bạn. Ngoài ra, hãy giảm độ phức tạp của bộ chọn và sử dụng các lớp bổ sung thay thế. Tránh thay đổi bố cục trong CSS của bạn (thay đổi bố cục chiều rộng, chiều cao hoặc bên trái và bên phải).
- Sử dụng tab mức độ phù hợp trong công cụ dành cho nhà phát triển Chrome để xác định mã nào chúng tôi thực sự cần khi tải trang. Mã được đánh dấu trong phần màu đỏ không được thực thi ngay lập tức. Điều này có nghĩa là bạn có thể trì hoãn và yêu cầu nó sau khi tải xong.
-
8. Tối ưu hóa hình ảnh
Cho dù chúng ta nói về logo công ty hay chúng ta cần giới thiệu sản phẩm với khách hàng, hình ảnh đều đóng vai trò chính trong việc xây dựng một trang web. Trong một cuộc khảo sát, người ta thấy rằng 66% khách hàng muốn xem ít nhất 3 ảnh của sản phẩm trước khi mua, vì vậy đối với các công ty thương mại điện tử, hình ảnh là một phần quan trọng. Nó làm tăng mức độ tương tác của người dùng nhưng chúng thường là các tệp lớn và do đó nó cũng làm chậm tốc độ trang web của bạn. Cái gì tiếp theo? nén hình ảnh. Bạn có thể sử dụng các công cụ như Compressor.io , JPEGmini , Kraken , WP Smush (Dành cho WordPress), TinyPNG để nén hình ảnh mà không ảnh hưởng đến chất lượng của nó. Bạn cũng có thể sử dụng Optimus cùng với API tập trung vào sự kết hợp giữa nén hình ảnh không mất dữ liệu và nén mất dữ liệu.
- Sử dụng các hình ảnh và thuộc tính đáp ứng HTML. Nó điều chỉnh kích thước hình ảnh dựa trên thuộc tính hiển thị của người dùng.
- Sử dụng JPG khi chất lượng được ưu tiên cao và không cần phải sửa đổi hình ảnh trước khi tải lên. Đối với hình ảnh động, hãy sử dụng GIF. Đối với biểu tượng, logo, hình minh họa, bảng hiệu và văn bản, hãy sử dụng định dạng PNG.
- Khi bạn hiển thị hình ảnh trên trang web của mình, hãy cố gắng khớp kích thước tự nhiên của chúng với kích thước hiển thị cuối cùng. Nếu chiều rộng tối đa của hình ảnh không bao giờ vượt quá 300px thì kích thước của bạn cũng không được như vậy. Cắt hình ảnh với kích thước chính xác và sử dụng khả năng thay đổi kích thước của trình duyệt để làm cho hình ảnh phản hồi nhanh bằng cách đặt hướng dẫn chiều rộng và chiều cao tự động cố định.
Chúng ta đã thảo luận về 8 kỹ thuật nhưng vẫn còn một số kỹ thuật bạn nên biết để cải thiện hiệu suất trang web của mình. Bạn có thể cải thiện hiệu suất trang web của mình bằng cách chọn dịch vụ lưu trữ phù hợp, tối ưu hóa phông chữ, sử dụng các kỹ thuật tìm nạp trước (Tìm nạp trước liên kết, tìm nạp trước DNS, Hiển thị trước), sử dụng khung tối giản, bảo vệ liên kết nóng và giảm thiểu thời gian đến byte đầu tiên.
- Source: https://www.geeksforgeeks.org/7-tips-for-performances-optimization-in-web-development/?ref=ml_lbp