2009-04-17 5 views
6

मुझे यह नहीं मिला!रैक और रेल धातु (रूबी) के बीच क्या अंतर है?

रैक: http://rack.rubyforge.org/

रेल धातु: http://weblog.rubyonrails.org/2008/12/17/introducing-rails-metal

मैं दो लेख पढ़ सकते हैं और अपनी आँखें धुँधली हो गया। दो घटक कैसे संबंधित हैं? उदाहरण महान होंगे?

उत्तर

12

रैक एक बहुत हल्का विनिर्देश है कि रूबी वेब सर्वर कार्यान्वित कर सकते हैं। यह मिडलवेयर है जिसका अर्थ है कि यह वेब सर्वर (जैसे पैसेंजर) और रेल के बीच में बैठता है।

रेल मेटल अधिकतम प्रदर्शन की आवश्यकता होने पर रेल का उपयोग करके HTTP अनुरोध को संसाधित करने का एक तरीका है। यह आपको धातु के नीचे ले जाता है और सभी सामान्य विशेषताओं (और इस प्रकार ऊपर की ओर) को छोड़ देता है कि मानक रेल के अनुरोध/प्रतिक्रिया चक्र आपको देता है। तकनीकी रूप से, रेल धातु एक रैक हैंडलर का कार्यान्वयन है।

आप विषय जानकारीपूर्ण पर इन दो Railscasts मिल सकती है: का उपयोग कर

आप एक रेल आवेदन के लिए रैक मिडलवेयर ढेर की एक सूची प्राप्त कर सकते हैं rake middleware

+0

बस स्पष्ट होना: रेल धातु में कोई शाब्दिक धातु शामिल नहीं है। :) – Peeja

4

रैक एक सामान्य रूबी एपीआई/अबास्ट्रक्शन की परत है जो विभिन्न अनुप्रयोग ढांचे को वेब सर्वर से एकीकृत करने देता है।

रेल धातु एक रैक हैंडलर के रेल का कार्यान्वयन है। इसमें न केवल एक हैंडलर शामिल है जो रेल को कॉल करता है लेकिन अपने स्वयं के एपीआई को भी उजागर करता है जो आपके लिए अपने स्वयं के हैंडलर बनाने के लिए आसान बनाता है जो वेब सर्वर को दबाते हैं और कोर रेल को बाईपास करते हैं।

4

एक महान चर्चा है और Jesse Newland's site पर कुछ उदाहरण हैं:

तो, अनिवार्य रूप से, रेल धातु रेल 'नए रैक मिडलवेयर समर्थन के चारों ओर एक पतली आवरण है। रैक मिडलवेयर बहुत शक्तिशाली सामान है: फ्रेमवर्क-स्वतंत्र घटक जो प्रक्रिया अनुरोध स्वतंत्र रूप से या अन्य मिडलवेयर के साथ संगीत कार्यक्रम में अनुरोध करते हैं।