मैं अगर मैं गलत नहीं यह इस तरह दिखना चाहिए हूँ, स्काला में एक प्रसारण रूटर उपयोग करने के लिए कोशिश कर रहा हूँ:पैरामीटरयुक्त अभिनेताओं के साथ अक्का में राउटर कैसे बनाएं?
val system = ActorSystem("My beautiful system")
val workerRouter = system.actorOf(Props[Agent].withRouter(BroadcastRouter(individualDefinitions.size)), name = "agentRouter")
है यही कारण है कि मैं the tutorial I am following से समझते हैं।
कार्यकर्ता राउटर दूसरे अभिनेता के रूप में कार्य करता है और मैं इस राउटर को संदेश भेज सकता हूं जो उन्हें सभी एजेंटों (जितने व्यक्तिगत परिभाषाएं हैं) को भेज देगा।
समस्या यह है कि मैं एजेंट बनाने के लिए व्यक्तिगत परिभाषाओं का उपयोग करना चाहता हूं, वे वास्तव में निर्माता में कुछ पैरामीटर लेते हैं और वे पैरामीटर अलग-अलग परिभाषाओं में हैं।
प्रश्न: मैं उन पैरामीटर को कन्स्ट्रक्टर के हिस्से के रूप में उन पैरामीटर को पारित करने के लिए राउटर कैसे कह सकता हूं?
कृपया ध्यान दें कि प्रत्येक अभिनेता को एक व्यक्ति को परिभाषित करना चाहिए और वे सभी अलग हैं। मैं एक संबंधित प्रश्न में समाधान का उपयोग नहीं कर सकता जहां कन्स्ट्रक्टर को स्थिरांक प्राप्त होता है: In Akka Java actor model, can a router create actors with non-default constructor?
कृपया ध्यान दें कि यहां प्रत्येक अभिनेता के पास अलग-अलग पैरामीटर होना चाहिए, यदि उनमें से एक को पुनरारंभ किया गया है तो उसे पहले स्थान पर समान पैरामीटर मिलना चाहिए। मुझे नहीं पता कि उस समाधान को करने के लिए संशोधित किया जा सकता है या नहीं।
सृजन (कन्स्ट्रक्टर) और रूटिंग को अलग करने के लिए एक संभावित समाधान राउटर के रूप में एक अभिनेता का उपयोग कर सकता है, जैसा कि Akka (java), non blocking broadcast to all children प्रश्न में है।
मुझे यकीन नहीं है कि इस मामले में "सही" दृष्टिकोण है। राउटर के रूप में एक अभिनेता का उपयोग करने में कई समस्याएं हैं (लालित्य के अलावा)। मैं ऐसे अभिनेता के बारे में चिंतित हूं जो राउटर के रूप में काम करता है और अपने सभी ग्राहकों को खो देता है। यदि अभिनेता को लूप के आधे भाग में पुनरारंभ किया जाता है तो कुछ अभिनेताओं को कुछ संदेश याद आ सकते हैं यदि मुझे गलत नहीं लगता है।
धन्यवाद।
ग्रेट, जो इसे हल करता है और मैंने अक्का के बारे में कुछ और सीखा है। ट्यूटोरियल में दस्तावेज के लिंक होना चाहिए;) (इसके लिए खेद है) – Trylks