Home All Groups Group Topic Archive Search About

Multi-User Data App Architecture

Author
11 Dec 2006 6:38 PM
Matt Fielder
I'm working on converting my application from a single user, to a
multi-user.  The current architecture is with an MSDE data back end
(switching to SQLExpress soon, but not quite yet).  Each user connects to
the database directly - the connection string is stored encrypted in a local
file, and all settings etc. are stored in the database.  The problem is it
seems that this could rapidly run into problems with scalability and
security.  The other issue is there are some files such as image files that
are stored in the local file system and what is stored in the database is a
path to the file.  For example, if UserA add an image to a record, then
UserB opens that record, they won't be able to see the image as the file is
actually on UserA's machine.  Any direction in where to go with this would
be appreciated.

Author
11 Dec 2006 7:51 PM
Spam Catcher
"Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
news:O00WHOVHHHA.1276@TK2MSFTNGP04.phx.gbl:

> Any direction in where to go with this would
> be appreciated.
>

Look into n-tier architecture. In particular web serviecs and .NET
remoting.
Author
11 Dec 2006 8:40 PM
Matt Fielder
Web services isn't really an option as I don't want to have to require IIS
on servers.  I've started looking at remoting - seems like that might be the
way to go.

I know that "tell me about remoting" is FAR too broad of a question... but I
would appreciate any suggestions people have for where I can go look on my
own.  Any books, websites or other resources that others have found
particularly useful?  (it's a broad topic, and some resources for different
subjects are alwasy better than others)

Show quoteHide quote
"Spam Catcher" <spamhoneypot@rogers.com> wrote in message
news:Xns9896972B4516Fusenethoneypotrogers@127.0.0.1...
> "Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
> news:O00WHOVHHHA.1276@TK2MSFTNGP04.phx.gbl:
>
>> Any direction in where to go with this would
>> be appreciated.
>>
>
> Look into n-tier architecture. In particular web serviecs and .NET
> remoting.
Author
12 Dec 2006 1:17 AM
Spam Catcher
"Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
news:evbfSSWHHHA.1468@TK2MSFTNGP04.phx.gbl:

> Web services isn't really an option as I don't want to have to require
> IIS on servers.  I've started looking at remoting - seems like that
> might be the way to go.

How many users are you looking to service?

> I know that "tell me about remoting" is FAR too broad of a question...
> but I would appreciate any suggestions people have for where I can go
> look on my own.  Any books, websites or other resources that others
> have found particularly useful?  (it's a broad topic, and some
> resources for different subjects are alwasy better than others)

Ingo Rammer's Advanced .NET remoting is the book to buy :-)
Author
12 Dec 2006 5:27 AM
Matt Fielder
Was looking at the book suggested on Amazon... was a little put off by the
"Advanced" in the title.  While I've been working in .Net for a little under
2 years now, remoting is a new topic for me - is there enough of an intro to
remoting to not lose me right out of the gate?

Show quoteHide quote
"Spam Catcher" <spamhoneypot@rogers.com> wrote in message
news:Xns9896CE781EC8Cusenethoneypotrogers@127.0.0.1...
> "Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
> news:evbfSSWHHHA.1468@TK2MSFTNGP04.phx.gbl:
>
>> Web services isn't really an option as I don't want to have to require
>> IIS on servers.  I've started looking at remoting - seems like that
>> might be the way to go.
>
> How many users are you looking to service?
>
>> I know that "tell me about remoting" is FAR too broad of a question...
>> but I would appreciate any suggestions people have for where I can go
>> look on my own.  Any books, websites or other resources that others
>> have found particularly useful?  (it's a broad topic, and some
>> resources for different subjects are alwasy better than others)
>
> Ingo Rammer's Advanced .NET remoting is the book to buy :-)
Author
12 Dec 2006 6:31 AM
Spam Catcher
"Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
news:ekvSr4aHHHA.1276@TK2MSFTNGP04.phx.gbl:

> Was looking at the book suggested on Amazon... was a little put off by
> the "Advanced" in the title.  While I've been working in .Net for a
> little under 2 years now, remoting is a new topic for me - is there
> enough of an intro to remoting to not lose me right out of the gate?

Yes I think so - the basics of Remoting are pretty simple to grasp ... so
you'll want the advanced topics quickly (i.e. authentication, compression,
etc : )

BTW, take a look at Geniune Channels - they're 3rd party Remoting
components which add A LOT of features Microsoft "forgot" to implement.

Also take a look at WCF (Windows Communications Framework), the succesor to
Remoting in .NET 3.0.
Author
12 Dec 2006 8:02 AM
Michel Posseth [MCP]
> Ingo Rammer's Advanced .NET remoting is the book to buy :-)


if you are a C# coder , and want to know everything that happens behind the
scenes i would say Yes you are right


however if you are  VB or C# coder who just wants to create a good designed
multi tier application and doesn`t care about the details behind the scenes
i would recomend this book
http://www.amazon.com/Microsoft-NET-Distributed-Applications-Integrating/dp/0735619336/sr=8-2/qid=1165910377/ref=pd_bbs_sr_2/102-7912395-8652115?ie=UTF8&s=books


and if you are really a die hard you scroll a litle bit to the bottom and
will see that Ingo`s book and the book i mention can be bought in one special
offer price


regards

Michel Posseth [MCP]



Show quoteHide quote
"Spam Catcher" wrote:

