.NETワークフローエンジンの提案[終了]
-
06-07-2019 - |
質問
stateless に出会いました。これは、シンプルステートマシン ブー、ただしC#3.0を使用して構成
設定と使用は簡単です。おそらくすぐに使用します。
しかし、私はただ疑問に思っていました
- 誰もが実際のプロジェクトにステートレスを使用しました(もしそうならあなたの意見はどうですか?)
- .NET用の他の優れたワークフローエンジンはありますか? (WF以外)
解決
いつか本番環境に入る予定のアプリにステートレスとWFを使用しています。 :)これまでの私の経験を詳しく説明しましたこちらの投稿。
全体として、WFよりもシンプルなため、ステートレスの方が好きです。もちろん、ワークフローをグラフィカルに設計できると便利ですが、シーケンシャルワークフロー(ステートマシンワークフローなど)よりも難しいものを実装する必要がある場合は、適切な状態遷移を行うためにExternalDataExchangeを操作する必要があります。おそらく難しくはありませんが、それと、ワークフローを一時停止するために永続化サービスを実装する必要があるという事実を考えると、私は魅力的ではないように思えました。とにかく後で実行するためにワークフローをディスクに永続化する必要はありません...そのため、Statelessでこれを処理するために通常のイベントを使用します。エラー処理はステートレスで簡単に実行できます(私は成功しました)が、私がとった実装は疑わしく、別の議論のトピックです(これについては今すぐ検索しています!)。すぐにこれに関する質問を投稿するかもしれません。
ステートレスで頑張ってください。私はあなたがそれをどのように進めてきたか聞いてみたいです。
他のヒント
Workflow Foundationでは、WF4を使用できるように、グリーンプロジェクトにのみ使用します。これをチェックしてください http://realworldsa.dotnetdevelopersjournal.com/goodbyewindowsworkflowfoundationseeyouin2011.htm
WF 1.0および1.5はWF4と互換性がありません。したがって、これはフォワードソリューションではありません。
個人的に http://simplestatemachine.codeplex.com をWFの代わりとして使用しています。かなり複雑なビジネスライセンス発行システム(350以上の異なる政府ビジネスライセンスを処理する)を処理するために、1つのフルプロダクションシステム(asp.netベース)で使用しました。
まだステートレスを試していませんが、有望に見えます。
パーティーに遅れて。現在、1年半以上、実稼働環境でステートレスを使用していますが、問題はありません。これは、ワークフローを処理するための非常にエレガントなソリューションであり、状態をデータモデルにすばやく統合します。 SQLでは状態をintで表しているため、ASP.Netで状態マシンを処理中に実行できます。これは、長時間実行されるワークフローにも当てはまります。
要件が基本的なものであれば、私が書いた非常にシンプルなStateMachineが興味深いかもしれません。
(執筆時点では)階層状態をサポートしていないことに注意してください。
NuGetで見つけることができます:
nuget install nstate
またはGitHubで確認してください:
https://github.com/benaston/NState
誰かがそれを役に立つと思うことを願っています。
Windows Workflow Foundation をご覧になっていない場合少なくともそれについて少し読む価値があるでしょう。