Example: stock market

Client Server Architecture - DoACT, AKT

Client Server ArchitectureKey concepts:- Client Server Architecture - Functional requirements in the 2-tier structures- Functional distribution in the 2-tier structures- Implementation of Business Logic at the Server - Requirements of an Open OLTP System- Benefits and Limitations of 2-tier Client / Server Architecture - The 3-tier Structures- Middleware- Component Software Model- Database Middleware- Transaction Processing and Integration Middleware- Transaction Processing Monitors- Performance Issues in TM- Two-Phase Commit Protocol in TM- Message Sensitive Routing- Lifekeeper Clusters- Repositories in Client - Server Environment- 4GL Application Development Environment- Communication Models- The main standards for open transaction processingClient - Server

Client Server Architecture Key concepts: - client server architecture - Functional requirements in the 2-tier structures - Functional distribution in the 2-tier structures

Tags:

  Architecture, Clients, Server, Client server architecture

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Client Server Architecture - DoACT, AKT

1 Client Server ArchitectureKey concepts:- Client Server Architecture - Functional requirements in the 2-tier structures- Functional distribution in the 2-tier structures- Implementation of Business Logic at the Server - Requirements of an Open OLTP System- Benefits and Limitations of 2-tier Client / Server Architecture - The 3-tier Structures- Middleware- Component Software Model- Database Middleware- Transaction Processing and Integration Middleware- Transaction Processing Monitors- Performance Issues in TM- Two-Phase Commit Protocol in TM- Message Sensitive Routing- Lifekeeper Clusters- Repositories in Client - Server Environment- 4GL Application Development Environment- Communication Models- The main standards for open transaction processingClient - Server

2 Architecture [Salem 1992]The data processing is split into distinct parts. A part iseither requester ( Client ) or provider ( Server ). The clientsends during the data processing one or more requeststo the servers to perform specified tasks. The Server partprovide services for the basic structure is called 2-tier structureThe main basic communication modes:- RPC, remote procedure call- Message-based- The Client and Server parts may reside on the same node or ondifferent nodes- A part can play the roles of a Server of a service and a Client of ananother service at the same time- A Client can be connected to several servers ClientServerFunctional requirements in the 2-tier structuresThe applications may be divided into the following logical functionalcomponents.

3 - Presentation Servicesuser interface, dialog control- Presentation Logicuser interaction, simple validation- Business Logiccontrol flow- Distribution Servicescommunication management- Database Logicintegrity, data manipulations- Database Servicessecurity, transaction management- File Servicesfile sharing Data LogicDistributionBusiness LogicFile ServicesPresentationBusiness LogicData LogicDESKTOPC lientHOSTS erverDESKTOPC lientFunctional distribution in the 2-tier structuresFat clients : Most of the functional modules of the application areperformed on the clientsFile serverLite clients : Only few functional modules of the application areperformed on the clientsRemote Data Client - Server ArchitectureClientServerPresentationBusi ness logicData logic Data servicesFile servicesRemote Presentation Client - Server ArchitectureClientServerPresentation Business logicData logicData & file servicesSplit Logic Data Client - Server ArchitectureClientServerPresentationBusi ness logicData logic Business logicData logicData & file servicesImplementation of Business Logic at the ServerActive elements in the Databases- triggers- stored proceduresTrigger:stored DBMS procedures that are executed when there is change triggering event- responseIt is stored in the DBMSC entralized management and access controlOracle SQL.

4 CREATE TRIGGER name AFTER | BEFORE INSERT |UPDATE | DELETE ON table FOR EACH ROWBEGINPL/SQL blockENDS tored procedures:collection of SQL statements and procedural language statementsthat control the flow of the procedureIt is stored in the DBMSC entralized management and access controlIt provides faster executionMostly pre-compiledRequirements of an Open OLTP SystemTransactionsLogical unit of data processing operations- Atomicity- Consistency- Isolation- DurabilityOLTPOn-Line Transaction ProcessingCharacteristics:- Short time transactions- Several concurrent transactions- Read-write transactions- Database stores the actual state of the problem domainRequirements of open OLTP systems(based on X/Open DTP model)- Vendor independence- Application portability- Distribution transparency- Modularity- Scalability- Reliability- Reconfigurability- MonitoringBenefits and Limitations of 2-tier Client / Server ArchitectureBenefits- Interoperability- Portability- Integration- Transparency- SecurityLimits- The Client and Server are tightly coupled, the Client should use theinterface protocol of the Network traffic is handled less efficiently, because it clients havea direct connection to the The network traffic increases significantly when high volumes ofdata and messages are shipped on the Asynchronous activity.

