Üretim gelincik dizin oluşturma kodu
Gelincik başına 11* *MongooseJS
MongoDB
/Node.js
için:
Uygulamanız başladığında, Firavun faresi otomatik olarak şemada tanımlanan her dizin için
ensureIndex
der. Gelişim için güzel olsa da, bu davranış, dizin oluşturma önemli bir performans etkisi yaratabilir beri üretimde devre dışı bırakılması tavsiye edilir. Yanlış şemasıautoIndex
seçeneği ayarlayarak bu davranışı devre dışı bırakmak.
Bu Mongo git ve mantıklı olan uygulama başlangıç, tüm dizinler üretmek için talimat gelen Firavun faresi optimize dağıtma önce Firavun faresi otomatik indeksleme kaldırma talimat görünüyor.
Üretim kodunda dizin işlemek için doğru yolu nedir? Belki de bir dış komut, dizin oluşturmak? Ya da belki de ensureIndex
eğer tek bir uygulama DB yazmak her zaman oluşur bir dizin devam edecek çünkü bir koleksiyon için tek okuyucu/yazıcı ise gereksizdir?
Düzenleme:Ek, MongoDB iyi documentation sağlarnasılindeksleme yapmak, ama değilnedenyane zamanAçık Dizin Oluşturma yönergeleri yapılmalıdır. Bana öyle geliyor ki, dizinler tutulmalıdır güncel yazar tarafından uygulamaları otomatik olarak koleksiyonları ile varolan dizinleri ve ensureIndex
aslında daha çok bir kerelik bir şey (işiniz bittiğinde yeni bir dizin uygulanan bu durumda, Firavun faresi autoIndex
olmalı yok işlem altında normal bir sunucu yeniden başlatın.
CEVAP
Hiç Gelincik belgelere kadar geniş üretim autoIndex
devre dışı bırakmak önerir neden anlayamadım. Dizin eklendiğinde, ensureIndex
sonraki aramalar sadece dizin zaten var olduğunu göreceksiniz ve geri dönün. Bu yüzden sadece ilk dizini oluştururken performansı üzerinde bir etkisi vardır, ve o zaman koleksiyonları dizin oluşturma hızlı olmak istiyor zaten bu yüzden sık sık boş.
Benim önerim ise bırak autoIndex
etkin sürece belirli bir durum nerede sorun çıkartıyor; gibi Eğer eklemek istediğiniz bir yeni dizin için varolan bir koleksiyonu olan milyonlarca dokümanlar ve daha fazla kontrol ettiğimizde yarattı.
Hata "gnu/taslakları-32.h: böyle ...
SQL Server : bir tablo değişkeni üzeri...
IIS sanal dizin oluÅŸturma express...
Nasıl kod geliştirme ve üretim kodu ko...
Devre dışı bırakmak, belirli bir klasö...