Tăng tốc website – có tiền là có quyền?

Có thể bạn đọc tiêu đề là chán luôn! Nhưng cứ từ từ xem nào! Chúng ta sẽ đi từng bước từ lý thuyết đến thực tế.

Không phải dẫn những nghiên cứu quốc tế, từ kinh nghiệm cá nhân chúng ta đều biết rõ rằng:

Tốc độ website chậm không chỉ gây ảnh hưởng tiêu cực đến trải nghiệm của khách hàng, đánh giá năng lực của chủ web, mà ảnh hưởng luôn đến lượng traffic truy cập. Khách có thể rời khỏi ngay website trước khi nó load xong, hoặc nhẹ nhàng hơn, chẳng muốn xem tiếp trang thứ hai nữa.

Dưới đây sẽ trình bày các cách tăng tốc website hiệu quả nhất mà mình biết, vì mình chủ yếu dùng WordPress, nên bài viết này sẽ hữu ích nhất cho bạn nào cũng dùng CMS này.

Chọn host cho ra hồn

Host rẻ, web nặng, traffic nhiều đòi tốc độ website cao thì khó lắm! Nếu bạn muốn web nhanh điều quan trọng nhất với mình là bạn phải chọn được host phù hợp.

Phù hợp ở đây ý mình là phù hợp với kiểu web của bạn và lưu lượng truy cập.

Nếu web bạn nhẹ, truy cập không lớn (dưới 5K view / ngày), bạn chọn host từ 5 đô – 10 đô / tháng vẫn OK.

Nếu là web bán hàng, web chạy Adsense đem lại thu nhập cao, đừng tiếc 1% – 2% tiền lãi cho host. Bên cạnh nội dung chất lượng cao, tăng tốc website là điều quan trọng thứ hai mà mình ưu tiên thực hiện. Trải nghiệm người dùng tốt sẽ đem lại nhiều lợi ích thậm chí vượt hẳn chi phí bạn phải bỏ ra để thuê host ngon.

Host xịn không chỉ có RAM khoẻ, chịu được truy cập lớn, mà phần lớn các host kiểu này đã được tối ưu sẵn nhiều thứ, mà nếu bạn không có chuyên môn thì rất khó tự mình thực hiện.

Các bạn có thể muốn hỏi mình một vài công ty host tốt? Cái này nó thay đổi theo thời gian, 12 tháng sau có khi đã khác nên mình không nêu tên cụ thể. Tuy nhiên kinh nghiệm là thế này:

  • Nếu hiểu biết về công nghệ và muốn có host tốt, web nhanh, chịu traffic cao thì mua VPS
  • Nếu không thì mua các loại host đã được tối ưu, kiểu ăn sẵn, ví dụ một số host được tối ưu riêng cho WordPress
  • Nói chung thì tiền nào sẽ đi với của đấy. Host giá cao thường đi kèm một số dịch vụ gia tăng như backup miễn phí hàng ngày, hỗ trợ nhanh 24/7, thời gian uptime rất cao, phòng trừ malware
  • Chọn công ty gia nhập thị trường đủ lâu, ít cũng phải được 2, 3 năm. Nhiều đại gia ngành host đã có mặt ở đây 15 – 20 năm rồi
  • Vào xem những trang web lớn, hoặc web mà bạn thấy nhanh xem họ dùng host của công ty nào, nếu dưới chân trang không thấy, bạn có thể dùng công cụ whoishostingthis (bạn google tìm web này nhé) để tìm xem web đó dùng host ở đâu?
  • Đa số các công ty host đều cho hoàn tiền lại nếu cảm thấy không ưng í, cái này tuỳ công ty, nhưng thường có thể lên đến 30 ngày trải nghiệm. Do vậy, khi bạn dùng thử một thời gian thấy tốc độ không ưng thì đi luôn, đừng cố đấm ăn xôi
  • Cái cuối cùng quan trọng này, đọc review thật kỹ, gồm cả review ở các diễn đàn lẫn review của các blogger công nghệ. Các review của các blogger công nghệ có thể bị ảnh hưởng bởi việc họ được ăn % hoa hồng khi có người mua nên phải nghe cả hai tai. Dù sao những tay blogger lớn bản thân họ cần giữ uy tín nên đa số là tin được, nhưng nên nhớ là những tay hàng đầu thôi nhé

