Você está na página 1de 10

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 1 of 10

INTRODUCTION TO MIDDLEWARE TECHNOLOGIES Definition: Middleware is nothing but a software that provides a link between separate software applications (GUI based) Middleware connects two applications and passes data between them Middleware allows data contained in one database to be accessed through another This definition would fit enterprise application integration and data integration software Another definition for Middleware is The software layer that lies between the operating system & applications on each side of a Distributed Computing System in a network. Middleware is computer software that connects software components or people & their applications The software consists of a set of services that allow multiple processors running on one or more machines to interact. This technology evolved to provide interoperability in support of the move to Distributed architecture which are most often used to support and simplify complex distributed applications. It includes webservers and similar tools that support application development & delivery. Middleware is especially integrated to modern information technology based on XML webservers & service oriented architectures. Uses of Middleware: Middleware is widely used in Distributed applications. Locate transparently across the network, thus providing interaction with service or application. Filter data to make them friendly usable or public for privacy protection. Be independent from network services Be Reliable and always available Add complimentary attributes like semantics.

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 2 of 10

Server-A

Database

Server-B

Fig: Example diagram of Middleware


Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 3 of 10

MIDDLEWARE TECHNOLOGIES
UNIT-I
Introduction to client server computing:
Evolution of corporate computing models from centralized to Distributed computing, client server models. Benefits of client server computing, Pitfalls of client server programming.

Evaluation of corporate computing models from centralized to Distributed computing:Or Reasons for employing distributed computing in business: Distributed Computing has arisen because of a change in business needs. Business today need integrated, flexible, responsive and applications to support the complete range of business process. Problems with existing centralized systems are: 1. 2. 3. 4. Applications were developed to model vertical applications. Applications were built in Isolation. Applications were implemented as Monolithic Systems. The supporting technology was based on a Centralized control model.

Information Technology which is an enabling factor in a systems building has almost reached the stage where these systems can be designed & created. Unfortunately, most businesses have existing systems based on older technology, which must be incorporated in to the new integrated environment. The development & implementation of Client/Server computing is more applications, the only answer to the question, Why build Client/Server applications? is because, the business demands the increased benefits.

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 4 of 10

The primary benefits of distributed Computing include the ability to distribute the computing work load between client workstations & shared servers. Improved Graphical Interfaces for user and improved performance at reduced cost for hardware & software.

Client/Server Computing:Client/Server computing is the logical extension of modular programming with fundamental assumption that separation of a huge program in to its constituent parts (modules). It can create the possibilities & better maintainability. Features: 1. In Client/Server computing, all large modules need not to execute in the same memory space 2. With this architecture the calling module becomes the client, requesting service & the called module becomes the server. 3. Clients & Servers are running separately on appropriate hardware & software platforms for their functions. 4. For example, Database Management Systems servers, specially designed & configured to perform queries (or) file servers running on platforms with special elements for managing files.

Components in Client/Server Computing:There are three components in Client/Server computing. 1. Client Process 2. Server Process 3. Middleware Client Process: - A client process usually manages the user-interface portion of an application; validate data entered by the user and dispatch request to server programs. It is the front-end of the application that the user sees and interacts with others. Beside the client process also manages the local resources that the user interacts with such as the monitor, keyboard, workstation, CPU and other peripherals.

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 5 of 10

Server Process: - The server process fulfills the client request by performing the service requested. After the server receives requests from clients, it executes database retrieval, updates and manages data integrity and dispatches responses to client requests. The server based process may run on another mission on the network. The server is then provided both file system services and application services. In some cases another desktop server acts as software engine that manages shared resources such as databases, printers, communication links or hi-powered processors. The main aim of the server process is to perform back-end tasks that are common to similar applications. Middleware: - The middleware allows applications to transparently communicate with other programs or processes regardless of location. The key element of middleware is NOS (Network Operating System) that provides services such as routing, distribution, and messaging and network management service. Network Operating System relies on communication protocols to provide specific services. Once the physical connection has been established and transport protocols chosen, a Client/Server protocol is required before the user can access the network services. A Client/Server protocol dictates the manner in which clients requests information & services from a server and also how the server replies to that request.

Server
Ethernet

Work Station Work Station

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 6 of 10

Characteristics of Client/Server architecture:-

There are four characteristics of Client/Server architecture. Combination of a client or front-end portion that interacts with the
user, and a server or back-end portion that interacts with the shared resources. The front-end tasks and back-end tasks have fundamentally different requirements for computing resources such as processor speed, memory, disk memory and capacities of devices. The environment is typically heterogeneous and multivendor. The hardware platform and operating system of Client & Server are not usually the same. Client & Server processes communicated through a well-defined set of standard Application Program Interfaces (APIs) and Remote Procedure Calls (RPCs) An important characteristic of Client/Server system is stability they can be scaled horizontally or vertically. Horizontal scaling means adding or removing client workstations with only a slight performance impact. Vertical scaling means migrating to a larger and faster server machines. 1. 2. 3. 4. We are having four types of servers. File servers Database servers Transaction servers Application servers File servers: The simplest form of servers is, with a fileserver the file passes the request for files/file records over a network to the file server This form of data service requires large bandwidth and can show a network with many users. Ex: File downloading in INTERNET. Database Severs: In Database servers, client passes SQL requests as messages to the server and the results of query are returned
Dept. of INFORMATION TECHNOLOGY

