# HMSX और एनपीएस के साथ काम करने के लिए व्यवस्था बनाना ।

<!--category-- ASP.NET, HTMX, Alpine.js, Workflow -->
<datetime class="hidden">2025-01-15T12:00</datetime>

## परिचय

कार्य प्रवाह तंत्र - सभी आधुनिक अनुप्रयोगों में हैं - जटिल बहु- चरणों के लिए सरल अनुमोदन प्रक्रियाओं से.

जबकि रद्दी, एयर फ्लो और N8n जैसे बढ़िया व्यापारिक समाधान हैं, कभी - कभी आपको अपनी विशिष्ट ज़रूरतों के अनुरूप कुछ की ज़रूरत होती है ।

- इस श्रृंखला में, मैं एक पूर्ण काम की प्रणाली बनाने के माध्यम से आप चल रहा हूँ scrat. NELT, HMMX, Als.js, और हैंग आग.
- इस श्रृंखला के अंत तक, आपके पास एक पूरी तरह से कार्यिक फ्लो प्रणाली होगी:
- निर्माण के लिए दृश्य नोड आधारित संपादक
- JSON- पारिभाषित कार्य इनपुट, आउटपुट, तथा स्थिति सहित नोड्स
- एक पसंदीदा कार्य प्रवाहन इंजिन
- दूरस्थ एपीआई के लिए हैंगिंग प्रक्षेपित करने के लिए पृष्ठभूमि कार्य प्रक्रिया

[TOC]

## राज्य प्रबंधन और लगन

काम की निगरानी करने के लिए एक्ज़ीबोर्ड

**आपके काम को अपने पास रखने का काम क्यों करें?**

- बाहर निकलने से पहले, चलो कमरे में हाथी को संबोधित करें: क्यों एक मौजूदा समाधान का प्रयोग नहीं करें?
- जब आप खुद को बना लेते हैं:
- आपको अपने मौजूदा अनुप्रयोग के साथ गहरा संयोजन की आवश्यकता है
- आपके पास विशिष्ट व्यापार तर्क है कि जेनेरिक कार्य प्रवाह औज़ारों में फिट नहीं होता
- आप चलाया गया मॉडल और स्केलिंग पर पूरा नियंत्रण रखना चाहते हैं

**आपको बाहरी निर्भरता को कम करना होगा**

- आप जानना चाहते हैं कि हुड के नीचे कैसे फ्लो सिस्टम काम करता है
- जब मौज़ूदा औज़ार इस्तेमाल किया जाए:
- आप एक साबित करने की जरूरत है, लड़ाई जांच समाधान तुरंत

आपको अनेक मशीनों के पार वितरित किए जाने जैसा फीचर आवश्यक हैं

## आप के लिए समय नहीं है और इन्फ्रास्बस्फीति में मनपसंद बनाए रखने के लिए

इस श्रृंखला के लिए, हम अपने खुद का निर्माण करने का चुनाव कर रहे हैं क्योंकि यह हमें पूर्ण सहजता प्रदान करता है और एक बढ़िया सीखने का अवसर है.

### हम क्या बना रहे हैं

हमारा कार्य फ्लो तंत्र कई मुख्य धारणाओं का समर्थन करेगा:

- **1 ..**नोड्स
- **नोड्स काम फ्लो के निर्माण ब्लॉक हैं.**प्रत्येक नोड एक डिस्करा क्रिया या निर्णय बिंदु को चित्रित करता है.
- **उदाहरण:**एचटीटीपी निवेदन नोड
- **: एपीआई सेवा को बतौर बाहरी सेवा में कॉल करता है**स्थिति नोड
- **: अभिव्यक्‍तियों और शाखाओं को निर्धारित करता है**रूपांतरण नोड

### : प्रक्रिया डाटा (जेए का इस्तेमाल, फिल्टरिंग, आदि)

नोड देरी

### : निर्दिष्ट अवधि के लिए इंतजार करें

ट्रिगर नोड

- : घटना या सारिणी पर आधारित कार्य प्रवाह प्रारंभ करता है
- 2
- कार्य प्रवाह
- एक कार्य फूल जुड़ा नोड्स का एक निर्देशात्मक ग्राफ है.
- प्रत्येक नोड प्रक्रिया और डेटा को आवश्यक के रूप में बदल कर एक नोड के द्वारा एक नोड से प्रवाहित होता है.

### 3

चलाना इंजिन

- इंजिन जो कार्य फ्लो परिभाषा का विश्लेषण करता है तथा सही क्रम में नोड्स को चलाता है, हैंडल करता है:
- सीक्वेंशियल कार्यान्वित करें
- समानांतर निष्पादन (जब नोड्स एक दूसरे पर निर्भर नहीं करते)
- शर्तवाले शाखािंग
- ठीक करने में त्रुटि हुई तथा फिर से कोशिश करने में त्रुटि

### स्थिति विरोध

4.

- दृश्य संपादक
- एक वेब आधारित यूआई जहाँ उपयोक्ता जा सकते हैं:
- खींचें और कैनवास पर नोड्स को छोड़ें
- किनारों को ड्राइंग द्वारा नोड्स को जोड़े

## नोड गुण कॉन्फ़िगर करें

जांच कार्य प्रवाहित करता है

### दृश्य इतिहास

- **5.**पृष्ठभूमि गुण
- **हैंग आग का उपयोग करते हुए, हम लागू करेंगे:**समयसारिणी:
- **बाहरी डाटा के लिए एपीआई पोलिंग**असफल होने के लिए तर्क फिर से कोशिश करें
- **कार्य नज़रअंदाज़ करने के लिए डैश बोर्ड**तकनीक स्टैक
- **यहाँ हम क्या उपयोग किया जाएगा:**बैकेंड