Chọn giao diện phù hợp

Ở đây lại nói đến tính phù hợp. Website càng màu mè, nhiều tính năng thì càng nặng vì nó sẽ cần nhiều ảnh, JavaScript và CSS hơn,…Tất nhiên cả những truy vấn đến host nữa.

Do vậy hãy đơn giản tối đa, nghĩa là bạn cần mức nào thì chọn giao diện mức đấy. Bắt buộc cần tính năng nào thì vẫn phải dùng, không thì thôi.

Bạn nào dùng WordPress thì biết, cái hay của nó là nó chỉ cài các plugin cơ bản, anh nào cần thì cài thêm plugin cho các tính năng mới. Cũng nhắc luôn, nếu bạn cài thừa mứa plugin, tốc độ website sẽ chậm đi nhiều.

Ngoài ra, một số plugin tương đối nặng, hoặc gây xung đột, do vậy khi thấy dấu hiệu bất thường cần kiểm tra ngay, thử dừng plugin xem kết quả thế nào.

Tối ưu hoá hình ảnh

Nếu bạn nhìn bảng phân tích lưu lượng tải xuống của một trang web bạn có thể thấy hình ảnh chiếm từ 30 – 70% dung lượng (tuỳ từng trang, bài viết). Có nghĩa là một trang web 2MB chẳng hạn, có thể 1,4MB đã là hình ảnh rồi.

noi-dung-theo-dung-luong
Như trang web được thống kê, hình ảnh chiếm đến 85%. Nội dung văn bản chẳng đáng bao nhiêu, chưa đến 2%. Chiếm thứ nhì là JavaScript, khoảng 7%. Đây là thống kế ngẫu nhiên một trang khá nặng hình ảnh, các trang khác tỉ lệ sẽ khác đi nhiều

Do vậy giảm dung lượng ảnh là giảm được rất nhiều lưu lượng, tương ứng là giảm thời gian hiển thị website.

Có hai cách giảm dung lượng ảnh:

  • Giảm không mất dữ liệu: Dung lượng ảnh giảm nhưng độ nét vẫn thế, thường tiết kiệm được tử 10 – 15%
  • Giảm mất dữ liệu: dung lượng giảm, độ nét cũng giảm theo. Ưu điểm là có thể giảm được rất lớn, đôi khi đến 50% dung lượng. Tuy nhiên cái này cần cân đối để không bị giảm chất lượng quá nhiều

Một cách đơn giản nhất để giảm dung lượng ảnh đó là chỉnh lại kích thước ảnh! Thông thường kích thước web mà người dùng xem trên web giao động từ 600 – 800px, nên bạn chỉnh sửa ảnh lại chiều rộng như vậy sẽ đỡ đi nhiều. Chẳng hạn bạn có ảnh 1200px, bạn biết chiều rộng 600px là đủ thì hãy giảm kích cỡ này xuống, nó có thể giúp ảnh giảm dung lượng đi 3 đến 4 lần.

Để tìm các phần mềm tối ưu ảnh bạn có thể tra từ khoá Image Optimization Software. Còn để tìm các plugin cho WordPress hãy tra Image Optimization Plugin WordPress.

Sử dụng CDN

CDN là viết tắt của từ Content Delivery Network – hay mạng phân phối nội dung.

Hiểu nôm na nó thế này. Có hai ô tô giống nhau, một cái xuất phất ở Hồ Chí Minh, một cái xuất phát ở Quảng Ninh, đường xá đều đẹp, xăng xe đầy đủ, giữa đường không bị công an giao thông giữ xe. Hỏi xe nào đến Hà Nội trước?

Câu trên không phải mẹo đâu. Xe ở Quảng Ninh sẽ đến trước, vì nó gần hơn đến gần 10 lần.

