में डेटाबेस कनेक्शन पूलिंग मैंने अभी रूबी के साथ शुरुआत की और मैं सिनात्रा के साथ खेल रहा हूं, लेकिन अनुरोधों के बीच डेटाबेस कनेक्शन साझा करने का कोई तरीका नहीं मिला।रूबी
मैं जावा वेब विकास से आया था और आपको मूलभूत चीजों में से एक डेटाबेस कनेक्शन को पूल करना है, इसलिए मुझे यकीन है कि रूबी में कुछ ऐसा ही मौजूद है, लेकिन मुझे बस यह नहीं मिल रहा है।
ActiveRecord और DataMapper इस सुविधा की पेशकश करते हैं लेकिन मुझे ORM की आवश्यकता नहीं है और केवल नियमित SQL क्वेरी बनाना चाहते हैं।
क्या सिनात्रा के लिए कुछ विशिष्ट दृष्टिकोण है या सभी रैक-आधारित अनुप्रयोगों के सामान्य तरीके हैं?
धन्यवाद, लेकिन अगर मैं एक आवृत्ति चर बना देता हूं, हर बार जब एप्लिकेशन ऑब्जेक्ट बनाया जाता है, तो नया कनेक्शन भी बनाया जाता है, है ना? तो कनेक्शन जोड़ने के साथ यह कैसे मदद करता है? – Nikoi
एप्लिकेशन अनुरोधों के बीच बंद नहीं है जबतक कि आप इसे मैन्युअल रूप से बंद नहीं करते। आवेदन लोड हो गया है और अनुरोधों का जवाब देगा और अपने जीवनकाल में अपने कनेक्शन को जारी रखेगा। रुबी में कनेक्शन पूलिंग के लिए मुझे सबसे अच्छा पता है। –
शायद किसी भी ओआरएम जैसे [सेक्वेल] (http://sequel.rubyforge.org), [डेटामैपर] (http://datamapper.org) या [ActiveRecord] (http: //) के बिना सीधे MySQL 2 का उपयोग करना एक बुरा विचार है। rubygems.org/gems/activerecord)। ये ज्यादातर मामलों में स्वचालित रूप से आपके लिए पूलिंग करेंगे। यदि आप "बस SQL क्वेरी कर रहे हैं" तो आपका एप्लिकेशन जल्दी ही एक गड़बड़ी खत्म कर देगा। क्वेरी जेनरेटर वास्तव में काफी अच्छा है क्योंकि वास्तव में वहां जाकर एसक्यूएल के करीब होने के लिए सीक्वेल सबसे अच्छा विकल्प है। – tadman