Chào các bác. Hiện tại mình đang bí vấn đề code comment trong site. site mình đang dùng comment của bên thứ 3 (facebook) nhưng bắt đầu có dấu hiện nhiều quá bị chặn. trước đây thì mình có code comment nhưng lag quá đành gỡ bỏ. giờ tìm cách code lại để tối ưu hơn. Website thì có 1000 request/s. số lượng comment thì tầm 10 000 comment/ ngày. url web thì 30 000 link (mỗi url ~10k comment) trước mình có code để comment trong 10 table của mysql thì nặng lên 50G * 10 load ko nổi. + giờ mình muốn đổi qua mongodb với 1 url là 1 table thì theo ae có khả thi ko ? mình nghĩ như vậy vì comment của url nào thì thằng đó lấy và xử lý thôi(vote, time) không cần liên quan đến các url khác. nhưng vì tạo ra 30 k table trong mongo thì có khả thi ko thì mình ko biết nữa. mong được các Anh Em trong đây tư vấn giúp. giải ngố giúp mình ----------------------------------------------------------------------- nhân tiện ở đây bro nào nhận làm cái này thì inbox nhé.
ngoài facebook còn nhiều dịch vụ comment khác mà. Với lại site như này chắc doanh thu cũng khủng lắm.... bỏ tiền ra mua giải pháp đi cho nhanh. Mò mẫm làm gì/
Kiếm mấy ông nodejs + mongodb cứng tí ấy.... setup cluster db khỏe tí là bắn comment thoải mái. Setup mongodb cluster, UI, UX tốt tí là ổn. Ví dụ: Action bắn comment tốt là như FB ấy... user gõ enter phát là hiển thị liền, bên dưới JS bắn ngầm lên server làm cho trải nghiệm mượt mà luôn. Trên server nhận tin thì response DONE luôn tức thì... rồi code trên server sử lý tống vào DB cũng ngầm luôn => mọi thứ cứ như điện giật. Làm 5 con VPS 5$/mo setup 1 master 4 sharding => thoải mái luôn.
Nếu nhu cầu của bác chỉ là insert và get cmt theo từng url thì dùng 1 collection mongo và tạo index cho field url là ok. Tối ưu hơn nữa thì thay vì lưu hẳn url vào cmt thì bác tạo collection urls rồi lấy id của url làm khóa ngoại và đánh index trên url_id đó (mục đích là để tạo ra field có giá trị tăng dần thì insert và query với index trên field đó sẽ nhanh hơn là để dạng url thuần) Như hiện tại mình cũng đang có 1 collection cmt như thế với 50tr cmt, run trên server 2cpu 2g ram mà cpu nhẩy có 1-10% 1000 request / s => site bác khủng vãi )