A distributed computing is where multiple computing units are connected
to complete common task. The larger computing power can do lots of task than
single unit , and searches can be done more efficiently. Successes usually give
the finder credit. Distributed computing split a large and complex process into
subparts and execute them in parallel in distributed components, to increase
productivity.
Distributed system consist of a collection of autonomous computers , connected through a network and distribution
middleware, which enables computers to coordinate their activities and share
the resources of the system , so that user perceive the system as a single ,
integrated computing facility. Distributed system
can be seen as network based system . it exploits network to use remote components
, opposed to the centralized or standalone system. This includes web
application, email etc.
Standalone system
|
Distributed system
|
All the computers are executed within a single device
|
Components are distributed and executed in multiple devices
|
Don’t need a network
|
Need a network
|
Usually one or tightly coupled set of technologies are used to
develop(JAVA, .NET)
|
Multiple and loosely coupled set of technologies are used to develop
(HTML + CSS + JS +PHP)22
|
Elements of Distributed system:
1Processing
components
2Data networks
for components to communicate
3Including
the components who are dedicated for processing the communication , called
Connectors
4Data stores
(data bases)
5The
configure of the above elements
Types of services

Games and Multimedia
RTP- The real-time Transport protocol is a network protocol
for delivering audio and video over IP network. RTP is used in communication and entertainment
system that involve streaming media, such as telephony , video teleconference
applications including WebRTC , television services and web-based push-to-talk
features
SIP-The Session Initiation (SIP) is a signaling protocol
used for initiating , maintaining , and terminating real-time sessions that
include voice , video and messaging
applications.
Mail service
SMTP(Simple mail transfer protocol)
This stands for simple Mail Transfer Protocol. This is a
standard protocol for sending emails over the internet. This is a protocol
which defines mail sending and cant be used for mail receving. This is the most
commonly used protocol for transferring mail between two server. Authentication
is not required likes POP3 and IMAP
IMAP
Stands for Internet Message Access Protocol. Standard
protocol for accessing emails and is a client/server protocol. Here the emails
are received and held by the Internet server. Unlike pop, this doesn’t move the
emails . the biggest difference between POP3 and IMPA is the mail syns up.
Browser-based
·
Plugin-based / standard HTML+CSS+JS
Non –browser-based
·
Mobile app
·
IOT
·
Standard Desktop application components
The data processing is divided into parts . A part is either
client or server. The server part provide services for the clients. This
architecture is depending on both sides.
If one side has some issues it cant be exist
The main communication modes:
RPC,
remote producer call
Massage-based
A client
can be connected to several server
Different architecture for distributed system
Multiprocessor Architecture
·
Simplest distributed system model
·
System composed of multiple processes which may
execute on different processors
·
Architectural model of many large real-time
system
·
Distribution of processor may be pre-ordered or
may be under the control of a dispatcher
Client server architecture
·
The application is modelled as set of services
that are provided by server and a set of clients that use these services
·
Client know of servers but servers need not know
of clients
·
Client and servers are logical processes
·
The mapping of processors to process is not necessarily 1:1
Distributed object architecture
·
There is no distinction in a distributed object
architecture between client and server
·
Each distributable entity is an object that
provides services to other objects and receives
services from other objects
·
Object communication is through a middleware
system called an object request broker
Peer –to – peer architecture
·
Peer to peer system are decentralized system
where computations may be carried out by any node in the network
·
The overall system is designed to take advantage
of the computational power and storage of a large number of networked computers
·
Most peer-to-peer systems have been personal
systems but there is increasing business
use of this technology
Service-oriented architecture
·
Based around the notation of externally provided services
·
A web service is a standard approach to
making a reusable component available
and accessible across the web
The monolithic architecture pattern is the traditional
architectural style that system utilize, with the monolith application built as
single , autonomous unit. While this style has been an integral part of many
businesses, its numerous limitations and issues are motivating more and more to
make the switch to microservices.
Monolithic
structure make any changes to the application extremely slow as it often
affects the entire system. It can require a completely rebuilt and deployed
version of software whenever a modification is made to small section of code. If
developers wish to scale certain
functions of an application , they must scale the entire application , further
complicating changes and updates. Microservices help to solve these challenges and
more
MVC architecture
MVC architecture also known as the model , view and
controller Architecture. Lets discuss about the main elements of this. Here:
1.
Model
2.
View
3.
Controller
Model is the central componenet of the pattern . it’s the application dynamic data
structure , independent of the user interface. Directly manages the data, logic
and rules of the application
View is any representation of information such as chart,
diagram or table
Controller is accepts input and converts it to commands for
the model or view
MVC architecture is highly used web application. There are
multiple goals in the mvc architecture .
Here are:
Simultaneous
development
Code reuse
There are multiple advantages and disadvantages that can
gain from the MVC architecture
Advantages are:
Simultaneous
development
High-cohesion
Low coupling
Ease of
modification
Multi
views for model
Disadvantages :
Code navigability
Multi-artifact
consistency
Pronounced
learning curve
1.Kendo
A great framework for mobile and web app development,
consisting of 3 widgets. UI web(everything you need to build a modern website)
, UI mobile (offers the ability to built
mobile web apps that could be mistaken for native apps) and UI DataVis (enables
developers to implement attractive user-facing visualization of data and
reports)
2.Ember
Originally released in 2011 , Ember takes cues from Angular
when it comes to ability to create dynamic user-facing elements for web apps.
Like Google’s framework , Ember can update the view when the model changes and
vice vresa, keeping the mechanism of apps perfectly in sync
3.AngularJS
Considered by many to be the “big daddy” of Javascript
frameworks, due to the fact it was developed by Google. There’s a huge
developer community behind AngularJS and it excels particular in supercharging
HTML code thanks to its ability to aid the construction of dynamic user
interface
RPC is c based and as such it has
structured programming semantics on other side, RMI is a Java based technology
and its object oriented
With RPC you can just call remote functions
exported into server , in RMI you can have references to remote objects and
invoke their models, and also pass and return more remote objects references that can be distributed among many
JVM instances , so its much more powerful
RMI stands out when the need to develop something
more complex than pure client-server architecture arises
Its very east to spread out objects over a
network enabling all the client to communicate without having to establish
individual connections explicitly
The common Object Request Broker Architecture (COBA) is a specification
developed by the object management group. COBA describes a messaging mechanism
by which objects distributed over a network can communicate with each other
irrespective of the platform and language used to develop those objects
COBA
have two types of objects:
1.
Server provider- The object that include some
functionality
2.
Client – the object that requires the services
of other objects
The service provider object and client object communicate with each
other. Each service provider defines an interface. Which provides a description
of the service provided by client
The XML specification include here relate to web services and
service-oriented architecture
The XML-specification----
a.
Extensible resource identifier (XRI)-URI-compatible identifier
scheme and resolution protocol for abstract identifier
b.
Ink XML- Ink Markup Language is data format for
representing digital ink data that is input with an electronic pen .as part of
a multimodal system
c.
RELAX NG- is schema language for XML based TREX
and RELAX
d.
Schematron –is a language and toolkit for making
assertions about found in XML documents
Also have
XForms / XML Query/Voice XML/XML Schema
Json
Pros –
Simple syntax , which results in less “markup” overhead compared to XML
Easy to use with JavaScript the markup is a subset of JS Object literal
notation and has the same basic data type as JavaScript
Json path for extracting information deeply nested structures
Cons –
No support for comments
Simple syntax , only handful of different data types are supported
XML
Pros –
Generalized markup ; its possible to create “dialects” for kind of
purpose
XML schema for datatype , structure validation. Makes it also possible to
create new datatypes
XSLT for transformation into different output formats
Built in support for namespaces
Cons
Relatively wordy compared to JSON





No comments:
Post a Comment