फुल स्टैक डेवलपर इंटरव्यू सवाल

समझाइए कि आप किसी JSON API के response को HTTP परत पर कैसे cache करेंगे।

इंटरव्यूअर असल में क्या परख रहा है, अपना जवाब कैसे स्ट्रक्चर करें, और एक बोला हुआ उदाहरण जिसे आप अपना सकते हैं।

छोटा जवाब

Cache-Control में साफ max-age और दायरा सेट करें: साझा CDN caching के लिए public, हर यूज़र के अलग डेटा के लिए private। stale-while-revalidate जोड़ें ताकि clients पीछे background में ताज़ा करते हुए थोड़ा पुराना डेटा परोस सकें। ETag या Last-Modified रखें ताकि revalidation पूरा body नहीं, सस्ता 304 बने। यूज़र से जुड़ी किसी भी चीज़ पर Authorization या Cookie पर Vary सेट करें ताकि caches कभी दो accounts के तार न मिला दें।

इंटरव्यूअर यह क्यों पूछते हैं

caching वही जगह है जहां फुल स्टैक डेवलपर या तो असली पैसा बचाते हैं या दूसरों का डेटा लीक कर देते हैं, तो इंटरव्यूअर परफॉर्मेंस और सुरक्षा दोनों की सहज समझ टटोल रहा है। वे देखना चाहते हैं कि आपको ब्राउज़र, CDN और origin के caches का फर्क पता है, आप headers का नाम ले सकते हैं इशारा भर नहीं करते, और बिना पूछे ही निजी डेटा वाली नाकामी के बारे में सोचते हैं।

अपना जवाब कैसे स्ट्रक्चर करें

  • वह header बताएं जो नीति तय करता है और उसके अहम directives।
  • ETag से revalidation और 304 response समझाएं।
  • निजी डेटा वाला मामला और Vary कवर करें।
  • बताएं कि डेटा बदलने पर आप invalidate कैसे करते हैं।

उदाहरण जवाब

बोला हुआ उदाहरण, पहले व्यक्ति में

मेरा पहला सवाल यह है कि इस response को अपने पास रखने की इजाज़त किसे है। अगर यह सबके लिए एक जैसा है तो असली max-age के साथ public रखने से CDN ट्रैफिक सोख लेता है और origin तक बात मुश्किल से पहुंचती है। अगर यह हर account का अलग है तो उसे private होना ही पड़ेगा, और मैं Authorization पर Vary सेट करता हूं ताकि कोई साझा cache एक यूज़र का payload दूसरे को न परोस दे। वह गलती चुपचाप होती है और तबाही लाती है, तो मैं उसे साफ साफ जांचता हूं। फिर मैं ETag जोड़ता हूं, क्योंकि 304 पूरे body की जगह कुछ सौ बाइट का पड़ता है, और stale-while-revalidate ताकि यूज़र को ताज़ा करने का इंतज़ार कभी न करना पड़े। जिस चीज़ का हमेशा ताज़ा रहना ज़रूरी है, उसके लिए मैं no-store की जगह छोटा max-age और revalidation चुनता हूं, क्योंकि no-store सस्ती जीत फेंक देता है। पिछले जिस API पर मैंने काम किया, वहां एक public pricing endpoint को no-cache से साठ सेकंड public और stale-while-revalidate पर ले जाने से origin की requests लगभग 90 प्रतिशत घट गईं, और एक मिनट के बासीपन पर किसी ने ध्यान भी नहीं दिया।

जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।

देखें यह कैसे काम करता है

फॉलो-अप सवाल जिनकी उम्मीद रखें

  • नीचे का डेटा बदलने पर CDN को कैसे purge करेंगे?
  • no-cache और no-store में क्या फर्क है?
  • hashed static assets को API के responses से अलग तरीके से कैसे cache करते हैं?

फुल स्टैक डेवलपर के और सवाल

आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।

मेरे सवाल प्रेडिक्ट करें

मुश्किल सवाल पूछे जाने से पहले उनकी रिहर्सल कीजिए

एक लाइव कोपायलट के साथ प्रैक्टिस कीजिए, फिर तैयार होकर अंदर जाइए। $29 Session Pass आपको इंटरव्यू पार करा देता है, न कोई सब्सक्रिप्शन, न कोई लॉक-इन।

GhostPilot पाएं