Flask fragt Mongdb nur langsam ab
Ich benutze Flaks, um eine Admin-Website für die Überwachung von MongoDB-Benutzerdaten zu erstellen. Meine Abfrage funktioniert, ist aber sehr langsam. Das Laden von HTML dauert ca. 3-5 Sekunden.
Ich habe die Einfügeabfrage getestet und sie funktioniert in weniger als 0,5 Sekunden. Ich denke nicht, dass es ein Serverproblem ist.
Flaschencodes A (es benutzt Pymongo um MongoDB zu verbinden)
@app.route('/admin/dashboard/phonebook')
def admin_phonebook():
collection = db.phonebook
cnt = collection.find().count()
result = collection.find()
for i in range(cnt):
flash(result[i]['name'],'name')
flash(result[i]['phone'],'phone')
return render_template('admin/dashboard/phonebook.html',length = cnt)
Flaschencodes B (Es ist die gleiche Geschwindigkeit, um das Ergebnis wie oben angegeben anzuzeigen.)
@app.route('/admin/dashboard/phonebook_register')
def admin_phonebook_register():
collection = db.phonebook
result = collection.find().sort('reg_date',-1)
cnt = collection.find({},{'_id':0}).count()
for i in range(cnt):
flash(result[i]['name'],'name')
flash(result[i]['phone'],'phone')
return render_template('admin/dashboard/phonebook_register.html',length = cnt)
Ist das langsam, weil ich die gesamte Datenbank zähle? Die Telefonbuchdatentabelle enthält nur 20 Ergebnisse.