Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

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

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cpra — CPRA एक उच्च-प्रदर्शन बुनियादी ढांचा निगरानी प्रणाली है जो बड़े पैमाने पर माइक्रोसर्विस आर्किटेक्चर का प्रबंधन करने वाली प्लेटफ़ॉर्म टीमों के लिए डिज़ाइन की गई है। Entity-Component-System (ECS) आर्किटेक्चर और कतारबद्ध सिद्धांतों पर निर्मित, CPRA SLO लक्ष्यों को पूरा करने के लिए स्वचालित वर्कर पूल स्केलिंग के साथ 1,000,000+ समवर्ती स्वास्थ्य जांच संभालता है। | Kitploit
उपकरण/GitHubGitHub/ziad-hsn/cpra
क्लाउड इन्फ्रास्ट्रक्चर सुरक्षासामान्य उपयोगिताएँकंटेनर सुरक्षाकॉन्फ़िगरेशन ऑडिटिंगनेटवर्क सुरक्षाDevSecOpsघटना प्रतिक्रियाविसंगति का पता लगानालॉग विश्लेषण
GitHubziad-hsn/cpra

cpra

रिपॉजिटरी देखें
146 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
वेबसाइट

विवरण

CPRA एक उच्च-प्रदर्शन बुनियादी ढांचा निगरानी प्रणाली है जो बड़े पैमाने पर माइक्रोसर्विस आर्किटेक्चर का प्रबंधन करने वाली प्लेटफ़ॉर्म टीमों के लिए डिज़ाइन की गई है। Entity-Component-System (ECS) आर्किटेक्चर और कतारबद्ध सिद्धांतों पर निर्मित, CPRA SLO लक्ष्यों को पूरा करने के लिए स्वचालित वर्कर पूल स्केलिंग के साथ 1,000,000+ समवर्ती स्वास्थ्य जांच संभालता है।

साझा करें

CPRA - समवर्ती पल्स-रिमेडिएशन-अलर्टिंग सिस्टम

Go Version License Documentation

स्वचालित सुधार और गतिशील कार्यकर्ता स्केलिंग के साथ लाखों सेवाओं की समवर्ती निगरानी करें।

CPRA एक उच्च-प्रदर्शन बुनियादी ढांचा निगरानी प्रणाली है जो बड़े पैमाने पर माइक्रोसर्विस आर्किटेक्चर का प्रबंधन करने वाली प्लेटफॉर्म टीमों के लिए डिज़ाइन की गई है। एंटिटी-कॉम्पोनेंट-सिस्टम (ECS) आर्किटेक्चर और कतारबद्ध सिद्धांतों पर निर्मित, CPRA SLO लक्ष्यों को पूरा करने के लिए स्वचालित कार्यकर्ता पूल स्केलिंग के साथ 1,000,000+ समवर्ती स्वास्थ्य जांचों को संभालता है।


विषय सूची

  • CPRA क्यों?
  • मुख्य विशेषताएं
  • प्रदर्शन विशेषताएं
  • आर्किटेक्चर
  • त्वरित प्रारंभ
  • स्थापना
  • कॉन्फ़िगरेशन
  • कमांड-लाइन विकल्प
  • दस्तावेज़ीकरण
  • समस्या निवारण
  • योगदान
  • लाइसेंस

CPRA क्यों?

CPRA का उपयोग करें जब आपको आवश्यकता हो:

  • 100,000+ समवर्ती सेवाओं, कंटेनरों या एंडपॉइंट्स की निगरानी करना
  • मानव हस्तक्षेप के बिना स्वचालित रूप से विफलताओं को ठीक करना
  • लोड के आधार पर गतिशील रूप से निगरानी बुनियादी ढांचे को स्केल करना
  • पता लगाने से लेकर अलर्ट करने तक 100ms से कम P95 विलंबता प्राप्त करना
  • मेमोरी फुटप्रिंट को कम करना (~100 बाइट्स प्रति मॉनिटर)

मुख्य विशेषताएं

