Swift सिर्फ मोबाइल डेवलपमेंट ही क्यों नहीं है?
\n\nजब आप "Swift" सुनते हैं, तो पहला जुड़ाव iOS ऐप्स से होता है। लेकिन हाल के वर्षों में Swift आत्मविश्वास से सर्वर साइड पर कदम रख रहा है। और यह सिर्फ प्रचार नहीं है: Apple सक्रिय रूप से पारिस्थितिकी तंत्र विकसित कर रहा है, और समुदाय शक्तिशाली फ्रेमवर्क बना रहा है। यदि आप पहले से ही iOS के लिए Swift में लिख रहे हैं और अपने क्षितिज का विस्तार करना चाहते हैं — Swift पर माइक्रोसर्विसेज़ आपका तार्किक अगला कदम होगा।
\n\nमाइक्रोसर्विसेज़ ही क्यों? क्योंकि यह बैकएंड बनाने का आधुनिक मानक है: छोटी, स्वतंत्र सेवाएँ जिन्हें स्केल और अपडेट करना आसान है। और Swift अपने प्रदर्शन, टाइप सुरक्षा और संक्षिप्त सिंटैक्स के साथ इसके लिए एकदम सही है। इस लेख में, हम देखेंगे कि Swift पर माइक्रोसर्विसेज़ बनाना कहाँ से शुरू करें, वास्तविक कोड लिखेंगे और अपनी पहली सेवा चलाएँगे।
\n\nशुरू करने से पहले क्या जानना चाहिए?
\n\nआराम से पढ़ने के लिए आपको आवश्यकता होगी:
\n- \n
- Swift का बुनियादी ज्ञान (चर, फ़ंक्शन, स्ट्रक्चर) \n
- HTTP और REST की समझ (कम से कम "एक अनुरोध है - एक प्रतिक्रिया है" के स्तर पर) \n
- स्थापित
brew(macOS के लिए) या Docker (Linux के लिए) \n
अगर कुछ कमी है — तो कोई बात नहीं, हम चलते-चलते समझ जाएँगे।
\n\nउपकरण चुनना: Vapor — सर्वर-साइड Swift का राजा
\n\nSwift के लिए सर्वर फ्रेमवर्क के बाजार में दो मुख्य खिलाड़ी हैं: Vapor और Kitura (IBM से)। लेकिन Kitura, दुर्भाग्य से, लगभग फ्रीज हो चुका है। जबकि Vapor सक्रिय रूप से विकसित हो रहा है, इसका एक बड़ा समुदाय और दस्तावेज़ीकरण है। इसलिए हमारी पसंद — Vapor है।
\n\nVapor सब कुछ आउट-ऑफ-द-बॉक्स देता है: रूटिंग, middleware, डेटाबेस के साथ काम, WebSocket, async/await के माध्यम से एसिंक्रोनसी। Swift पर माइक्रोसर्विस आर्किटेक्चर बनाने के लिए आदर्श।
Vapor Toolbox स्थापित करना
\nटर्मिनल खोलें और निष्पादित करें:
\nbrew install vapor\nस्थापना के बाद जाँच करें:
\nvapor --help\nयदि आप कमांड की सूची देखते हैं — सब ठीक है, आप पहला प्रोजेक्ट बना सकते हैं।
\n\nपहला माइक्रोसर्विस बनाना: Hello, World!
\n\nहमारा पहला माइक्रोसर्विस सरल होगा: यह GET अनुरोध स्वीकार करेगा और JSON लौटाएगा। लेकिन हम इसे सही तरीके से करेंगे — विस्तार के लिए तैयार आर्किटेक्चर के साथ।
\n\nचरण 1. प्रोजेक्ट बनाना
\nvapor new HelloMicroservice --template=auth\ncd HelloMicroservice\nफ़्लैग --template=auth प्रमाणीकरण के साथ एक बुनियादी संरचना जोड़ेगा। माइक्रोसर्विस के लिए यह एक अच्छा अभ्यास है — तुरंत सुरक्षा को शामिल करना।
चरण 2. प्रोजेक्ट संरचना
\nबनाने के बाद आपको यह संरचना दिखाई देगी:
\nHelloMicroservice/\n├── Sources/\n│ ├── App/\n│ │ ├── Controllers/\n│ │ ├── Models/\n│ │ └── configure.swift\n│ └── Run/\n│ └── main.swift\n├── Tests/\n├── Dockerfile\n└── Package.swift\nDockerfile पर ध्यान दें — यह कंटेनरीकरण के लिए पहले से तैयार टेम्पलेट है। Docker के बिना माइक्रोसर्विसेज़ — पनीर के बिना पिज़्ज़ा जैसा है।
चरण 3. पहला एंडपॉइंट लिखना
\nहम Sources/App/Controllers/UserController.swift खोलेंगे (यदि यह मौजूद नहीं है — तो बनाएँ)। एक सरल विधि जोड़ें:
import Vapor\n\nstruct HealthController: RouteCollection {\n func boot(routes: RoutesBuilder) throws {\n let health = routes.grouped("api", "health")\n health.get(use: checkHealth)\n }\n \n @Sendable\n func checkHealth(req: Request) async throws -> HTTPStatus {\n return .ok\n }\n}\nयह एक क्लासिक health-check है — किसी भी माइक्रोसर्विस का आधार। अब इसे configure.swift में पंजीकृत करें:
// configure फ़ंक्शन के अंत में\ntry app.register(collection: HealthController())\n\nचरण 4. चलाना और परीक्षण करना
\nvapor run\nब्राउज़र या टर्मिनल खोलें:
\ncurl http://localhost:8080/api/health\n# उत्तर: 200 OK\nबधाई हो! आपने