परियोजना का विवरण
अनुवादितयह कार्य पूरे GraphQL बैकएंड स्टैक को कवर करता है: हमारे प्रमुख संस्थाओं के लिए एक प्रकार-प्रथम स्कीमा, अनुकूलित PostgreSQL पर रिसॉल्वर, संदर्भ के माध्यम से पास किया गया JWT प्रमाणीकरण, और क्षेत्र-स्तरीय प्राधिकरण ताकि विभिन्न भूमिकाएँ केवल वही देख सकें जो उन्हें देखना चाहिए। वास्तविक समय का हिस्सा भी महत्वपूर्ण है — ऑर्डर स्थिति और सूचनाएँ क्लाइंट्स तक WebSocket सब्सक्रिप्शन के माध्यम से पहुंचनी चाहिए, न कि निरंतर पोलिंग के माध्यम से। सहीता के अलावा, हम सुरक्षा और क्वेरी लागत नियंत्रण की परवाह करते हैं: गहराई और जटिलता सीमाएँ, साथ ही मोबाइल क्लाइंट्स के लिए स्थायी क्वेरी।
चूंकि यह एक लाइव एपीआई को प्रतिस्थापित करता है, एक साफ माइग्रेशन पथ और स्पष्ट दस्तावेज़ कार्य का हिस्सा हैं, बोनस नहीं। हमें बताएं कि आपने कौन सा GraphQL एपीआई शिप किया है और आपने प्राधिकरण और प्रदर्शन समस्याओं को कैसे हल किया। विस्तृत दायरा नीचे।
1. स्कीमा डिज़ाइन
— प्रकार-प्रथम: उपयोगकर्ता, उत्पाद, ऑर्डर, समीक्षा, सूचना
— इनपुट प्रकार, म्यूटेशन
— कस्टम स्केलर्स (तारीख, JSON, अपलोड)
— स्थिति क्षेत्रों के लिए एनम प्रकार
2. कार्यान्वयन
— Apollo Server 4 + Express
— N+1 क्वेरी को रोकने के लिए DataLoader
— संदर्भ के माध्यम से JWT प्रमाणीकरण
— क्षेत्र-स्तरीय प्राधिकरण
— WebSocket के माध्यम से सब्सक्रिप्शन (ऑर्डर स्थिति, सूचनाएँ)
3. प्रदर्शन और गुणवत्ता
— क्वेरी गहराई/जटिलता सीमाएँ
— मोबाइल क्लाइंट्स के लिए स्थायी क्वेरी
— PostgreSQL अनुकूलन (EXPLAIN ANALYZE)
— रिसॉल्वर के लिए यूनिट परीक्षण (Jest + Supertest)
— Apollo Studio एकीकरण
4. दस्तावेज़ीकरण
— दस्तावेज़ित स्कीमा (सभी प्रकारों का विवरण)
— Postman/Insomnia संग्रह
— REST से माइग्रेशन गाइड