तो, मूल रूप से मैं एक लंबी-मतदान अनुप्रयोग बनाना चाहता हूं जो उसकेोकू पर आरक्यू का उपयोग कर रहा है। मैंने इस प्रश्न को Flask: passing around background worker job (rq, redis) पर देखा है लेकिन इससे मदद नहीं मिलती है।आरक्यू पायथन में आईडी द्वारा नौकरी कैसे प्राप्त करें?
यह मूल रूप से मैं कर रहा हूं।
@app.route('/do_something', methods=['POST'])
def get_keywords():
data_json = json.loads(request.data)
text = urllib.unquote(data_json["sentence"])
job = q.enqueue(keyword_extraction.extract, text)
return job.key
@app.route('/do_something/<job_id>', methods=['GET'])
def get_keywords_results(job_id):
job = Job().fetch(job_id)
if(not job.is_finished):
return "Not yet", 202
else:
return str(job.result)
कुछ भी नहीं फैंसी है, इसलिए जब पोस्ट अनुरोध आता है, यह काम कतार और वापस तुरंत job_id लौट उपयोगकर्ता के लिए, और फिर उपयोगकर्ता मतदान परिणाम रखने के लिए कुंजी का उपयोग करेगा। हालांकि, मैं इस इस लाइन के रूप में काम करने के लिए Job().fetch(job_id)
रिटर्न
NoRedisConnectionException: Could not resolve a Redis connection.
किसी भी मदद वास्तव में सराहना की जाएगी प्राप्त नहीं कर पा रहे।
क्या आपने रेडिस एडन इंस्टॉल किया था और इसे ठीक से सेट अप किया था? – CraigKerstiens
मैंने इसे अपने लोकहोस्ट पर परीक्षण किया। यह काम ठीक होने पर ठीक काम करता है। लेकिन जब मैं इसे जॉब() प्राप्त करने का प्रयास करता हूं। Fetch (job_id) यह मेरी त्रुटि देता है। – toy