Distributed computing is a field of computer science that studies distributed systems, whereas distributed systems is a software system components are in the computer network, communicate and coordinate Chan's performance through the message forwarding . Distributed computing is important for any system node komputasinya-node is connected by a network. Computing systems became part of the community.
Thirty years ago, almost all computer-based system built on a central computing units are accessed from the terminal with minimum resources. This changed with the dikenalkannya personal computers, and for the last twenty years we have seen a tremendous increase in the resources available on the client side. For several years, the computing power and the number of personal computers increased faster than a network connection, leading to a scenario where services are tied to the hardware of the client with limited communications capacity. For example, how packaged computer games a few years ago: applications installed on a personal computer and used as a stand-alone system.
During the last ten years, an important trend can be observed: the network connection has increased almost as fast as the computing power. The network connection is increased because the backbone infrastructure has gradually changed from voice telephony into data centric network, and from increased coverage and bandwidth available in the last kilometers. So, the application does not necessarily have to stand on its own and can benefit from the available network connections, e.g. for additional interaction (such as in online games) or for the extra computing power used in data centers. In other words, many applications can be used directly in the data centers and client machine only acts as a powerful set of terminals. So, we should quickly be able to find scenarios that resemble technology forty years ago but is now on the global Internet scale: available wherever and whenever using any terminal that a lot or a little. The advantages of the service developer's perspective is not only the removal of the initial investment in hardware that is needed to offer a service, but can also improve service and support thousands or millions of users. For developers, this service dramatically has reduced the threshold for development and inauguration of the services; resource planning, which traditionally has been a big part of the design of the system to cope with peak demand, now is not a major issue. In addition, high availability still provide services even though the network and computer failure, because it is something that is provided as part of the network infrastructure.
However, the infrastructure that supports the above services is now known in the extreme as complex distributed systems. The main problem is the infrastructure that must evolve with increasing use. It must be done while maintaining the image of a single computing engine that is increasingly powerful. The most effective way to do this is through the horizontal scaling with how to implement a service that uses a small set of computers that are relatively cheap. Instead of using one machine to the limits of his abilities and then, with high costs, replace it with a machine that is twice its electrical power, smaller engines can gradually added to the little group of that computer. A large group of computers will also give us a system that is tolerant of errors because of the small possibility that some computers malfunctioned simultaneously. Provides infrastructure that is scalable and fault tolerant of course is highly desirable.
We can classify the infrastructure that supports distributed computing into four parts. First, the Internet, in the broad sense is defined as the entire high level protocols, middleware, and applications built on top of a worldwide network that is implemented with the TCP/IP protocol family. Many essential services over these networks, e.g. the World Wide Web that is based on the HTTP protocol. Second, Mobile Computing, including mobile phones and other devices that are connected by a wireless network (e.g. GSM, Wifi, Bluetooth, Zigbee). Mobile Computing is part of the mobile telecommunications network which also contains extensive fixed network. Third, Ubiquitous and Pervasive Computing, computing this is a paradigm of human-computer interaction komputasinya devices that become part of our daily environment. We may not know they are there, but they could affect our lives in depth.
An example of a (controversial) is an increase in video camera controller. Pervasive Computing devices are most often used as a network, and therefore form a bona fide distributed systems. Fourth, High performance computing, including infrastructure, Grid and Cloud that can be implemented on top of the Internet, computing clusters, multiprocessor, multicore computing and. Multicore computing has become the main part of the high-performance computing, because a high percentage of microprocessor consumer growth is multicore.
Read also: eight rules of parallel programming for Multicore
The entire infrastructure of the above strongly influenced the modern society. The most noticeable change is in Commerce, social interaction, information search, and mobility.
G. Coulouris while, j. Dollimore, t. Kindberg, g. Blair, Distributed Systems: Concepts and Design, 5th ed., Pearson Education, 2011.