开发者

.NET Hosted workflow clustering problem

I am attempting to reproduce a server farm in my test environment, in order to try something out for an application that I am busy designing.

I have two web servers, running IIS 6.0 and 7.0 respectively, each hosting a workflow service with exactly the same dlls. They share a persistence database.

When ServerA saves the workflow to the persistence store, on a subsequent request ServerB is happy to load the workflow instance and do some work on it. Once ServerB has saved the workflow, ServerA gets开发者_高级运维 a serialization exception when attempting to perform a further call on the workflow. I get the same behaviour if I use a different server as ServerB.

And I can fix the problem by using two different servers and leaving ServerA out of the equation.

My question though is: How can I debug exactly why ServerA will not load workflows saved by other machines?

Update - I did try with two IIS 6.0 servers, same OS and same strongly names assemblies - and had the exact same issue


OK, I figured it out.

ServerA had a hotfix installed for .NET, which meant that the actual binary signature of one of the classes being serialized was different.

By pure chance it can be deserialised one way and not the other.

I loaded the hotfix on all of the servers, and now the serialization works correctly.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