Điều tương tự cũng xảy ra với host. Bạn mua cái host ở Mỹ, ngay cả bạn mua host tốt (xe ô tô xịn), đã được tối ưu hoá ảnh và tính năng (hàng hoá không nặng lắm), nhưng quãng đường xa vậy thì cũng không thể chốc nhát là đến.

Thế thì cái CDN làm nhiệm vụ phân tán nội dung khắp thế giới, và nó sẽ lấy dung lượng ở vị trí nào gần với người dùng nhất, qua đó giúp tăng tốc.

cloud-flare-co-hang-tram-pop-tren-toan-cau
CloudFlare có hàng trăm POP (trung tâm dữ liệu – Data Center) trên toàn thế giới và là một trong các dịch vụ CDN hàng đầu. Ở châu Á, các POP của họ có nhiều ở Trung Quốc, hiện tại chưa có POP nào ở Việt Nam. Châu Mỹ, Châu Phi họ cũng không có nhiều POP, đây là tình hình chung, số lượng thế này đã là khá hơn rất nhiều các dịch vụ khác rồi

Ông nào ở Việt Nam vào web bạn thì ảnh không phải lấy ở host tận bên Hoa Kỳ mà là lấy ở Nhật, Singapore hay thậm chí ngay tại Việt Nam.

Câu hỏi, thế sao không thuê host luôn ở Việt Nam đi cho tiện, bày vẽ sang tận Hoa Kỳ, Âu, Úc thuê làm gì bây giờ lại phải khổ.

Lý do là thế này: Về nhiều mặt, trong đó có chất lượng kỹ thuật, dịch vụ, bảo mật, phương thức thanh toán…sản phẩm của Hoa Kỳ và nước ngoài nói chung tốt hơn Việt Nam khá nhiều. Buồn chứ vui gì đâu!

Ngoài ra với một số dịch vụ đặc biệt (ít thôi) mà khách hàng phân tán khắp thế giới thì yêu cầu dùng CDN là rất cần thiết. Chẳng hạn hầu hết các hãng tin hàng đầu thế giới đều sử dụng CDN.

Nhược điểm của CDN là gì:

  • Không nhiều dịch vụ CDN có POPs đặt tại Việt Nam
  • Để dùng được CDN chất lượng, số tiền bỏ ra cũng không nhỏ, 10 – 20 đô / tháng là chuyện bình thường. Tương đương với host tầm trung
  • Các POPs ở Châu Á không được ổn định lắm. Chẳng hạn cách đây vài tháng mình có dùng MAXCDN – dịch vụ thuộc dạng máu mặt, tầm cỡ hàng đầu thế giới thế mà cũng bị downtime ba, bốn lần vì các POPs ở Singapore có vấn đề. Trong khi suốt thời gian đó cái host ở bên Hoa Kỳ thì không bị làm sao!

Các dịch vụ CDN có nhiều cách tính giá:

  • Dùng đến đâu trả đến đấy – theo dung lượng: cách này hay được áp dụng nhất, có thể là tính theo ngày, giờ luôn. Hoặc mua một gói lưu lượng độ 1TB chẳng hạn, dùng 1 tháng hay 1 năm hết cũng được, bao giờ dùng hết mới mua tiếp
  • Trả theo tháng, dùng bao nhiêu dung lượng thì dùng: mình biết có mỗi CloudFlare áp dụng cách này. Gói tầm trung của nó tầm 20 đô / tháng. Dịch vụ miễn phí nghe bảo cũng tốt

Nếu web thông tin có 500K – 1 triệu view có thể dùng host 20 đô + CloudFlare được đấy ạ.

Nếu có mức chi tiêu 100 đô / tháng mà khách truy cập chủ yếu ở Việt Nam thôi mình sẽ không dùng CDN, mà sẽ mua một con host thật xịn – vì bên trong đó sẽ được tối ưu rất nhiều thứ rồi mà CDN với mức giá chắc chắn không hề nhỏ chưa chắc bù được.

Vậy CDN hợp với ai?

  • Site nhỏ, hoặc tầm trung muốn tăng tốc và giảm tải host
  • Site lớn, lượng người truy cập phân tán khắp thế giới