5 - when a request is sent and an immediatereply is not required - is not The connections are limited to a single resource per The application administration is One cannot tune the response times and there is no capability toperform load balancing- The resources are scaled on the number of connected users not onthe throughput- It consumes many operating system processes and networkconnections in order to support a given set of usersThe 3-tier StructuresDistribution of the different functional modules of the applicationon three different sitesapplicationnetworkdatabase serverDBserverclientUsual distribution:1. tier: Presentation logic, lite client2. tier: Business logic, application server3. tier: Database logic, database Server - less software on the Client - increased security- more power, efficiency- higher scalability- lower support cost- complex structure- problem of heterogeneous data sourcesThe 3-tier structure can be extended to n-tier structure, containingseveral special application serversInternet-based 3-tier architectureOpen, standardized interfaceWEBnetworkdatabase serverDBserverWEB browserThe WEB servers can access the databases through CGI interfaceInterfaces among the WEB browser WEB serverHTML API<FORM.

6 ACTION= URL>..</FROM>2. WEB Server DBMSCLI (usually SQL)SQLEXEC(SQL-statement)2. DBMS WEB serverresult written to standard (HTML-statement)MiddlewareIn order to couple the Server and Client parts from heterogeneousenvironments in an efficient way, the basic Client serverarchitecture is extended by a new integrating resource between the clients and servers. It performsthe following main activities:- translation between the different protocols- optimization of the load-balancing- security control- management of the connections ..The middleware may contain several components may reside on the Server node, on the Client nodeor on a new middleware different types of middleware- database- network- application cooperationServer ClientMiddlewareServer ClientComponent Software ModelThe clients invoke managed Server components, the namedservices.

7 These services implement the core business structure is based on the three-tiers model: Client : it performs GUI and invokes Server componentsmiddle tier: it is composed of Server components to be invokedby the clients - control module with control data- named servicesresource manager: database managementNamed services are managed dynamically, as it offers a betteroptimization, starting and stopping the services depending on thesystem load. These services may invoke other pipelining:A service processes only a part of the request and forwards it to ananother service for further processing. If the first service will befree it can start to process the next request waiting for it. Thus therequests are processed in a pipeline.

8 If the request does not needfurther processing steps, the actual service will return the result tothe Client . A request will touch several moduleServiceAServiceXControl Module and Control DataFunction components of the control module:- naming services- message routing services- load balancing services- configuration management services- transaction management services- security servicesMain system configuration data:- system resources, security level, load balancing level,..- participating Server definitions- accessible services- location information of the services, servers- runtime repository of application statisticsData dependent routing:The service request is mapped to a specific Server group based on avalue contained in a designated field.

9 It routes the request to aspecific service/resource sets. The routing information are stored inBB (Bulletin Board)SecurityIt provides application service authentication , authorization andaccess control through an architected secury interface. Theinterface usually abstracts the Kerberos security model and allowsthe security systems to be integrated with the application. Accesscontrol lists may be used to protect services, queues, or eventsfrom unauthorized MiddlewareThe two main services of the database middleware are the datamanagement and the distribution Management ServiceIt provides the transparent read and write operations to the serverdatabase systems. When it receives a request for data, this servicetranslates the request to the appropriate database language andperforms a query on the target service makes also the database replication transparent to theapplications.

10 It takes the responsibility of keeping all replicateddatabases ServiceThis service provides distribution or database locationtransparency for the applications. It unburden programmers fromneeding to know where applications and data are stored. Theprogrammer has only to give the object real position of the object is determined by the directoryservice. The directory service keeps track of real addresses of thealias names. This enables scaling of applications by relocatinglogic or databases onto more powerful machines. T(Q(A)) Q(A),Q(B)T'(Q(B))ServerRel. A ClientDatabaseMiddlewareServerRel. BTransaction Processing and Integration MiddlewareTransaction processingThe transaction processing (TP) is the automated, interactiveprocessing of transactions to update the a shared database.


Related search queries