Artık Microsoft, iş akışı çerçevelerini Windows Workflow Foundation 4'te yeniledi, bu yeni çerçeveyle ilgili düşünceleriniz ve deneyimleriniz neler?Workflow Foundation ile Düşünceler ve Deneyimler 4
Ben şimdi bir kaç ay WF4 ile çalışıyor olması, ve birkaç tuzaklar içine çalıştırmak:
- İş Akışı Hizmetleri (Xamlx) ile bir arayüz zorlamak için hiçbir yolu yoktur.
- İş akışında, iş akışında iletişim, ilişkilendirme, kalıcılık veya bazı işlenmemiş kural dışı durumlarla ilgili bir hata oluştuğunda, izleme günlükleri hiçbir şeyle alakalı olmadığı için neyin yanlış olduğunu söylemek neredeyse imkansızdır. Örneğin, bir İş Akışı Değişkeni nesnesini bir iş akışı değişkeni olarak kullandım ve iş akışı sürekliliği bunu serileştirme konusunda bir sıkıntıya sahipti. Ne yazık ki, izleme dosyalarındaki hatalardan biri, sorunun bu olduğunu gösterdi. Neyin yanlış gittiğini anlayabilmeden önce birkaç saatlik deneme ve hata yaptım.
- Sağlanan aktivitelerden bazıları yetersiz. Örneğin, dinamik uç noktaları desteklemek için Send etkinliğini genişletmek zorunda kaldım. Ne yazık ki, tamamen dinamik yapamadım, örneğin arayüz adı dinamik olamaz.
- Bir iş akışı çok büyük olursa tasarımcı çok yavaşlar. 100KB'nin üzerinde bir iş akışı, yüklenmesi bir dakikadan uzun sürdü! Ve bu boyuttaki bir iş akışını hata ayıklamayı unutun.
- Oracle için kalıcılık sağlayıcısı yok. tuzaklar rağmen
, ben veritabanında, tasarımcı bir araya faaliyetlerini yakalamaya kolaylığı ve iş akışı hizmetleri gibi WCF servisleri kurma kolaylığı kalıcılık yetenekleri ile çok etkilendim.
Ben Workflow Foundation kullanan diğer geliştiricilerin deneyimleri hakkında merak ediyorum 4.
Düzenleme:
ben büyük iş akışları için son derece yavaş tasarımcının sorunu çözmek başardı. Tasarımcıya çok fazla strese neden olan çözülemeyen İthalatlar olduğu ortaya çıktı.
I posted on the MSDN forums about this issue.
Güncelleme
biz üretimde çalışan edeceğiniz, AppFabric ile karşı karşıya sorunların bir takım vardır. Şu an itibariyle AppFabric İş Akışı Hizmetlerinin kullanıma hazır olmadığı açıktır. Yeni sürümler serbest bırakılıncaya kadar bundan uzak duracağım.
Ayrıca, pencere iş akışında varlık nesnesi (Varlık çerçevesi) değişkeni ile ilgili bir sorunla karşılaşıyorum 4.5. Bu kalıcılık sorunu için hangi yaklaşımı kullandığınızı bize bildirir misiniz? –
Bizim yaklaşımımız, bir obje nesnesini asla iş akışı değişkeni veya bağımsız değişken olarak kullanmaktı. Her zaman bir iç veri nesnesine dönüştürdük. Varlıkları kullanabilirsiniz, değişkenler veya argümanlar olsa da. Sadece varlıkların ayrıldığından emin olmalısınız. Sorunum, DB'den bazı varlıkları aldığımız, ancak artık varolmayan bir bağlama bağlı olduğumuzu tahmin ediyorum. WF'nin devamında, varlığın artık varolmadığı için sorgulanamayacak olan varlığı ve referansları serileştirmeye çalıştı. Varlıkların bir iş akışıyla devam etmesini istiyorsanız, dikkatli olmalısınız. – Mas
Teşekkürler Mas. Sizin tarafınızdan özetlenen benzer yaklaşımı izledik. Entity framework nesnelerini kullanmadık, bunun yerine özel poco nesneleri kullandık. –