🚀 विशाल स्केलेबिलिटी

  • सामान्य हार्डवेयर पर 1,000,000+ समवर्ती मॉनिटरों को संभालता है
  • प्रति मॉनिटर न्यूनतम ओवरहेड के साथ रैखिक स्केलिंग
  • मेमोरी-कुशल डिज़ाइन: ~100 बाइट्स प्रति मॉनिटर

⚡ उच्च प्रदर्शन

  • प्रति पाइपलाइन 10,000+ स्वास्थ्य जांच प्रति सेकंड
  • शेड्यूल से परिणाम प्रसंस्करण तक P95 विलंबता < 100ms
  • बैच प्रसंस्करण और लॉक-फ्री कतारें ओवरहेड को कम करती हैं

🔄 स्वचालित सुधार

  • तीन स्वतंत्र पाइपलाइनें:
    1. Pulse: स्वास्थ्य जांच (HTTP, TCP, ICMP, कस्टम स्क्रिप्ट)
    2. Intervention: स्वचालित पुनर्प्राप्ति (सेवाओं को पुनरारंभ करना, संसाधनों को स्केल करना, स्क्रिप्ट चलाना)
    3. Code: अलर्टिंग और सूचनाएं (ईमेल, SMS, वेबहुक, PagerDuty)

🧠 बुद्धिमान स्केलिंग

  • M/M/c कतारबद्ध सिद्धांत: स्वचालित रूप से इष्टतम कार्यकर्ता संख्या की गणना करता है
  • Allen-Cunneen अनुमान: वास्तविक दुनिया के कार्यभार परिवर्तनशीलता को संभालता है
  • SLO-संचालित आकार: विलंबता लक्ष्यों को पूरा करने के लिए गतिशील रूप से स्केल करता है

🏗️ डेटा-उन्मुख आर्किटेक्चर

  • एंटिटी-कॉम्पोनेंट-सिस्टम (ECS) mlange-42/ark का उपयोग करते हुए
  • अधिकतम प्रदर्शन के लिए कैश-अनुकूल मेमोरी लेआउट
  • न्यूनतम आवंटन और GC दबाव

🔧 उत्पादन-तैयार

  • डिबगिंग के लिए अंतर्निहित pprof प्रोफाइलिंग
  • संदर्भ रद्दीकरण के साथ सुचारू शटडाउन
  • डिबग मोड के साथ व्यापक लॉगिंग
  • स्वचालित GC ट्रिगरिंग के साथ मेमोरी प्रबंधन

प्रदर्शन विशेषताएं

मीट्रिकमान
अधिकतम समवर्ती मॉनिटर1,000,000+
थ्रूपुट10,000+ जांच/सेकंड/पाइपलाइन
विलंबता (P95)< 100ms (SLO के माध्यम से कॉन्फ़िगर करने योग्य)
प्रति मॉनिटर मेमोरी~100 बाइट्स
कुल मेमोरी (1M मॉनिटर)~100 MB + कार्यकर्ता पूल ओवरहेड
कार्यकर्ता स्केलिंगगतिशील (M/M/c आधारित)

विस्तृत बेंचमार्क और विश्लेषण के लिए आर्किटेक्चर अवलोकन देखें।


आर्किटेक्चर

CPRA एंटिटी-कॉम्पोनेंट-सिस्टम सिद्धांतों पर निर्मित तीन-पाइपलाइन आर्किटेक्चर का उपयोग करता है:

ECS Architecture

तीन स्वतंत्र प्रसंस्करण पाइपलाइनें

Pipeline Flow

  1. Pulse पाइपलाइन: स्वास्थ्य जांच निष्पादित करता है (HTTP अनुरोध, TCP कनेक्शन, कस्टम स्क्रिप्ट)
  2. Intervention पाइपलाइन: मॉनिटर विफल होने पर स्वचालित सुधार करता है
  3. Code पाइपलाइन: घटना प्रबंधन प्रणालियों को अलर्ट सूचनाएं भेजता है

