SgDotNet
Singapore Professional .NET User Group -For Cool Developers

Client/Server Application in DotNet

rated by 0 users
This post has 22 Replies | 1 Follower

Top 50 Contributor
Posts 94
eddykuan Posted: 04-24-2007 11:40 AM

hi all,

 

need some advices here. im currently doing the feasibility study of developing a client/server application to be deploy on a high speed lan environment using the dotnet framework.

 

i've a situation here, i need to be deploy in a cluster of server (a few servers and a few clients connect to it), the question is, can i employ the Network Load Balancing technology here using the dotnet framework?

 

what approach should i use? using .net remoting or xml web services? or have any other better, or any other solutions in using the dotnet framework to implement the NLB?

 

thanx for your feedback.

 

cheers,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94

or is there any microsoft answer to the client/server application development in the preferably TCP/IP domain?

 

cheers,

eddykuan 

unsigned eddykuan... :P
Top 25 Contributor
Posts 442
eddykuan:

or is there any microsoft answer to the client/server application development in the preferably TCP/IP domain?

"Client/Server Application" development is no longer fashionable. Wink

Are you referring to "Distributed Application Development"?

If yes, you can take a look at these. COM+, MSMQ, XML Web Service, WCF.

Don't forget to read this article before you start designing your "Distributed System".

Maung Maung
Top 10 Contributor
Posts 2,290

MaungMaung:
"Client/Server Application" development is no longer fashionable.

It depends on the nature of the application, what is required out of the whole scenario. In these days if it is carry out high-level generic exchanges of data, it does not make sense to build a proprietary protocol when the .NET Framework offers many communication technologies that do it better. However, we do not have the full picture on what Eddy and gang are really thinking of developing here. There are times when raw network programming is a good choice for fast efficient transmission of data.

The melody of logic will always play out the truth. ~ Narumi Ayumu, Spiral

Top 50 Contributor
Posts 94

yeap... just now i found a book in the library found out that the system that we're going to implement is the distributed system.

 

for XML Web Service, dun think it's suitable as the system that i need to build have to communicate with the previous existing system through TCP/IP.

 

and for COM+, MSMQ and MCF, i think i need to study more on it especially MCF which i totally have zero idea about it.

 

thanx again.

 

cheers,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94
icelava:

MaungMaung:
"Client/Server Application" development is no longer fashionable.

It depends on the nature of the application, what is required out of the whole scenario. In these days if it is carry out high-level generic exchanges of data, it does not make sense to build a proprietary protocol when the .NET Framework offers many communication technologies that do it better. However, we do not have the full picture on what Eddy and gang are really thinking of developing here. There are times when raw network programming is a good choice for fast efficient transmission of data.

 

ok basically the thing sounds like this, i need to build a server-type system which can be integrate with other clients and servers which is basically not implemented in dotnet. the server system that im gonna do will be deploy in a cluster of servers and the cluster might be reside in other geographical location.

 

question is, whether the server-type system can be implemented using the dotnet framework or not? if yes, then which technology is best to suit, COM+, MSMQ, XML Web Services, .Net Remoting or anything else which sound better?

 

thanx ;) 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94
MaungMaung:
eddykuan:

or is there any microsoft answer to the client/server application development in the preferably TCP/IP domain?

"Client/Server Application" development is no longer fashionable. Wink

Are you referring to "Distributed Application Development"?

If yes, you can take a look at these. COM+, MSMQ, XML Web Service, WCF.

Don't forget to read this article before you start designing your "Distributed System".

 

yeap... if for example, im gonna develop the .Net Distributed Application Server using the .Net Remoting, can i deploy the same application on a few computer server machine runnning concurrently? what would happen, if one of the computer server machine down? can the .Net Remoting itself handle it? is the .Net Framework has the ability to handle the error or redirect to continuosly run on another workable computer server machine?

 

what other dotnet technology can i employ in such a situation?

 

thanx,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94
eddykuan:

for XML Web Service, dun think it's suitable as the system that i need to build have to communicate with the previous existing system through TCP/IP.

 

sorry if let's say i've no choice but to use the XML Web Services, can i communicate the XML Web Services with the other client or server using TCP/IP?

 

thanx ;) 

unsigned eddykuan... :P
Top 25 Contributor
Posts 442

eddykuan:
 

sorry if let's say i've no choice but to use the XML Web Services, can i communicate the XML Web Services with the other client or server using TCP/IP?

TCP/IP is simply a network communication protocol which primarily used in Internet and Web communication.  And many application-level protocols, such as HTTP, FTP, SMTP are built on top of TCP/IP communication protocol.

