इस प्रोजेक्ट के बारे में

पार्का समय के साथ CPU और मेमोरी उपयोग का विश्लेषण करने के लिए एक ओपन-सोर्स सतत प्रोफाइलिंग प्लेटफॉर्म है, जो लाइन नंबर तक जाता है। इसे पूरे इंफ्रास्ट्रक्चर में प्रोफाइलिंग डेटा एकत्र करके इंफ्रास्ट्रक्चर लागत कम करने, प्रदर्शन सुधारने और विश्वसनीयता बढ़ाने में मदद करने के लिए डिज़ाइन किया गया है। README में वर्णित प्रमुख क्षमताएं: - eBPF प्रोफाइलर: eBPF का उपयोग करने वाला एक एकल प्रोफाइलर कम ओवरहेड के साथ पूरे इंफ्रास्ट्रक्चर में Kubernetes या systemd से लक्ष्यों को स्वचालित रूप से खोजता है। यह C, C++, Rust, और Go जैसी भाषाओं का समर्थन करता है। - ओपन स्टैंडर्ड्स: eBPF-आधारित प्रोफाइलर pprof-प्रारूपित प्रोफाइल तैयार करता है, और पार्का किसी भी pprof-प्रारूपित प्रोफाइल को इनजेस्ट कर सकता है, जो व्यापक भाषा अपनाने और मौजूदा टूलिंग के साथ अंतरसंचालनीयता का समर्थन करता है। - अनुकूलित स्टोरेज और क्वेरीिंग: प्रोफाइलिंग डेटा कच्चे डेटा को बनाए रखते हुए कुशलता से संग्रहीत किया जाता है। डेटा को लेबल-आधारित खोज के माध्यम से काटा और विभाजित किया जा सकता है। उपयोगकर्ता पूरे इंफ्रास्ट्रक्चर में प्रोफाइलिंग डेटा को एकत्र कर सकते हैं, समय में एकल प्रोफाइल देख सकते हैं, या आयामों में तुलना कर सकते हैं। README में हाइलाइट किए गए उपयोग के मामलों में बर्बाद संसाधनों को ढूंढकर पैसे बचाना, सांख्यिकीय महत्व के साथ हॉट पाथ की पहचान करके और डिप्लॉय, संस्करणों, और क्षेत्रों जैसे लेबल में अंतर की तुलना करके प्रदर्शन में सुधार करना, और मेमोरी लीक या क्षणिक CPU या I/O स्पाइक जैसी घटनाओं को समझना शामिल है। इंस्टॉलेशन और दस्तावेज़ीकरण प्रोजेक्ट वेबसाइट पर उपलब्ध हैं। विकास के लिए Go, Node, और Pnpm की आवश्यकता होती है। रिपॉजिटरी में एक Makefile बिल्ड प्रक्रिया शामिल है, और संकलित बाइनरी डिफ़ॉल्ट रूप से पोर्ट 7070 पर वेब UI के साथ स्थानीय रूप से चलती है। कॉन्फ़िगरेशन को फ्लैग और एक parca.yaml फ़ाइल के माध्यम से संभाला जाता है, जो HTTP सेटिंग्स, स्टोरेज विकल्प, सिंबलाइज़ेशन, debuginfo हैंडलिंग, और रिमोट स्टोर कनेक्शन को कवर करता है। यह प्रोजेक्ट मूल रूप से Polar Signals द्वारा विकसित किया गया था और Apache 2 लाइसेंस के तहत जारी किया गया है।