A distributed application is a program meant to run on multiple computers at once and can be stored on a server or in cloud computing. This is commonly used within a network that has a client-server relationship in which a client computer accesses a program from the server and the server does all the processing. Each computer that accesses the application normally is made for a specific purpose. While there are many different distributed applications, the common ones are general programs, collaboration software, real-time systems and computational systems. Using a distributed application typically is beneficial, but this can pose a problem if the server is weak or slow.
Distributed application systems can be used on many different network types, but they are most often seen in client-server networks. In this type of network, the client computer — or the computer people use — accesses programs and information from the server. Not only is the application used from the server, but the server is responsible for doing all the processing for the program to work. Cloud computing also can be used for this, in which case the program is stored on a cloud server and client computers access the program.
While each computer or person may use the distributed application for general purposes, the computer or person is normally specialized or instructed to perform a specific task. For example, one computer may be used or optimized to create an image while another is used for text. The user also may be instructed to perform a certain task, rather than just performing generic tasks.
There are many different distributed application types, but there are four primary categories. General programs are common programs found on a computer, just they are made to work on several computers at once. Collaboration software is made so several people can work on a single project at the same time; each user typically works on a different section of the project. Real-time systems are chat-and-ticket programs in which users answer customer questions online. Computational programs are made to process code, and using several computers at once optimizes and speeds up processing.
Using a distributed application is generally beneficial, because it makes it easier for many users to access and use a program at once, though there can be a problem if the server is not strong. The server is commonly responsible for performing the processing, so this puts a lot of strain on the server. If the server is weak or slow, then this can lead to lagging or more serious problems on computers accessing the program.