locked
Distribution of BAL RRS feed

  • Question

  • User-60290905 posted

    I have a question regarding the distribution of BAL. Can we distribute our BAL into multiple server to make our product more scalable? Means say server1, server2, server3 all will host the BAL code, and the UI will communicate any of the server on demand basis.

    Wednesday, October 19, 2011 3:20 AM

All replies

  • User-1598917946 posted

    If you are writing your business logic in a seperate class librart you can certainly do that you can Simply keep the dll in GAC for shared applications and individual bin folder for particaular applications on different servers ...simply add reference to the dll and you will be good to go

    Wednesday, October 19, 2011 3:28 AM
  • User-60290905 posted

    Thanks for ur reply, actually i want that my UI will connect serverA for one time next it will connect to serverB , means a routing mech will be there which will redirect my UI call to some server in random basis where my BAL will be hosted.

    Wednesday, October 19, 2011 3:49 AM
  • User-1598917946 posted

    You can certainly do that .... Are you facing any issues??

    Wednesday, October 19, 2011 3:52 AM
  • User-60290905 posted

    yes , UI will have the reference of BAL right, now my quetion is that it is untill the runtime UI will not the knoledge of which BAL on which server to refer.

    Wednesday, October 19, 2011 3:54 AM
  • User-1598917946 posted

    In that case have all the refernces in place and decide at runtime conditionally wihich instance (object to create)

    Wednesday, October 19, 2011 4:00 AM
  • User-60290905 posted

    ok , may be a factory will do that , but how i restore state in a state less application like the UI is build in ASP.net,

    Wednesday, October 19, 2011 4:05 AM
  • User-1598917946 posted

    Store state in sql server temp or if you like permanent table and fetch it from there

    Wednesday, October 19, 2011 4:24 AM
  • User-60290905 posted

    Thanks for your reply. You have correctly analyzed my situation. I have to process very large data into by business layer, because I am design my application as domain centric   ie. I am putting the all business rule in my business layer not in the Store Procedure. For this purpose I am using WCF in my application service layer and they are much loosely coupled.

    For some process I am puling a billion of data at a time from the DB and processing it, day by day my application in growing larger & larger and a lot of data is coming up. So for this purpose hosting my BAL WCF into one particular Server, process getting slow. So I am in a position where I feel I need to split my Services into multiple servers.

    Another thing is that I want my BAL to call the DB as less as possible, so I need to provide some caching mechanism in my BAL. Can u put some light in this matter; it will be very helpful for me.

    Thanks for your reply and your time.

    Awaiting reply.

    Friday, October 21, 2011 8:08 AM
  • User1259239129 posted

    setup load balancer in hardware level is probably one way you can look into.

    Saturday, October 22, 2011 3:35 AM
  • User-1598917946 posted

    Another thing is that I want my BAL to call the DB as less as possible, so I need to provide some caching mechanism in my BAL. Can u put some light in this matter; it will be very helpful for me.

    U could store data commonly used or reusable data in ApplicationState ,because it can be accessed via whole application not for a paticular session.

    Or you can use the inbuilt caching features listed in this MSDN article

    http://msdn.microsoft.com/en-us/library/xsbfdd8c%28v=vs.71%29.aspx

    Saturday, October 22, 2011 5:29 AM