Question
1. Describe the important and distinguishing properties of Peer to Peer computing with the client/server architecture
2. Frameworks for development. Compare and contrast any TWO of:
a. Java
b. .NET
c. Ruby on Rails
d. Turbo Gears
e. Google Gears
f. AJAX frameworks
Answers
In a peer to peer network, two or more computers (nodes) share their resources. These nodes will act both as the server and the client at the same time. It will act as the client when requesting for a resource and it will act as the server when it is administering resources to other peers. Peer to peer is a de-centralized network resource sharing solution. Scalability and robustness is the main feature of a peer to peer network, although sometimes quality and reliability is the downfall.
In Client Server architecture, resources are more centralized. Files will be stored in a server and/or server mirrors and will e accessed by clients. A client server solution, although may not offer the same level of data redundancy as a peer to peer network, it offers a more reliable and secure solution for the users. Client server architecture normally uses tiers. Imagine the tiers as layers in a wedding cake. Each tier handles different request. The commonly found configuration for e-commerce is the 3-tier architecture which is literally interface-control-storage.
.Net and java will be compared here
The .Net architecture is a unified programming environment (framework) developed by Microsoft. It supports multiple programming languages in its framework. This is enabled by utilizing Microsoft Intermediate Language in code assembly. Net is highly aimed for developing object oriented solutions rapidly and as flexible as possible (with a vast array of programming languages to choose from) so that developers are free to choose their preferred language. The only downside to this is the availability of the framework in which Microsoft currently only officially release and support their frameworks exclusively for their operating systems.
Java is a platform independent programming language developed by Sun Microsystems. The trick behind being platform independent is that to run Java, all you need is a Java Virtual Machine (JVM) available for a small download for all types of operating systems. There are many flavours of Java according to the need of the developer. There are J2SE for everyday computing, J2ME for mobile computing and J2EE for enterprise based applications.
0 comments:
Post a Comment