प्रत्येक पाइपलाइन अपनी स्वयं की कतार और गतिशील रूप से स्केल किए गए कार्यकर्ता पूल के साथ स्वतंत्र रूप से संचालित होती है, जो सक्षम करती है:

  • पाइपलाइन-विशिष्ट ट्यूनिंग: प्रत्येक पाइपलाइन को अलग से कॉन्फ़िगर करें
  • दोष अलगाव: एक पाइपलाइन की विफलता दूसरों को प्रभावित नहीं करती
  • स्वतंत्र स्केलिंग: प्रति-पाइपलाइन लोड के आधार पर कार्यकर्ताओं को स्केल करें

कतार और कार्यकर्ता पूल आर्किटेक्चर

Queue and Worker Pool

कतार कार्यान्वयन:

  • HybridQueue: विश्वसनीय FIFO प्रसंस्करण के लिए रिंग बफर + ओवरफ्लो स्लाइस
  • AdaptiveQueue: परिवर्तनीय लोड के लिए ऑटो-स्केलिंग रिंग बफर
  • WorkivaQueue: अल्ट्रा-लो विलंबता के लिए लॉक-फ्री रिंग बफर

गतिशील कार्यकर्ता पूल:

  • panjf2000/ants गोरोटीन पूल द्वारा संचालित
  • M/M/c कतारबद्ध सिद्धांत का उपयोग करके स्वचालित स्केलिंग
  • कॉन्फ़िगर करने योग्य न्यूनतम/अधिकतम कार्यकर्ता और SLO लक्ष्य

व्यापक आर्किटेक्चर स्पष्टीकरण के लिए, आर्किटेक्चर अवलोकन देखें।


त्वरित प्रारंभ

विकल्प 1: स्थानीय रूप से बनाएं और चलाएं

root@kitploit:~
# आवश्यक शर्तें: Go 1.25 या बाद का
go version  # go1.25 या उच्चतर दिखाना चाहिए

# स्रोत से बनाएं
git clone https://github.com/ziad/cpra.git
cd cpra
go build .

# उदाहरण कॉन्फ़िगरेशन के साथ चलाएं
./cpra --yaml mock-servers/test_10k.yaml

अपेक्षित आउटपुट:

root@kitploit:~
Starting CPRA Optimized Controller for 1M Monitors
Profiling server listening at http://localhost:6060/debug/pprof/
Loading monitors from mock-servers/test_10k.yaml...
Monitor loading completed in 1.2s
[INFO] Controller started successfully
[INFO] Pulse pipeline processing 10,000 monitors
[INFO] Worker pool scaled to 143 workers (target SLO: 100ms)

स्थापना

पूर्वापेक्षाएँ

  • Go 1.25 या बाद का (डाउनलोड)
  • Docker (वैकल्पिक, कंटेनरीकृत तैनाती के लिए)

स्रोत से निर्माण

  1. रिपॉजिटरी क्लोन करें:

    root@kitploit:~
    git clone https://github.com/ziad/cpra.git
    cd cpra
    
  2. निर्भरताएं डाउनलोड करें:

    root@kitploit:~
    go mod download
    
  3. एप्लिकेशन बनाएं:

    root@kitploit:~
    go build .
    
  4. स्थापना सत्यापित करें:

    root@kitploit:~
    ./cpra --help
    

Docker तैनाती

  1. Docker इमेज बनाएं:

    root@kitploit:~
    docker build -f docker/Dockerfile -t cpra:latest .
    
  2. कंटेनर चलाएं:

    root@kitploit:~
    docker run -it --rm \
      -v $(pwd)/my-monitors.yaml:/app/monitors.yaml \
      cpra:latest \
      ./cpra --yaml monitors.yaml
    

कॉन्फ़िगरेशन

मॉनिटर कॉन्फ़िगरेशन (YAML)

स्वास्थ्य जांच को परिभाषित करने के लिए एक monitors.yaml फ़ाइल बनाएं:

root@kitploit:~
monitors:
  - name: "my-service-health-check"
    pulse_check:
      type: http
      interval: 30s
      timeout: 5s
      max_failures: 3
      config:
        method: GET
        url: http://my-service.example.com/health
        retries: 2
    intervention:
      action: docker
      config:
        container: my-service-container
        action: restart
    codes:
      red:
        dispatch: true
        notify: pagerduty
        config:
          url: https://events.pagerduty.com/v2/enqueue
      yellow:
        dispatch: true
        notify: log
        config:
          file: /var/log/cpra-alerts.log

