Distributed application
Encyclopedia
Introduction
Where classic software systems of the past century were mostly based on Client–server models and Client-centric application development, both ultimately run on one single computer, be it the client computer or the server.With the introduction of Intelligent agent
Intelligent agent
In artificial intelligence, an intelligent agent is an autonomous entity which observes through sensors and acts upon an environment using actuators and directs its activity towards achieving goals . Intelligent agents may also learn or use knowledge to achieve their goals...
s, Web API
Web api
A web API is typically a defined set of HTTP request messages along with a definition of the structure of response messages, typically expressed in JSON or XML...
s and Web 2.0
Web 2.0
The term Web 2.0 is associated with web applications that facilitate participatory information sharing, interoperability, user-centered design, and collaboration on the World Wide Web...
and the emergence of Cloud computing
Cloud computing
Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility over a network ....
more and more "multiple machine" approaches emerge, where many systems on several locations can take care of Load balancing (computing)
Load balancing (computing)
Load balancing is a computer networking methodology to distribute workload across multiple computers or a computer cluster, network links, central processing units, disk drives, or other resources, to achieve optimal resource utilization, maximize throughput, minimize response time, and avoid...
by re-distribution of specific tasks, or where each of these machines serves a specific purpose or task.
Examples
Distributed Applications can include:- Distributed systems using general purpose and specialized APIs
- Real time systems for data-input by people – Like HelpDesk software and Client Service Software taking care of appointments and updates on Client Data
- Hardware systems like "the Internet of Things" - With independent components capable of processing specific tasks while communicating to other parts via a network
- Render and computation farms – To render 3D images and do calculations on large datasets and process complex data in general
See also
- Observer patternObserver patternThe observer pattern is a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods...
- Push technologyPush technologyPush technology, or server push, describes a style of Internet-based communication where the request for a given transaction is initiated by the publisher or central server...
- Pull technologyPull technologyPull technology or client pull is a style of network communication where the initial request for data originates from the client, and then is responded to by the server. The reverse is known as push technology, where the server pushes data to clients.. Usually, customers will look for a site and...
- Multitier architectureMultitier architectureIn software engineering, multi-tier architecture is a client–server architecture in which the presentation, the application processing, and the data management are logically separate processes. For example, an application that uses middleware to service data requests between a user and a database...
- Internet of ThingsInternet of ThingsThe Internet of Things refers to uniquely identifiable objects and their virtual representations in an Internet-like structure. The term Internet of Things was first used by Kevin Ashton in 1999. The concept of the Internet of Things first became popular through the Auto-ID Center and related...
- Cloud computingCloud computingCloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility over a network ....