> "Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
> news:evbfSSWHHHA.1468@TK2MSFTNGP04.phx.gbl:
>
> > Web services isn't really an option as I don't want to have to require
> > IIS on servers.  I've started looking at remoting - seems like that
> > might be the way to go.
>
> How many users are you looking to service?
>
> > I know that "tell me about remoting" is FAR too broad of a question...
> > but I would appreciate any suggestions people have for where I can go
> > look on my own.  Any books, websites or other resources that others
> > have found particularly useful?  (it's a broad topic, and some
> > resources for different subjects are alwasy better than others)
>
> Ingo Rammer's Advanced .NET remoting is the book to buy :-)
>
Author
12 Dec 2006 4:53 PM
Matt Fielder
I'm not necessarily so concerned with all of the behind the scenes stuff
(especially since I'm sure I'll be switching over to wcf in the next year),
and can get by with c# code but write in and much prefere VB.  On the other
hand having ready access answers to tough questions should they arise is
always beneficial.

It's also my experience that different authors, and different publishers for
that matter complement each other in ways that they cover different topics.
I'll go ahead and order both.

As an interesting aside, I live within 10 miles of 3 large bookstores with
large computer section.  I went out last night to try and find something
locally, and could not find a single title relating to distributed
applications.  I would think this would be a much more common subject.


Show quoteHide quote
"Michel Posseth [MCP]" <MichelPosseth***@discussions.microsoft.com> wrote in
message news:5B15EC82-480D-48B7-9224-3B917282B699@microsoft.com...
>
>> Ingo Rammer's Advanced .NET remoting is the book to buy :-)
>
>
> if you are a C# coder , and want to know everything that happens behind
> the
> scenes i would say Yes you are right
>
>
> however if you are  VB or C# coder who just wants to create a good
> designed
> multi tier application and doesn`t care about the details behind the
> scenes
> i would recomend this book
>
> http://www.amazon.com/Microsoft-NET-Distributed-Applications-Integrating/dp/0735619336/sr=8-2/qid=1165910377/ref=pd_bbs_sr_2/102-7912395-8652115?ie=UTF8&s=books
>
>
> and if you are really a die hard you scroll a litle bit to the bottom and
> will see that Ingo`s book and the book i mention can be bought in one
> special
> offer price
>
>
> regards
>
> Michel Posseth [MCP]
>
>
>
> "Spam Catcher" wrote:
>
>> "Matt Fielder" <mfielderREMOVECAPS@nospam.nospam> wrote in
>> news:evbfSSWHHHA.1468@TK2MSFTNGP04.phx.gbl:
>>
>> > Web services isn't really an option as I don't want to have to require
>> > IIS on servers.  I've started looking at remoting - seems like that
>> > might be the way to go.
>>
>> How many users are you looking to service?
>>
>> > I know that "tell me about remoting" is FAR too broad of a question...
>> > but I would appreciate any suggestions people have for where I can go
>> > look on my own.  Any books, websites or other resources that others
>> > have found particularly useful?  (it's a broad topic, and some
>> > resources for different subjects are alwasy better than others)
>>
>> Ingo Rammer's Advanced .NET remoting is the book to buy :-)
>>
Author
12 Dec 2006 1:19 AM
Kevin Yu [MSFT]
Hi Matt,

For .NET Remoting, you can start from the following link:

http://msdn2.microsoft.com/en-us/library/aa720332(VS.71).aspx

For image problems, you can either

1. Store images as binary data in database.
2. Store images as files in some folder on the server, and put a file path
in the database.

If anything is unclear, please feel free to let me know.

Kevin Yu
Microsoft Online Community Support

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

(This posting is provided "AS IS", with no warranties, and confers no
rights.)
Author
12 Dec 2006 5:44 AM
Matt Fielder
Kevin,

Storing images in a DB is a decent idea and one that I'm considering.  I'm
wondering what other benefits there might be to having a single point of
data connectivity to the DB as well --- have clients connect to the classes
on the server instead of the DB directly.

As for storing files in a folder on the server is concerned, that's kind of
what I had in mind with the concept of remoting.  Place a class on the
server that is responsible for saving and retreiving those images so the
clients don't need access to a folder on the server.  The client would
interact with classes on the server only.


Show quoteHide quote
"Kevin Yu [MSFT]" <v-k***@online.microsoft.com> wrote in message
news:ZL4oMuYHHHA.4020@TK2MSFTNGHUB02.phx.gbl...
> Hi Matt,
>
> For .NET Remoting, you can start from the following link:
>
> http://msdn2.microsoft.com/en-us/library/aa720332(VS.71).aspx
>
> For image problems, you can either
>
> 1. Store images as binary data in database.
> 2. Store images as files in some folder on the server, and put a file path
> in the database.
>
> If anything is unclear, please feel free to let me know.
>
> Kevin Yu
> Microsoft Online Community Support
>
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> (This posting is provided "AS IS", with no warranties, and confers no
> rights.)
>
Author
13 Dec 2006 6:32 AM
Kevin Yu [MSFT]
Hi Matt,

I think both are fine but all depends on your real application. If the
images are frequently read/write, it would be better to put them in file,
which will reduce the work load for the database engine. But it will
require a little more work for creating the file structure for storing
these images.

It would be good if you can use remoting or web service techniques to unify
the access to the database. Because it will be more efficient and more
secure.

You can check the following link for more information on .NET remoting.

http://msdn2.microsoft.com/en-us/library/kwdt6w2k.aspx

If anything is unclear, please feel free to let me know.

Kevin Yu
Microsoft Online Community Support
==================================================

(This posting is provided "AS IS", with no warranties, and confers no
rights.)
Author
11 Dec 2006 8:14 PM
BK
> The other issue is there are some files such as image files that
> are stored in the local file system and what is stored in the database is a
> path to the file.  For example, if UserA add an image to a record, then
> UserB opens that record, they won't be able to see the image as the file is
> actually on UserA's machine.  Any direction in where to go with this would
> be appreciated.

I'd store the images and any other binaries you have in the database
itself rather than just a pointer to its file location.  It's easy
enough to write the binary straight into an image field type and read
it back out.