मैं mysql-proxy के लिए स्क्रिप्टिंग के साथ खेल रहा हूँ। जो मैं पूरा करने की कोशिश कर रहा हूं वह अप्रासंगिक है। हालांकि, मुझे यह पता चल रहा है कि लुआ इंटरफेस के तत्व मौजूद हैं जो अनियंत्रित हैं। मेरे पास बड़ी "धूम्रपान बंदूक" है disconnect_client()
हुक है। मैं इसे the official documentation में कहीं भी प्रलेखित हालांकि यह explanation of the admin interface पर एक उदाहरण में प्रयोग किया जाता है नहीं मिल रहा है,। यह उदाहरण दस्तावेज़ों में बड़े पैमाने पर भी उपयोग किया जाता है। एक त्वरित ग्रेप से पता चलता निम्न स्क्रिप्ट में इसके उपयोग 5.5.8 वितरण में शामिल:क्या mysql-proxy lua स्क्रिप्टिंग के लिए पूर्ण दस्तावेज़ीकरण का एक सेट है?
सक्रिय queries.lua
सक्रिय transactions.lua
लोड multi.lua
ro-pooling.lua
rw-splitting.lua
ट्यूटोरियल-keepalive.lua
मेरे अन्य उदाहरण है कि मेरी आँखों पकड़ा गया proxy.global.backends
तालिका में प्रविष्टियों के लिए विशेषताओं की सूची है। documentation सूचियों निम्न विशेषताओं:
dst.name
dst.address
dst.port
connected_clients
state
type
हालांकि, उदाहरण स्क्रिप्ट के कई एक काफी जटिल तत्व पूल कहा जाता है के संदर्भ हैं। उदाहरण के लिए tutorial-keepalive.lua
लें:
local s = proxy.global.backends[i]
local pool = s.pool
local cur_idle = pool.users[proxy.connection.client.username].cur_idle_connections
पहले तो मैंने सोचा कि यह lua में कहीं और जोड़ा जा रहा था, लेकिन मैं देखा है और मैं proxy.global.backends [i] में बताए किसी भी कोड नहीं मिल रहा। पूल।
तो, दो सवाल मुझे लगता है:
- हूँ कि मैं पागल हो? कृपया यह दिखाने के लिए स्वतंत्र महसूस करें कि मैंने स्पष्ट रूप से अनदेखा कैसे किया है और दस्तावेज़ीकरण वास्तव में काफी स्पष्ट है।
- मान लिया जाये कि मैं सही हूँ, वहाँ कहीं भी पूरा प्रलेखन मिल रहा है? एक अच्छा लिंक बहुत अच्छा होगा (हालांकि मैं एक अप गूगल सकता है नहीं), लेकिन फिर भी "mysql-प्रॉक्सी distro है कि इंटरफेस को परिभाषित करता से इस ग फ़ाइल पर एक नज़र डालें"। कम से कम मुझे कुछ करने के लिए कुछ देना होगा।
धन्यवाद