GCP - App Engine Enum
मौलिक जानकारी
Google Cloud Platform's (GCP) App Engine एक मजबूत, सर्वरलेस प्लेटफ़ॉर्म है जो वेब एप्लिकेशनों के विकास और होस्टिंग के लिए बड़े पैमाने पर डिज़ाइन किया गया है। इस प्लेटफ़ॉर्म का डिज़ाइन विकास प्रक्रिया को सरल बनाने और एप्लिकेशनों की प्रबंधन को बेहतर बनाने पर ध्यान केंद्रित है। GCP के App Engine की मुख्य विशेषताएँ और लाभ शामिल हैं:
सर्वरलेस आर्किटेक्चर: App Engine स्वचालित रूप से इंफ्रास्ट्रक्चर का संचालन करता है, सर्वर प्रोविज़निंग, कॉन्फ़िगरेशन, और स्केलिंग सहित। यह विकासकोड लिखने पर ध्यान केंद्रित करने देता है बिना नीचे के हार्डवेयर के बारे में चिंता किए।
स्वचालित स्केलिंग: App Engine आपके एप्लिकेशन को ट्रैफ़िक की मात्रा के प्रतिक्रिया में स्वचालित रूप से स्केल कर सकता है। यह ट्रैफ़िक बढ़ने पर स्केल करता है और ट्रैफ़िक कम होने पर स्केल डाउन करता है, जो लागत और प्रदर्शन को अनुकूलित करने में मदद करता है।
भाषा और रनटाइम समर्थन: यह जावा, पायथन, नोड.जेएस, गो, रूबी, पीएचपी, और .नेट जैसी लोकप्रिय प्रोग्रामिंग भाषाओं का समर्थन करता है। आप अपने एप्लिकेशन को स्टैंडर्ड या फ्लेक्सिबल वातावरण में चला सकते हैं। स्टैंडर्ड वातावरण अधिक प्रतिबंधित है लेकिन विशेष भाषाओं के लिए अधिक अनुकूलित है, जबकि फ्लेक्सिबल वातावरण अधिक अनुकूलन की अनुमति देता है।
एकीकृत सेवाएं: App Engine कई अन्य GCP सेवाओं के साथ एकीकृत है, जैसे Cloud SQL, Cloud Storage, Cloud Datastore, और अधिक। यह एकीकरण क्लाउड-आधारित एप्लिकेशनों की वास्तुकला को सरल बनाता है।
वर्शनिंग और ट्रैफ़िक स्प्लिटिंग: आप आसानी से अपने एप्लिकेशन के कई संस्करण डिप्लॉय कर सकते हैं और फिर उनमें से ट्रैफ़िक को A/B टेस्टिंग या धीरे-धीरे रोलआउट के लिए विभाजित कर सकते हैं।
एप्लिकेशन इंसाइट्स: App Engine लॉगिंग, उपयोगकर्ता प्रमाणीकरण, और एप्लिकेशन की मॉनिटरिंग और प्रबंधन के लिए डेवलपर टूल्स की एक सुइट जैसी निर्मित सेवाएं प्रदान करता है।
सुरक्षा: इसमें एप्लिकेशन वर्जनिंग, सुरक्षित कनेक्शनों के लिए SSL/TLS प्रमाणपत्र, और पहचान और एक्सेस प्रबंधन जैसी इनबिल्ट सुरक्षा विशेषताएँ शामिल हैं।
फ़ायरवॉल
एप्लिकेशन्स चलाने वाले इंस्टेंसेस के लिए एक सरल फ़ायरवॉल कॉन्फ़िगर किया जा सकता है जिसमें निम्नलिखित विकल्प होते हैं:
SA
इन एप्स द्वारा उपयोग किए जाने वाले डिफ़ॉल्ट सर्विस अकाउंट है <proj-name>@appspot.gserviceaccount.com
जिसके पास प्रोजेक्ट पर संपादक भूमिका है और APP Engine इंस्टेंस के अंदर के SAs क्लाउड-प्लेटफ़ॉर्म स्कोप के साथ चलते हैं (अन्यों में).
स्टोरेज
सोर्स कोड और मेटाडेटा बकेट में स्वचालित रूप से स्टोर किया जाता है जिनके नाम होते हैं <proj-id>.appspot.com
और staging.<proj-id>.appspot.com
और <country>.<proj-id>.appspot.com
हर फ़ाइल को एप्लिकेशन का शा1 ऑफ़ कंटेंट के रूप में फ़ाइल नाम के साथ स्टोर किया जाता है:
staging.<proj-id>.appspot.com
के ae
फ़ोल्डर के अंदर, हर संस्करण के लिए एक फ़ोल्डर मौजूद है जिसमें सोर्स कोड फ़ाइलें होती हैं और manifest.json
फ़ाइल होती है जो एप्लिकेशन के घटकों का वर्णन करती है:
कंटेनर
वेब ऐप अंततः एक कंटेनर के अंदर निष्पादित किया जाएगा और कोड बिल्ड का उपयोग कंटेनर बनाने के लिए किया जाता है।
URLs और क्षेत्र
डिफ़ॉल्ट वेब पेज का URL <project-uniq-name>.appspot.com
में उजागर किया जाएगा हालांकि पुराने संस्करणों का URL थोड़ा भिन्न होगा, जैसे https://20240117t001540-dot-<project-uniq-name>.uc.r.appspot.com
(शुरुआती समयचिह्न का ध्यान दें)।
ऐसा लग सकता है कि केवल 1 एप्लिकेशन इंजन वेब एप्लिकेशन प्रति क्षेत्र डिप्लॉय करना संभव है, लेकिन app.yml
में service: <servicename>
को इंडिकेट करना संभव है और एक नयी सेवा (एक नया वेब) बनाना संभव है। इस नए वेब के लिए URL का प्रारूप होगा <servicename>-dot-<project-uniq-name>.appspot.com
।
गणना
हर बार जब आप ऐप में नया कोड अपलोड करते हैं, एक नया संस्करण बनाया जाता है। सभी संस्करण संग्रहीत होते हैं और उनके पास एक उन्हें एक्सेस करने के लिए एक URL भी होता है। इसलिए पुराने संस्करण के कोड को संशोधित करना एक महान स्थिरता तकनीक हो सकता है।
क्लाउड फंक्शन के साथ, एक संभावना है कि एप्लिकेशन समय पर एनवायरमेंट वेरिएबल्स के माध्यम से एक्सेस किए जाने वाले रहस्य पर आधारित हो सकता है। ये वेरिएबल्स एक app.yaml
फ़ाइल में संग्रहित होते हैं जिन्हें निम्नलिखित रूप से एक्सेस किया जा सकता है:
विशेषाधिकार उन्नयन
pageGCP - AppEngine Privescअप्रमाणित एनुम
pageGCP - App Engine Unauthenticated Enumपोस्ट एक्सप्लोइटेशन
pageGCP - App Engine Post Exploitationस्थिरता
pageGCP - App Engine PersistenceLast updated