# सर्विस वर्कर्स और ऑफ़लाइन समर्थन — वेब प्रदर्शन अनुकूलन

Source: https://www.skillbyai.com/hi/web-performance/web-perf-20

> ऑफ़लाइन समर्थन, तत्काल लोडिंग और बेहतर लचीलापन के लिए सर्विस वर्कर्स लागू करें।

## सर्विस वर्कर जीवन चक्र

`navigator.serviceWorker.register()` से register करें। Lifecycle: install (assets cache करना), activate (पुराना cache साफ़ करना), fetch (requests intercept करना)। Cached responses से offline support और cache-first strategy से repeat visits तुरंत खुलते हैं।

## सर्विस वर्कर्स के साथ कैशिंग रणनीतियां

**Cache First**: cache में हो तो वही दें, वरना network। **Network First**: पहले network आज़माएँ, fail हो तो cache। **Stale-While-Revalidate**: cache तुरंत दें और background में update करें। Resource type के हिसाब से strategy चुनें।

## सर्विस वर्कर सर्वोत्तम प्रथाएं

Scope सावधानी से रखें ताकि अनचाहा behavior न हो। Caches को version करें ताकि deployments साफ़-सुथरे update हों। Analytics में updates monitor करें। Offline mode नियमित रूप से test करें।

त्वरित जाँच

**Quiz:** Cache First रणनीति क्या है?

- [x] यदि उपलब्ध हो तो कैश लौटाएं, अन्यथा नेटवर्क का उपयोग करें
- [ ] हमेशा नेटवर्क से पहले लाएं
- [ ] कैशिंग को अक्षम करें
- [ ] Offline हमेशा blank page दिखाना

*Answer:* यदि उपलब्ध हो तो कैश लौटाएं, अन्यथा नेटवर्क का उपयोग करें. Cache First stored responses तुरंत देता है और miss होने पर ही network जाता है।
