Lựa chọn OS, Webserver, Control Panel, PHP, MySQL cho WordPress?

Dạo gần đây mình có tham gia 1 vài group Việt Nam trên facebook 😀 lý do nói câu này vì mình không tham gia hội nhóm nào về kĩ thuật, tại trừ nói nhảm, nói xàm, gây war, thì trên các group nói tiếng Việt, mình rất hiếm học được cái gì, thường mình hay vào các diễn đàn hơn ….

Không nhớ rõ lý do tại sao tham gia Nhóm Hỗ Trợ VPS Hosting nhưng thi thoảng đọc mà mình biết tới Alist, 1 tool nhỏ để tạo 1 trang storage, chạy gần 4 tháng nay rồi vẫn rất thích sản phẩm này, cũng khá là tình cờ, nhưng rất nhiều sản phẩm mình đang dùng, cũng đều viết bởi các lập trình viên Trung Quốc

Lựa chọn OS

Quay lại chủ đề, thi thoảng đọc thấy vài câu hỏi, một số người thắc mắc cài WordPress thì nên dùng trên OS nào, Debian, Ubuntu, CentOS, AlmaLinux, RockyLinux ….

Khá lú người về câu hỏi này, chúng đều là Linux, đều kế thừa các điểm mạnh và điểm yếu của Linux, về cơ bản có thể gọi là tương đồng, nếu chỉ chạy WordPress thì mình không nghĩ ra có sự khác biệt gì

Còn ai đó nói OS này ngon, ổn định, công ty, doanh nghiệp to dùng, OS kia ghẻ …. thì mình nghĩ kiến thức của các vị này, 1 là ở tầm của con nhái đang nhìn ra vũ trụ 😀 2 là khả năng của họ đủ sức viết cả 1 hệ điều hành 😛

1 số vị thì quan điểm hơi cực đoan 1 tẹo, họ chỉ tin tưởng các phiên bản OS cũ, kiểu CentOS 7, theo họ thì các hệ điều hành này mới ổn định 😀 nói tới ý này thì chắc cũng tương tự 1 ví dụ về hệ thống của Nasa 😀 máy tính phải xài hệ điều hành DOS, chạy CPU 386 mới ổn định để phóng tên lửa =))

Tạm mình hiểu đơn giản, thời điểm xây dựng các hệ thống siêu to khổng lồ, họ viết trên nền tảng đó, và phát triển các thứ xoay quanh, bây giờ thay đổi, phải viết lại toàn bộ, hiệu quả của việc viết lại, nó không bằng rủi ro gặp phải, nên họ mới duy trì vận hành trên các OS, phần mềm cũ …. chứ không liên quan lắm chuyện OS nào ngon hay dở

Lựa chọn Webserver

  • Đây là 1 câu hỏi khó, nhưng không có quá nhiều ý kiến trái chiều

Không có webserver nào nổi bật hẳn nếu chỉ dùng để chạy WordPress, tính theo thị phần thì Nginx và Apache đang áp đảo toàn bộ

Góc độ cá nhân thì mình vẫn khá thần thánh Tengine (được Taobao, Sogou …. viết lại từ Nginx), do trước đây mình từng làm cho 1 công ty nhập hàng Trung Quốc, các đợt even như 11/11, 12/12 … sẽ vào mua hàng, tham gia even các kiểu

Số lượng mua hàng thì nó là 1 con số thiên văn, không đùa, đông kinh hoàng, thi thoảng đọc báo, bạn cũng nghe mấy tin kiểu người nổi tiếng PR sản phẩm, bán hàng online, kiểu 100.000 sản phẩm được bán sạch trong …. 1s =)) hay mỗi lần Xiaomi ra mắt sản phẩm mới, ở các đợt bán đầu tiên, gần như F5 1 phát là hết hàng

Amazon cũng là 1 nền tảng bán hàng trực tuyến cực lớn, họ có cả 1 hệ thống AWS tầm thế giới quay quanh, mà các đợt Black Friday mình vào thì thấy sập ầm ầm 😀 không rõ năm nay thì thế nào, chứ 2-3 năm trước mình cũng đú mua hàng giá rẻ, vào văng 1001 các lỗi 😛

taobao thì có rất nhiều shop, mỗi ngày họ có cả trăm ngàn đơn hàng sản phẩm, mà cơ sở hạ tầng của taobao vẫn cân tất

Bởi thế mình khá là thần tượng webserver Tengine, mỗi cái dùng thử thì mù tịt 😀 không biết cấu hình ra làm sao cho tối ưu 😛

Quay lại câu chuyện lựa chọn Webserver, cân bằng hiệu năng, tính năng, tốc độ thì mình vẫn thích Nginx, vô cùng thông dụng, gần như bạn có thể tìm ra mọi câu trả lời liên quan tới vấn đề gặp phải, mình dùng vài năm nay chưa bao giờ thấy Nginx đang chạy mà bị sập hay lỗi gì ráo 😛

Một vài tay cuồng hiệu năng, thần thánh số liệu thì vẫn bảo lưu quan điểm, LiteSpeed nhanh nhất 😛

Về ý này, thì mình thích quan điểm của eva2000 (tác giả Centmin Mod) hay teddysun hơn, họ không đánh giá 1 webserver nào là nhanh hay chịu tải nhất …. mà họ dựa vào nhu cầu, điều kiện của bạn, như chạy trên hệ thống làm sao, 1 core hay 20 core, Ram 512M hay 128GB, chạy cho ứng dụng nào ….

Kiểu số lượng người dùng quá nhiều, thực sự vượt ngưỡng, cỡ 10.000 kết nối mỗi giây, tương tác điên loạn, thì phần lớn đều đồng tình khoản chịu tải, Apache làm rất tốt

Trên WordPress, mình cũng chưa thấy 1 trang nào có số lượng người tới mức đấy, để mà bàn thêm, chưa kể hiện tại cách cấu hình WordPress đa phần sẽ cache, trang gần như tĩnh, bạn thích hoặc thấy webserver nào thuận tiện thì dùng, chúng đều quá thừa nhu cầu để chạy WordPress :]]

Góc độ cá nhân thì mình vẫn thích Nginx nhất, vì dễ dùng, còn thấy thú vị nhất là Caddy 😀 dùng khá là khổ, vì mỗi lần gặp lỗi ngồi search đần người, nhưng khá là vui, bạn nào rỗi rãi có thể dùng thử cho biết

Lựa chọn Control Panel, bash script

  • Đây không hẳn là 1 câu hỏi khó, nhưng lại gây tranh cãi, và thường đấm nhau khá nhiều 😀 đa phần do quan điểm khác nhau

Thông thường, để cài đặt WordPress, bạn cần cài đặt Webserver, PHP, MySQL, sau đó tinh chỉnh lại các cấu hình của 3 thành phần này, thường chúng ta sẽ phải chạy rất nhiều dòng lệnh

Tác dụng của các control panel, bash script giúp bạn đỡ phải gõ từng lệnh, đỡ phải tự cấu hình các giá trị

Các công ty viết các script riêng, vài dịch vụ hosting cũng tự viết để dùng cho dịch vụ của họ, người dùng cuối sau khi dùng 1 thời gian, cũng có thể tự viết để khi cài đặt server mới, chạy bash script cho nhanh

  • Nếu bạn chỉ dùng 1 VPS cho 1 trang web hoặc 1 user, khác biệt của control panel và bash script gần như không đáng kể

Khác biệt chỉ xuất hiện khi bạn có nhu cầu cài thật nhiều VPS, và trên mỗi VPS lại có thật nhiều trang, mỗi trang lại là 1 user, khách hàng khác nhau

Hình dung đơn giản bạn có 10 VPS, trên mỗi VPS bạn cài 3-5 trang, cho 1-3 khách hàng, lúc này vấn đề liên quan tới quản trị và bảo mật đã xuất hiện khá rõ

Tác dụng của các Control Panel lúc này sẽ rất mạnh, bạn có thể log vào quản trị của họ, để quản lý tất cả các VPS, trên mỗi VPS bạn có thể quản lý các user, tinh chỉnh khác nhau ….

  • Ưu điểm lớn nhất của Control Panel là có thể quản lý nhiều VPS, nhiều user khác nhau
  • Tất nhiên, giao diện quản trị trực quan cũng là 1 ưu điểm rất lớn

Vài tay viết bash script thì cứ thích gáy bẩn, teo cấu hình bảo mật lắm :]] tới lúc người dùng vào hỏi, sau plugin này không chạy, rồi tạo thêm user mới để cho người khác dùng làm sao thì lại gào rú “bố đéo làm tính năng đó”, “tính năng kia bố tắt cho bảo mật rồi” :]]

Nói chung, nếu bạn bạn đọc được bài này, mình nghĩ phần lớn đều dùng cá nhân, Control Panel hay bash script hiệu năng, bảo mật …. đều na ná nhau, chọn sản phẩm nào có các tính năng mình cần là được

Cụ thể trên thèng bibica.net mình đang dùng Webinoly, vì tính năng backup, restore server và reverse proxy đủ dùng với các thứ mình đang chạy 😀

Lựa chọn phiên bản PHP

  • Cứ mới nhất, chạy không lỗi với các plugin bạn đang dùng là được 😀

Các trang có lượng truy cập, tương tác hoặc giao dịch mua hàng, sử lý động nhiều (> 50 kết nối mỗi giây), các phiên bản PHP mới nhất thường có hiệu quả rõ rệt hơn

Còn để đỡ mất thời gian, dùng PHP 7.4 như mình đang dùng cũng được, đỡ lăn tăn plugin nào chạy lỗi 😛

Lựa chọn phiên bản MySQL

Về MariaDB, mình không thấy quá nhiều thay đổi về hiệu năng giữa các phiên bản, chủ yếu là ở mỗi phiên bản, họ lại sửa khá nhiều tùy chỉnh mặc định bên trong, nên nếu bạn cài đặt mặc định các phiên bản, sau đó chạy benchmark, đôi khi sẽ thấy sự khác biệt khá lớn, còn dùng thực tế, cấu hình tinh chỉnh lại, đa phần các phiên bản khá tương đồng

  • Madiadb v10.11 là sự lựa chọn đơn giản và an toàn, lý do thì vài bài viết trước đây mình cũng có nói qua, tới Amazon RDS, một dịch vụ siêu to khổng lồ cũng dùng, thì không có lý do gì chúng ta không dùng, phiên bản này cũng hỗ trợ cập nhập 5 năm tiếp theo, có thể an tâm sử dụng

AWS đã phải lựa chọn rất kĩ phiên bản, dùng theo là đủ, đỡ phiền 😛 tất nhiên, bạn có thể dùng các phiên bản cũ hơn, nếu các bản v10.11 gặp lỗi với các plugin, cấu hình đang sử dụng

Kết luận

Các ý trên, mình nói cho dài dòng, thực tế nếu bạn chạy WordPress, gần như dùng gì cũng được, ngon cả 😀 chủ yếu phần lớn các script setup auto, đa phần các tác giả viết trên Ubuntu 22.04, nên mình cũng dùng nhiều trên Ubuntu hơn

  • Cá nhân thì mình vẫn thích nhất combo AlmaLinux 9 – Caddy v2.7.4 – PHP v7.4.33 – MariaDB v10.11.6

Cấu hình đơn giản, chạy mượt, ăn tài nguyên hay gì cũng vừa phải, bạn nào thích khổ dâm có thể thử 😛

  • Cân bằng tốt giữa hiệu năng, tính năng, bảo mật, dễ sử dụng …. thì có thể dùng combo Ubuntu 22.04 - Nginx v1.24.0 - PHP v8.2 – MariaDB v10.11.6

Combo này mình nghĩ đáp ứng tốt cho 99% số lượng người đọc bài này rồi)

  • Muốn hiệu năng nhanh nhất (về mặt lý thuyết) có thể thử LiteSpeed phiên bản trả phí 😀

Thực tế sử dụng mình thấy Taobao, 1 trang có lượng truy suất kinh khủng, vẫn chạy tốt trên Tengine (được viết lại từ Nginx) thì mình nghĩ chọn OS, webserver, PHP, MySQL … nào thì cũng chỉ là 1 phần

Thấy hiệu năng chưa đủ tốt thì cấu hình bên trong thêm lại là được, chứ phần cứng mạnh, các phiên bản PHP, MySQL mới, ngon, mà dùng cấu hình mặc định thì hiệu năng cũng lẹt đẹt cả

Bài này chủ yếu nói nhảm, trừ vài nhu cầu đặc thù, còn lại kết luận cuối vẫn là dùng gì tùy thích, xài cái gì cũng ổn hết :]]

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback.
Notes: However, those deemed to be spam or solely promotional will be deleted.

You can create a Gravatar account, add avatar, then use that email to comment here, your account will have a more beautiful Avatar, easier to recognize with other members.

Please use real emails, you can receive notifications when comments are replied