XML Web Services, on the other hand, is intended for interoperating applications from heterogeneous platforms as it is operating based on standard suites of Internet protocols, such as HTTP, SOAP.

To answer your question plainly, YES, XML Web Service can communicate with other systems running on various platforms that support Internet and its standard suite of protocols.

Maung Maung
Top 25 Contributor
Posts 442
eddykuan:

yeap... if for example, im gonna develop the .Net Distributed Application Server using the .Net Remoting, can i deploy the same application on a few computer server machine runnning concurrently? what would happen, if one of the computer server machine down? can the .Net Remoting itself handle it? is the .Net Framework has the ability to handle the error or redirect to continuosly run on another workable computer server machine?

what other dotnet technology can i employ in such a situation?

Whether your application can operate / function correctly in server farm environment is mainly depend on the architecture of your system.  Technologies employed have little responsibility for the scalability requirement.  No matter what technology you use, if your system is not well-designed to operate in the large-scale environment, it won't be scalable.

Read more on Designing for Scalability here.

For implementing server farm, you can consider Microsoft Application Center 2000 for Web and Application Server, and Windows clustering services for Databases.  Read more on various Microsoft clustering technologies.

Maung Maung
Top 50 Contributor
Posts 94

hi MaungMaung,

 

thanx for all the links to those information. i understand that in order that the application to be able to perform what we really need it to be, we need a good detailed architectural design. but in my case here, we still in the very beginning of the planning phase, where the management pushing me to give them the answer of whether the dotnet framework able to be employ in such server environment or not, and since im the only one who has a little bit of dotnet experience in my company here, so there's no one they can turn to consult currently. if i give them the plain answer YES, they will ask me back, HOW?

 

i think this kind of situation is more towards of handling work relationship issue rather than the actual designing or implementation issue. 

 

anyway, thanx for all the advice again. will update to u all any progress of my situation here.

 

cheers,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94

ok i've updated requirement from what i understand.

 

i've a few clients, already been develop using NON-dotnet MFC, i want to build the server application in dotnet (basically is a cluster of servers and use the NLB) to communicate with those existing NON-dotnet MFC clients, question is:-

1) how difficult it is to develop the server application?

2) how difficult it is to scale out my server?

3) how difficult it is to integrate with another system in another platform or build in another language? 

4) how would the dotnet server application handle the error when one of the server is down? is it handle by the framework itself or we need to write the error handling code to handle the error?

5) what type of technology is best or suitable to be use to develop the server application and what protocol is use to communicate with the client? .Net Remoting or XML Web Services or etc?

 

just only for deciding on whether we want to implement the dotnet framework or not as we might eventually wanted to integrate with another system easily.

 

cheers,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94

hi guys, if all my question here not clear to u all, please pardon me as basically i really do not have much experience in dotnet.

please forgive me if i write something wrong here k ;) 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94

ok problem domain updated again.

this time with some illustration for clearer understanding.

thanx for all your comments ;)


 

 

 

do u think this kind of setting is possible? can i just deploy only one dotnet application server into that cluster of servers and let the dotnet framework or ms windows server 2000 to handle the error when one of the server is down? is it hard to deploy the dotnet application in such situation? is there any problem with the client communication? 

 

thanx alot,

eddykuan 

unsigned eddykuan... :P
Top 50 Contributor
Posts 94
eddykuan:

1) how difficult it is to develop the server application?

(maybe in terms of months and manpower to complete - like how many months, how many dotnet expert and how good they're)
 

 

eddykuan:

2) how difficult it is to scale out my server?

(in terms of skills and knowledges - like do our manpower need to have full or complete knowledge in the server and dotnet technologies)

 

eddykuan:

3) how difficult it is to integrate with another system in another platform or build in another language?

(same terms as in question #2)

 

eddykuan:

4) how would the dotnet server application handle the error when one of the server is down? is it handle by the framework itself or we need to write the error handling code to handle the error?

(modified this question to - how would the dotnet server application handle the error when one of the server is down? is it handle by the framework itself or do we need to write the error handling code to handle the error and redirect the broken server to another workable server in order not to interrupt the business process?)

 

i think my questions here is some what in the sense of managing a project instead of building it.

anyway, hope there're kind soul to guide me here.

thanx.

 

cheers,

eddykuan 

unsigned eddykuan... :P
Page 1 of 2 (23 items) 1 2 Next > | RSS
Copyright SgDotNet 2004-2008
Powered by Community Server (Commercial Edition), by Telligent Systems