Je cherche un framework (open source) pour l'informatique distribuée pour .Net/Mono qui n'est pas simplement basé sur les tâches mais qui supporte la persistance des tâches distribuées .Cadre pour l'informatique distribuée pour .Net/Mono qui supporte la persistance des tâches distribuées
Le projet en question est une simulation de système complexe qui doit être répartie en «sous-émulations» indépendantes plus petites. Ces sous-simulations continueront à fonctionner pendant une longue période et recevront et transmettront à intervalles réguliers des données au maître où une vue avec des résultats agrégés est mise à jour et présentée à l'utilisateur. Par conséquent, le travail à distribuer (les sous-simulations) est à état et doit rester en existence (en ligne ou hors ligne) chez les travailleurs pendant une longue période, sur plusieurs sessions. Cela nécessitera un stockage local persistant (sérialisation) par le travailleur (les sous-simulations sont assez volumineuses et il ne sera pas efficace de les renvoyer au maître pour chaque session). Le cadre doit offrir une transparence quant au réseau sous-jacent ou à la plate-forme cloud utilisé en permettant l'utilisation de différentes implémentations (par exemple un cluster local, Internet, une machine, des plates-formes cloud tierces). Ce serait bien si au niveau du modèle/de la simulation, les performances pouvaient être ajustées en fonction de la latence du réseau (par exemple en ajustant la fréquence et la granularité des données qui sont envoyées entre les opérateurs et le maître).
J'ai regardé NGrid mais cela semble inachevé et daté. J'ai également regardé quelques-uns des autres suspects habituels (MPAPI, MPI.NET, Alchemi, etc.) mais pour autant que je sache, ceux-ci ne répondent pas aux exigences. Si un tel cadre n'existe pas, je suis intéressé par des conseils sur la conception d'un tel cadre.
DSS/CCR semble intéressant. C'est gratuit maintenant selon MS. Je dois regarder plus profondément encore. – Peladao