Various types of servers:-

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 7 of 10

over the network. The code that processes the SQL request and the data resides on the server allowing it to use its own processing power to find the requested data rather than pass all the records back to a client and let it find own data as the case for the file server. Transaction servers: In transaction servers client invoke remote procedures to reside on servers which also contains an SQL database engine. There are procedural statements on the server to execute a group of SQL statements which either all succeed/fail as a unit Application Servers: Application servers are not necessarily centered but are used to server needs such as download capabilities or regulating an electronic mail process. Basing resources on a server allows users to share data while security and management services are also based on the servers to ensure data integrity and security.

Reasons for employing Client/Server technology in business: Client/Server computing has arisen because of a change in business needs. Business today needs integrated, flexible, responsive and comprehensive applications to support the complete range of business processes.

Problems with existing system include


Applications were developed to model vertical applications Applications were built in Isolation Applications were complex The supporting technology was based on a centralized control model. Information Technology which is an enabling factor in system building has almost reached the stage where these systems can be designed and created. Unfortunately, most businesses have existing systems based on older technology which must be incorporated in

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 8 of 10

to the new integrated environment. The development & implementation of Client/Server computing is more complex, more difficult & more expensive than traditional single process applications. The only answer to the question, Why build Client/Server applications? is because, the business demands the increased benefits.

Business benefits from Client/Server computing : Tremendous benefits for implementing Client/Server technology in business. Following are just few of it. Vendor independence as compared to the main frame computing. This includes application development methodologies, programming paradigms, product & architectures. Organizations have changed from one hierarchy to other hierarchy. Decision making are carried out by many lower ranked managers across the organization rather than performed by CEOs. Network management is replacing vertical management. Faster response & flexibility to changing environment of business world outside. The customer has a single point of contact for all businesses with the organization. The time required to complete the work will be minimized. Better sharing of critical database resources and other application software among clients through the network. Companies can out costs on maintenance in employing Client/Server computing since servers are usually cheaper than mainframe & the performance of servers & mainframe are nearly identical. In network web applications if one machine goes down, the organization can still function properly. Systems grow easily. It is easy to update and modernize system both hardware & software as the companies evolved and has new requirements. In individual client operating environment you can mix and match computer platforms to shoot the needs of environmental departments and users.

Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 9 of 10

Pitfalls for Client/Server computing: The advantages of Client/Server computing dont come without other costs. Overall, the Client/Server environment is more difficult to maintain for a variety of reasons including: 1.) The operating system software is distributed over many machines rather than a single system. 2.) The workstations are geographically distributed as the workstations spread over various geographical areas, the graphical barriers pose difficulties. The centralized computing environment which existed prior to the implementation of distributed computing. The terminals consisted of either dump terminals with no read operating system or intelligent workstations which immolated a dump terminal. Because all Operating Systems software resides on the host computer, software was easily handled. Software maintenance contracts were normally established with the vendor of each host system. Most software enhancements (or) problem fixes were provided by the host vendor and were installed by system programmers during pre-arranged times. Explain how Client/Server computing g can be used in a supermarket environment? The Client/Server architecture is particularly well-suited for LAN based single server establishment. So it is no wonder that they account for around 80% of todays Client/Server installation. This is the typical Ethernet model of Client/Server. It consists of multiple clients talking to a local server. This is the model used in small businesses. For ex: a multiuser dentist office and by the departments of large corporations or a supermarket. The single server nature of the model tends to keep the middleware simple. The client only needs to look in to a configuration file to find its servers name. Security is implemented at the machine level and kept quite small. The network is usually relatively easy to administer. It is a part time job for the member of the group. There are no complex interactions
Dept. of INFORMATION TECHNOLOGY

UNIT-1 MIDDLEWARE TECHNOLOGIES

Page 10 of 10

between servers, so it is easy to identify failures. They are either on the client on the local server. People may be using their server to interact in a very loosely coupled way with some enterprise server. For ex: data such as price list may be downloaded once a day to refresh the local server or inventory data may be uploaded to an enterprise server. Fax and mails can be sent/received any time through the mail server gateway. Typically, the software that interacts with remote servers will reside on the departmental server. Departmental Server will continue to be popular, even in large enterprises, because they provide a tremendous amount of user autonomy and controls. Users feel that it is the server and they can do anything they pleased with it. Departmental Server applications typically address the specific needs of the local clients first, which make users very happy. With Fiber optics and high speed ATM connections it will be hard to detect a performance difference between a local departmental server and an enterprise server a continent away

Prepared Under the guidance of: P.RAMESH BABU, Asst. Professor, DEPARTMENT OF INFORMATION TECHNOLOGY, RIET, RJY Ref: Class Notes (3rd IT, 2011-12)

By I SAI KARTHIK, 09MD1A1218

Dept. of INFORMATION TECHNOLOGY

Você também pode gostar