Site lớn và lượng truy cập tập trung ở Việt Nam thì chi phí host sẽ cao có thể chọn một trong hai cách:

  • Sử dụng luôn host tại Việt Nam nếu được, với chi phí cao sẽ được ưu đãi, quan tâm chăm sóc nhiều hơn.
  • Mua host xịn nước ngoài mà không cần CDN (nếu site mình lớn mình sẽ chọn cách này)

Hiện nay có nhiều dịch vụ cao cấp cho host dùng WordPress, mình có thể kể với cái tên vì họ cũng nổi tiếng và ổn định thời gian dài rồi, thí dụ như LiquidWeb, Kinsta, WebSynthesis, MediaTempate,…Những thằng này cỡ từ 50 – 200 đô / tháng

Có một số thằng giá chát quá mình không nêu ra, toàn 300 – 400 đô / tháng thì ghê quá à!

Từ khoá bạn có thể tra là: wordpress premium hosting

Sử dụng cache

Có rất nhiều điều để nói về phần này, và nó cũng bao gồm nhiều thông tin kỹ thuật (có những cái mình cũng không hiểu hết). Cache nghĩa là bộ nhớ đệm. Dưới đây là một số cách:

  • Cache phía trình duyệt: bạn đã vào một trang web, các ảnh và JavaScript, CSS đã tải về. Một tháng sau bạn cũng vào trang đó, thì trình duyệt sẽ không cần tải các thông tin đấy nữa, vì nó đã lưu ảnh (chẳng hạn ảnh banner), JS và CSS ở bộ nhớ của nó ở máy tính, điện thoại rồi. Cái này đơn giản vậy mà tăng tốc rất nhiều lần đấy ạ. Khách truy cập các lần tiếp theo giảm tải có khi từ 30% đến 70%. Tất nhiên cái này ít có tác dụng trong lần truy cập đầu tiên (ý là vẫn có tác dụng phần nào nếu bạn dùng các host JS hoặc jQuery, Font quốc tế chung)
  • Kỹ thuật tạo trang tĩnh: đại khái trang mà bạn nhìn thấy được tạo thành từ các truy vấn từ cơ sở dữ liệu, mỗi lần bạn yêu cầu, nó sẽ phải tạo truy vấn để lấy ảnh, tiêu đề, nội dung, phần chân trang…Nó giống như để nhìn thấy cả đại gia đình bạn phải gọi cả ông bà, bố mẹ, con cháu nội ngoại ở khắp nơi về họp mặt. Nếu bạn không cần nói chuyện với họ, cách hay hơn để nhìn thấy mà đỡ tốn công nhiều người là…chụp một bức ảnh cả đại gia đình, phóng to như thật, hiệu quả về mặt hình ảnh là tương tự. Trên thị trường hiện nay, đặc biệt là WordPress có vài plugin rất tốt hỗ trợ, như WP Super Cache (thích hợp cho share host, miễn phí), W3 Total Cache (thích hợp cho VPS và người có kinh nghiệm, miễn phí và bản premium), WP Rocket (thích hợp cho dân không chuyên vì rất dễ dùng, giá 39 đô / năm). Bản thân mình dùng WP Rocket nhưng không phải cho trang này, mà cho một trang bán hàng mình dùng cho khách. Đa số các plugin vừa để cập đều có khả năng điều chỉnh cache phía trình duyệt
  • Kỹ thuật cache phía máy chủ: kỹ thuật này đòi hỏi chuyên môn nếu bạn tự tay làm (một số VPS, ví dụ có lần mình mua bên LiquidWeb, họ không cài sẵn mà mình phải yêu cầu hoặc tự cài), ngược lại một số host khá xịn thì họ chủ động cài sẵn cho bạn rồi (thí dụ DreamPress của Dreamhost). Các host này làm thế còn để tối ưu cho chính nó (họ thường thu tiền với giá cố định theo tháng), bạn sẽ có trải nghiệm tốt hơn hẳn. Vài công nghệ có thể kể đến là Varnish, Memcached, PHP OPcache.

