Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

सर्विसस्टैक:मैन्युअल रूप से सेवा लागू करते समय पाइपलाइन बहाल करें?

<ब्लॉकक्वॉट>

पाइपलाइन के कौन से हिस्से खो गए हैं?

अनुरोध पाइपलाइन में से कोई भी निष्पादित नहीं किया गया है:

myRequestService.Any(e.Request);

केवल भौतिक रूप से Any का उपयोग कर रहा है आपके MyRequestService . की C# विधि वर्ग, यह कुछ और नहीं करता (न ही नहीं कर सकता)।

सेवा अनुरोध के दौरान अन्य सेवाओं को लागू करने का अनुशंसित तरीका सर्विस गेटवे का उपयोग करना है।

लेकिन अगर आप किसी HTTP अनुरोध के बाहर किसी सेवा का आह्वान करना चाहते हैं, तो आप गैर-विश्वसनीय सेवाओं को निष्पादित करने के लिए RPC गेटवे का उपयोग कर सकते हैं क्योंकि यह पूर्ण अनुरोध पाइपलाइन को आमंत्रित करता है और HTTP त्रुटि प्रतिक्रियाओं को टाइप की गई त्रुटि प्रतिक्रियाओं में परिवर्तित करता है:

HostContext.AppHost.RpcGateway.ExecuteAsync()

सेवा अनुरोध के बाहर आंतरिक/विश्वसनीय सेवाओं को निष्पादित करने के लिए आप HostContext.AppHost.ExecuteMessage का उपयोग कर सकते हैं जैसा कि ServiceStack MQ द्वारा उपयोग किया जाता है जो संदेश अनुरोध अनुरोध / प्रतिक्रिया फ़िल्टर, सेवा कार्रवाई फ़िल्टर और ईवेंट लागू करता है।

<ब्लॉकक्वॉट>

मैंने कंटेनर के साथ पंजीकरण किया है। AddScoped

HTTP अनुरोध के बाहर अनुरोध स्कोप्ड निर्भरता का उपयोग न करें, सिंगलटन का उपयोग करें यदि निर्भरता थ्रेडसेफ हैं, अन्यथा उन्हें क्षणिक के रूप में पंजीकृत करें। यदि आपको प्रति-अनुरोध संग्रहण पास करने की आवश्यकता है तो उन्हें IRequest.Items . में पास करें ।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. रेडिस डेटा संरचनाओं का परिचय:हैश

  2. स्प्रिंग रेडिस सॉर्ट कुंजियाँ

  3. सी ++ प्रोग्राम के भीतर रेडिस का उपयोग कैसे करें?

  4. रूबी - समाप्ति कार्यान्वयन के साथ रेडिस आधारित म्यूटेक्स

  5. कमांड लाइन के माध्यम से हरोकू रेडिस से सुरक्षित रूप से कैसे जुड़ें?