### एनईएस. वेन कोर 9. 0

- **: हमारा वेब फ्रेमवर्क**एंटिटी फ्रेमवर्क कोर
- **: डाटा लगन के लिए**एसक्यूएल
- **: डाटाबेस को जमा करने के लिए परिभाषा और कार्य विन्यस्त करने के लिए**हैंग फायर
- **: पृष्ठभूमि कार्य प्रक्रिया**तंत्र. पाठ.Jon

### : अतः काम करनेवाले JSON सीरियलीकरण के लिए

- **फ्रन्टएण्ड**एचएसएमएक्स 2. 0
- **: गतिशील, सर्वर- लौटाया गया यूआई अद्यतनों के लिए बिना जावास्क्रिप्ट लिखा जा रहा है**यू. एस.
- **: बहुमुखी घटकों के लिए हल्का जावास्क्रिप्ट फ्रेमवर्क**टिला- तूफान + गुलबहारा

## : स्टाइललिंग तथा यूआई अवयव

लकीर

```
Mostlylucid.Workflow/
├── Mostlylucid.Workflow.Engine/      # Core workflow execution engine
│   ├── Models/                        # Node, Workflow, Connection models
│   ├── Execution/                     # Workflow executor and runtime
│   └── Nodes/                         # Built-in node implementations
├── Mostlylucid.Workflow.Shared/       # Shared models and DTOs
├── Mostlylucid.Workflow.DbContext/    # Entity Framework context
└── Mostlylucid/                       # Main web app (existing)
    ├── Controllers/WorkflowController.cs
    ├── Services/WorkflowService.cs
    └── Views/Workflow/                # Workflow UI views
```

### : नोड्स के बीच कनेक्शन बनाने के लिए (हम विकल्प खोज करेंगे)

**इन्फास्ट्रक्चर**
डॉकर

```json
{
  "id": "node-1",
  "type": "HttpRequest",
  "name": "Fetch User Data",
  "inputs": {
    "url": "https://api.example.com/users/{{userId}}",
    "method": "GET",
    "headers": {
      "Authorization": "Bearer {{apiToken}}"
    }
  },
  "outputs": {
    "response": "{{result.body}}",
    "statusCode": "{{result.statusCode}}"
  },
  "conditions": {
    "onSuccess": "next-node-id",
    "onError": "error-handler-node-id"
  }
}
```

**कन्टेनर के लिए**
सेक.

- : संरचनाित लॉगिंग के लिए
- प्रोग्रेस + स्नानानाना
- निगरानी के लिए

**ओवरव्यू**
हमारी व्यवस्था कई परियोजनाओं में संगठित की जाएगी:

- मुख्य डिज़ाइन निर्णय
- 1 ..
- JSON- उन्नत नोड्स परिभाषाएँ
- JSON में नोड्स पारिभाषित होंगे, उन्हें सीरियल करने, संस्करण और साझा करने के लिए आसान बनाया जाएगा:

**2**
ग्राफ- बेस डी चलाना

- कार्य फूल ऑस्टिक ग्राफ (डीजी) निर्देशित किए जाते हैं ।
- चलाने वाला इंजन होगा:
- चलाने के क्रम को निर्धारित करने के लिए शीर्षपरेशन छंटाई करें

## जहाँ संभव हो नोड्स को समानांतर करें

### नोड आउटपुट पर आधारित शाखा दफ्तर को नियंत्रित करें

- 3
- राज्य संदेश
- प्रत्येक कार्य प्रवाहित किया जाएगा:
- कार्य प्रवाहित स्थिति (निष्क्रिय, पूर्ण)

### नोड चलाने का परिणाम

- सारिणीबद्ध कार्य के लिए ट्रिगर बताता है
- चलाना इतिहास और लॉग करना
- 4.
- अनंतता
- नोड सिस्टम आधारित:

### सामान्य संचालन के लिए अंतर्निर्मित नोड्स

- मनपसंद नोड क़िस्म पंजीकृत किया जा सकता है
- वैध विन्यास तथा स्कीमा संक्षिप्त निर्देशित करें
- क्या इस सेब्स में आ रहा है
- पार्ट 2: स्फीयर तथा कोरस कार्य के प्रवाह इंजन
- परियोजना स्ट्रक्चर सेटअप किया जा रहा है

### कोर कार्य मॉडल बनाया जा रहा है (Nd, कार्य प्रवाह, कनेक्शन)

- ग्राफ चलाने वाले इंजिन को लागू कर रहा है
- शीर्ष - व्यवस्था का मसला और अधिकार प्रस्ताव
- पार्ट ३: दृश्य संपादक बनाना
- काम के लिए फूल बनाना HMMX और आन्‍ना के साथ.js.j
- खींचें और ड्रॉप नोड स्थान

## दृश्य कनेक्शन ड्राइंग

कॉन्फ़िगरेशन फलक प्रदर्शित करें

- कार्य छाया सीरियलीकरण
- भाग ४: हैंग फायरिंग व राज्य प्रबंधन
- पृष्ठभूमि प्रक्रिया के लिए हैंग फायरिंग सेट किया जा रहा है
- एपीआई पोलिंग नोड्स को लागू किया जा रहा है
- ट्रिगर स्थिति प्रबंधन

## तर्क और त्रुटि नियंत्रण फिर से कोशिश करें

डैश बोर्ड संयोजन

पार्ट ५: विस्तृत विशेषताएँ और कमीज़

## मनपसंद नोड्स लागू किया जा रहा है

कार्य प्रवाहित कर रहा है

जाँच - पड़ताल की जा रही युक्‍तियाँ

परफ़ॉर्मेंस पॉलिसी