परीक्षण कॉन्फ़िगरेशन जनरेट करना:

किसी भी संख्या में मॉनिटर के साथ परीक्षण कॉन्फ़िगरेशन जनरेट करने के लिए mock-servers/generate_monitors.py का उपयोग करें।

एप्लिकेशन कॉन्फ़िगरेशन

CPRA व्यवहार को प्रोग्रामेटिक रूप से कॉन्फ़िगर करें:

root@kitploit:~
package main

import (
    "cpra/internal/controller"
)

func main() {
    config := controller.DefaultConfig()

    // डिबग मोड
    config.Debug = true

    // कार्यकर्ता पूल सेटिंग्स (तीनों पाइपलाइनों पर लागू होती हैं)
    config.WorkerConfig.MinWorkers = 10
    config.WorkerConfig.MaxWorkers = 500

    // कतार सेटिंग्स
    config.QueueCapacity = 131072  // 2 की घात होनी चाहिए

    // प्रदर्शन ट्यूनिंग
    config.BatchSize = 2000
    config.SizingServiceTime = 20 * time.Millisecond  // औसत कार्य अवधि
    config.SizingSLO = 100 * time.Millisecond         // लक्ष्य विलंबता
    config.SizingHeadroomPct = 0.15                   // 15% सुरक्षा बफर

    ctrl := controller.NewController(config)
    // ... बाकी आरंभीकरण
}

पूर्ण कॉन्फ़िगरेशन विकल्पों के लिए API संदर्भ देखें।


कमांड-लाइन विकल्प

root@kitploit:~
./cpra [OPTIONS]
विकल्पप्रकारडिफ़ॉल्टविवरण
--yamlstringinternal/loader/replicated_test.yamlमॉनिटर YAML फ़ाइल का पथ
--configstring-कॉन्फ़िगरेशन फ़ाइल पथ (वैकल्पिक)
--debugboolfalseडिबग-स्तर लॉगिंग सक्षम करें
--pprofbooltruepprof प्रोफाइलिंग सर्वर सक्षम करें
--pprof.addrstringlocalhost:6060Pprof सर्वर सुनने का पता

उदाहरण:

root@kitploit:~
# डिबग लॉगिंग के साथ चलाएं
./cpra --yaml monitors.yaml --debug

# कस्टम pprof पोर्ट के साथ चलाएं
./cpra --yaml monitors.yaml --pprof.addr localhost:8080

# प्रोफाइलिंग अक्षम करें
./cpra --yaml monitors.yaml --pprof=false

दस्तावेज़ीकरण

व्यापक मार्गदर्शिकाएँ

  • आर्किटेक्चर अवलोकन - सिस्टम डिज़ाइन, आरेख और प्रदर्शन विश्लेषण
  • API संदर्भ - फ़ंक्शन हस्ताक्षर के साथ पूर्ण API दस्तावेज़ीकरण
  • प्रकार संदर्भ - डेटा संरचनाएं और घटक परिभाषाएं
  • त्वरित प्रारंभ ट्यूटोरियल - 5-10 मिनट में शुरू करें
  • सामान्य कार्य - सामान्य संचालन के लिए कैसे-करें मार्गदर्शिकाएँ

अतिरिक्त संसाधन

  • आरंभ करना - विस्तृत सेटअप और तैनाती मार्गदर्शिका

समस्या निवारण

सामान्य समस्याएं

समस्या: YAML file not found

root@kitploit:~
चेतावनी: YAML फ़ाइल monitors.yaml नहीं मिली, मॉनिटर लोड किए बिना शुरू हो रहा है

समाधान: फ़ाइल पथ सही है सत्यापित करें। निरपेक्ष पथ या उस निर्देशिका के सापेक्ष पथ का उपयोग करें जहाँ से आप बाइनरी चलाते हैं:

root@kitploit:~
./cpra --yaml $(pwd)/monitors.yaml

समस्या: Go संस्करण त्रुटि के साथ निर्माण विफल

root@kitploit:~
go.mod के लिए go >= 1.25 आवश्यक है

समाधान: Go को संस्करण 1.25 या बाद में अपग्रेड करें:

root@kitploit:~
go version  # वर्तमान संस्करण जांचें
# https://go.dev/dl/ से Go 1.25+ डाउनलोड करें

समस्या: उच्च मेमोरी उपयोग समाधान: pprof के साथ मेमोरी उपयोग जांचें:

root@kitploit:~
# CPRA चल रहा है, pprof तक पहुंचें
go tool pprof http://localhost:6060/debug/pprof/heap

# शीर्ष मेमोरी उपभोक्ता देखें
(pprof) top

कॉन्फ़िगरेशन में मेमोरी सीमाएं समायोजित करें:

root@kitploit:~
config.WorkerConfig.MaxWorkers = 200  // अधिकतम कार्यकर्ता कम करें
config.QueueCapacity = 65536          // कतार आकार कम करें

समस्या: कार्यकर्ता पूल स्केल नहीं हो रहा समाधान: स्केलिंग निर्णय देखने के लिए डिबग लॉगिंग सक्षम करें:

root@kitploit:~
./cpra --yaml monitors.yaml --debug

कतारबद्ध सिद्धांत पैरामीटर जांचें:

root@kitploit:~
config.SizingServiceTime = 50 * time.Millisecond  // कार्यों में अधिक समय लगने पर बढ़ाएं
config.SizingSLO = 200 * time.Millisecond         // आवश्यकतानुसार SLO शिथिल करें

समस्या: मॉनिटर निष्पादित नहीं हो रहे समाधान: मॉनिटर कॉन्फ़िगरेशन प्रारूप सत्यापित करें और लॉग जांचें:

root@kitploit:~
./cpra --yaml monitors.yaml --debug 2>&1 | grep ERROR

YAML सिंटैक्स मान्य करें:

root@kitploit:~
# YAML वैलिडेटर का उपयोग करें
python -m yaml monitors.yaml

सहायता प्राप्त करना

  • दस्तावेज़ीकरण: विस्तृत मार्गदर्शिकाओं के लिए docs/ फ़ोल्डर देखें
  • समस्याएं: बग या फीचर अनुरोधों के लिए एक समस्या खोलें
  • चर्चाएँ: GitHub चर्चाओं में प्रश्न पूछें और विचार साझा करें
  • लॉग: समस्याओं की रिपोर्ट करते समय हमेशा लॉग प्रदान करें (--debug फ़्लैग का उपयोग करें)

योगदान

हम समुदाय से योगदान का स्वागत करते हैं! CPRA एक ओपन-सोर्स प्रोजेक्ट है और हम सराहना करते हैं:

  • 🐛 बग रिपोर्ट और फिक्स
  • ✨ फीचर अनुरोध और कार्यान्वयन
  • 📖 दस्तावेज़ीकरण सुधार
  • 🧪 परीक्षण कवरेज वृद्धि
  • 💡 प्रदर्शन अनुकूलन

आरंभ करना:

  1. good first issue लेबल वाली समस्याएं देखें
  2. रिपॉजिटरी को फोर्क करें और पुल अनुरोध सबमिट करें

विकास संसाधन:

  • आर्किटेक्चर अवलोकन - सिस्टम डिज़ाइन समझें
  • API संदर्भ - फ़ंक्शन हस्ताक्षर और उपयोग

लाइसेंस

यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।


स्वीकृतियां

CPRA उत्कृष्ट ओपन-सोर्स लाइब्रेरीज़ पर बनाया गया है:

  • mlange-42/ark - उच्च-प्रदर्शन एंटिटी-कॉम्पोनेंट-सिस्टम
  • panjf2000/ants - गतिशील स्केलिंग के साथ गोरोटीन पूल
  • Workiva/go-datastructures - लॉक-फ्री डेटा संरचनाएं
  • uber-go/zap - संरचित लॉगिंग

दस्तावेज़ीकरण • आर्किटेक्चर • समस्याएं

बड़े पैमाने के बुनियादी ढांचे का प्रबंधन करने वाली प्लेटफॉर्म टीमों के लिए ❤️ के साथ बनाया गया

टूल डाउनलोड करें