Ưu điểm đã rõ, vậy nhược điểm khi sử dụng cache là gì:

  • Khi cập nhật nếu bạn quên xoá cache trang đó thì thông tin hiện ra ngoài không thay đổi. Để phòng điều đó, các plugin cache tĩnh để thời gian sống của cache thường từ 1 ngày đến 1 tuần là nhiều. Nghĩa là sau thời gian này, cache tự động xoá và làm mới
  • Các kỹ thuật cache phía máy chủ không dành cho người không chuyên, nếu không biết cài đặt thì hại nhiều hơn là lợi

Một số kỹ thuật khác

Đây có thể coi là các mẹo thì đúng hơn, vì nó khá là nhỏ và hơi tinh quái:

  • LazyLoad: tải chậm, mẹo này rất hay nếu trang của bạn có nhiều ảnh, video. Nó sẽ chỉ tải nếu ảnh hoặc video của bạn hiện ra trong tầm nhìn của người đọc. Nghĩa là nếu bài viết có 5 ảnh, mỗi ảnh 100K. Thì mới đầu nó chỉ tải văn bản và các thứ khác thôi, chưa tải ảnh vội, đến lúc người xem cuộn tới phần có ảnh nó mới tải. Mình thấy khá nhiều trang tin tức lớn dùng cách này, vì họ có nhiều ảnh và hàng triệu người dùng, ví dụ như trang BBC. Cách này vừa tăng tốc, vừa giảm băng thông
  • Rút gọn các file JavaScript, CSS bằng cách kết hợp nó lại thành một file, bỏ các phần thừa. Cách này mình không thích lắm vì có thể làm vỡ bố cục cũng như một số tính năng, thực tế mình cũng không dùng
  • Hạn chế tối đa các liên kết ngoài không cần thiết. Chẳng hạn nếu cảm thấy không cần nút chia sẻ Twiter, Printest thì không nên gắn vào web. Những liên kết ngoài sẽ làm tăng thời gian tải trang
  • Hạn chế các liên kết chuyển hướng. Mình từng phạm lỗi này khi chuyển từ không www sang có www, làm một số ảnh mình chưa chuyển bị lỗi chuyển hướng, ảnh thì vẫn hiện ra thôi nhưng nó mất công chuyển hướng. Tự dưng thì không phát hiện được lỗi này đâu vì về mặt hiển thị không có gì thay đổi. Bạn nên dùng công cụ tối ưu tốc độ tải trang để kiểm tra, ví dụ như của tools.pingdom. Bạn vào những công cụ thế này có thể phát hiện được nhiều thứ hay ho hơn nữa. Từ khoá tra: Website speed test
  • Làm sạch Database, loại bỏ các dữ liệu dư thừa để quá lâu không còn cần thiết. Chẳng hạn những phiên bản cũ của bài viết, cái này có ích khi mà bạn sửa chữa không đúng thì bạn có thể phục hồi nhanh chóng lại bài viết, tuy nhiên theo thời gian nó sẽ đầy lên rất nhiều, và tất nhiên có nhiều phiên bản cũ bạn không bao giờ dùng đến. Mình chỉ có 375 bài viết nhưng có đến hơn 5000 phiên bản lưu trữ! Mấy hôm trước vừa xoá hết rồi. Lưu ý luôn backup tài liệu trước khi dọn Database, phòng khi nhỡ tay hoặc có sai sót còn có cái phục hồi

Giờ chúng ta xem lại cái tiêu đề chút. Nếu có kinh phí ổn, bạn dễ dàng làm được các điều sau:

  • Chọn được host tốt, Ram tốt, dung lượng tốt, cài cắm sẵn nhiều công cụ nền tảng giúp tăng tốc
  • Mua được plugin tăng tốc mà không phải ngại giá cả, có thể lên đến gần 100 đô với W3 Total Cache
  • Trong trường hợp bắt buộc phải dùng CDN cũng không thành vấn đề

Đấy, mạnh về tiền bạc rất có lợi trong vấn đề tăng tốc website!

Mình là Nguyễn Đức Anh, sinh năm 1987. Hiện là marketing tự do. Facebook cá nhân: https://www.facebook.com/anhducnguyen87

Trả lời

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *