Em cũng đang chưa hiểu sao bác ấy 600k post mà chỉ hết có 1,5GB mysql. @.@ Vì em đang dùng Vultr mà tốn storage quá trời!
À này mình chém gió theo ông anh @money đó mấy bác, tầm chục triệu posts trở lên thì mấy bác inbox @Cháu dì Sáu nha, ảnh mới pro đích thực wordpress đó .
Vài tỉ cũng được tuốt, quan trọng nhất là cache đúng chỗ thôi. Ví dụ những câu lệnh truy vấn nội dung bài viết thì cache lại vào ổ đĩa là lần sau nó load thẳng file cache từ ổ đĩa luôn, không dùng tới Wordpress hoặc SQL thì nó nhanh thôi.
Đang yêu lại từ đầu với 4 triệu post. Wordpress: (Đổi theme cho nhanh)/ Plugin(1): Yoast SEO MySQL: MongoDB: Data ES : Search text Caching : memcache/disk: Image generate/search query # Triển khai htaccess => wordpress => custom-page (3: content/tag/category)=> output. #Hết. Mời các bạn đặt câu hỏi
Đấy, bô lão mở lời rồi. Anh em nào thích nhiều triệu post với wp thì nhanh tay lên, bô lão này hiếm khi có hứng như vầy lắm --- Double Post Merged, Jul 24, 2022, Original Post Date: Jul 24, 2022 --- Nhìn cái hình này, tag nhiều hơn post, thấy quen quá
Wordpress chỉ để lợi dụng theme và plugin này nọ cho đỡ mắc công code. Query đến sẽ dùng custom page của WP để hiển thị nội dung, nội dung được trả về từ MongoDB (toàn bộ dữ liệu được lưu trữ trên MongoDB). #Wordpress functions.php Code: add_action('init', 'redirect_init'); function redirect_init() { add_rewrite_rule('tag/([^/]+)/amp$', 'index.php?pagename=amp&q=$matches[1]', 'top'); add_rewrite_rule('tag/([^/]+)$', 'index.php?pagename=tag&q=$matches[1]', 'top'); } // flush_rewrite_rules($hard = false); add_filter('query_vars', 'wpa5413_query_vars'); function wpa5413_query_vars($query_vars) { $query_vars[] = 'q'; $query_vars[] = 'n'; // $query_vars[] = 'paged'; // $query_vars[] = 'thecat'; // $query_vars[] = 'type'; // $query_vars[] = 'entity'; return $query_vars; } page-tag.php Code: if (isset($wp_query->query_vars['q'])){ $keyword = $wp_query->query_vars['q']; } --- Double Post Merged, Jul 24, 2022, Original Post Date: Jul 24, 2022 --- Cached rồi thì đâu còn liên quan gì tới DB. Tối ưu mấy cái này như gỡ chỉ rối, phải bóc tách, lần ngược từ từ coi nó chậm do cái gì mới gỡ đc, mà có khi gỡ được chỗ này nó lại ra chỗ kia, nói chung phải kiên nhẫn cô lập từng món rồi tối ưu dần thôi. Bonus: Mấy con bot "ghẻ" nó ăn resource cũng kinh lắm, lâu lâu các bạn cũng nên dọn dẹp chặn bớt xíu Nếu dùng CF thì có thể dùng script này để chặn cho toàn bộ domain trong 1 CF account Code: #! /bin/bash #### /home/CF/blockIP.sh "Bad Bots" 138.68.246.55 IP=$2 NOTE=$1 echo $NOTE [email protected] CF_API_KEY=API_Key_f262aac17c curl -X POST "https://api.cloudflare.com/client/v4/accounts/account_id_1743a3f24f3da15d943b/firewall/access_rules/rules" \ -H "X-Auth-Email: $CF_API_EMAIL" \ -H "X-Auth-Key: $CF_API_KEY" \ -H "Content-Type: application/json" \ --data '{"mode":"block","configuration":{"target":"ip","value":"'"$IP"'"},"notes":"'"$NOTE"'"}' # curl -X POST "https://api.cloudflare.com/client/v4/accounts/account_id_1743a3f24f3da15d943b/firewall/access_rules/rules" \ # -H "X-Auth-Email: $CF_API_EMAIL" \ # -H "X-Auth-Key: $CF_API_KEY" \ # -H "Content-Type: application/json" \ # --data '{"mode":"block","configuration":{"target":"ip6","value":"'"$IP"'"},"notes":"'"$NOTE"'"}'
Dùng wp tệ là vì database nó làm theo kiểu tiện lợi, mì ăn liền, áp dụng vào chạy đủ thể loại site, thêm nữa mấy con custom theme viết query database rất khùng, kiểu lấy dc data ra hiển thị thôi chứ ko quan tâm đến performance gì cả. Muốn dùng nó ngon thì làm như bác kia, độ chế database riêng lại cho nó, nhưng dùng như thế thì cũng chẳng khác gì tự code 1 source mới là mấy. Mấy fw như laravel bây giờ cũng hỗ trợ khá đầy đủ, dựng cái web rất nhanh thôi. Kinh nghiệm của 1 coder quèn như mình là công đoạn làm cái frontend ngon nghẻ, chuyên nghiệp còn tốn thời gian hơn viết backend nhiều. Nên mình ko ngại dựng web mới, chỉ ngán khâu làm theme ) cũng có thể do gà html/css.
Same here, e cũng xử lý sẵn đc đống data ở máy rồi, mà xây site chậm quá, riêng cái khâu dựng site dễ nhìn chút đã thấy cực rồi, rồi lại còn SEO friendly các kiểu tính năng nữa