Performance Optimization (Performance Optimization)
Performance Optimization: بهینهسازی Performance ⚡
بهینهسازی performance برای اپلیکیشنهای production ضروری است. بیایید راهکارهای مختلف را یاد بگیریم.
1. استفاده از Indexes:
مهمترین راه برای بهبود performance، استفاده از indexes مناسب است:
// ساخت index برای فیلدهایی که زیاد query میشوند
db.users.createIndex({ email: 1 })
db.users.createIndex({ city: 1, age: -1 })
// بررسی استفاده از index
db.users.find({ email: "ali@example.com" }).explain("executionStats")
2. استفاده از Projection:
فقط فیلدهای مورد نیاز را برگردانید:
// بد - تمام فیلدها
db.users.find({})
// خوب - فقط فیلدهای مورد نیاز
db.users.find({}, { name: 1, email: 1, _id: 0 })
3. استفاده از Limit:
// محدود کردن نتایج
db.users.find({}).limit(10)
// برای pagination
db.users.find({}).skip(20).limit(10)
4. بهینهسازی Query:
- از operators مناسب استفاده کنید
- از $regex با caution استفاده کنید (میتواند کند باشد)
- از explain برای بررسی query plan استفاده کنید
5. Connection Pooling:
از connection pooling استفاده کنید تا connection های جدید ساخته نشوند:
// در Node.js
const client = new MongoClient(uri, {{
maxPoolSize: 10,
minPoolSize: 5
}});
💡 نکته: همیشه از explain استفاده کنید تا ببینید query شما از index استفاده میکند یا نه. اگر COLLSCAN میبینید، باید index اضافه کنید.
✅ یاد گرفتید: بهینهسازی performance شامل استفاده از indexes، projection، limit و بهینهسازی query ها است!
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.