64-bit operating system and CSLA

64-bit operating system and CSLA

Old forum URL: forums.lhotka.net/forums/t/1213.aspx


KFoster posted on Thursday, September 14, 2006

Our DataPortal runs remotely on the Database Server. The DB Server is being upgraded to a 64 bit version of Windows and 64 bit version of SQL2005. The Application and Web servers are not being upgraded at this time. Does anyone see a problem with having a 64 bit compiled version of the data portal running remotely with 32 bit compiled versions of the Business Objects?

Has anyone done something similar yet?

Thanks,

Ken

ajj3085 replied on Thursday, September 14, 2006

I'm not sure I understand your setup.  The application server is usually the server which runs the dataportal code (which is the case if you setup remoting of any kind). 
But then you say the DataPortal code runs on the DB server, which implies you're using the DB server as your app server.

Could you clarify a bit?

KFoster replied on Thursday, September 14, 2006

Our Application servers run various back end processes, largely business processes as part of an MSMQ based workflow, however there are numerous other services that run as well. Our Web Servers are basically just that, user interaction. Both the Web Servers and the App Servers (and a few diagnostic tools running as WinApps on various desktops) use a CSLA based data object layer. We decided to put the Data Portal close to the DB for a couple of reasons, including easier load balancing scenarios.

Does that help?

ajj3085 replied on Thursday, September 14, 2006

So in Csla terms, your web server and MSMQ workflow server are the clients, and your application server is the db server itself.

So the question becomes 'can the remoting source be 32-bit while the remoting target server is 64-bit'?  It may be that you can use ES and that will work fine, whereas .Net remoting may not... 

I think that's what you'll have to research.  Does the data portal channel you've decided to use support crossing 32- and 64-bit bounderies?  Unfortunately I don't have an answer to that, although maybe someone else here does.

If no one here has that answer, I hope you'll post the answer here anyway.. I'd sure like to know.  Smile [:)]

RockfordLhotka replied on Thursday, September 14, 2006

I must second Andy's assessment - I am not aware of anyone doing what you are trying to do, so you'll just have to give it a try.

The real underlying question is whether the BinaryFormatter can serialize/deserialize objects across the 32/64 bit boundary. My expectation would be that this would work - but there's really only one way to be sure...

JonM replied on Thursday, September 14, 2006

I've run 64-bit dataportal and sql server 2005 x64 with csla.net 1.5x on the same box.  Connecting to it with both x86 and x64 winforms clients worked great.  The only real hitch is getting IIS into 64-bit mode.  You see while IIS 6 will support multiple framework versions (1.0, 1.1, 2.0) on the same box they must all be either x86 or x64.  You have to run a script to set it for 64 or 32 bit, I believe the default it 32.  The biggest problem happens when you try to install a 32-bit webapp (like VMware Server) in your 64-bit server, for some reason it ends up getting set back to 32-bit mode and your 64-bit CSLA doesn't work until you fix it.

To set IIS 6.0 in Windows 2003 x64 to 64-bit mode you would run this:

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 “false”

To set IIS 6.0 in Windows 2003 x64 to 32-bit mode you would run this:

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 “true”

ajj3085 replied on Friday, September 15, 2006

Sounds like those switches enable 32-bit apps to run in the 64-bit environment.. much like my AMD X2 at home runs in 64bit but if presented with 32 bit it somehow knows and works fine ...

Copyright (c) Marimer LLC