1 / 14

Ift 458/598

Ift 458/598. Middleware programming & database security. 00. Overview. Dr. Joseph M Kuitche Information Technology ASU Polytechnic School. About Me. MS in Computer Engineering. Ph.D. in Industrial Engineering Area of research: Solar reliability, predictive modeling, and data analytics.

jamesc
Download Presentation

Ift 458/598

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ift 458/598 Middleware programming & database security

  2. 00.Overview Dr. Joseph M Kuitche Information Technology ASU Polytechnic School

  3. About Me • MS in Computer Engineering. • Ph.D. in Industrial Engineering • Area of research: Solar reliability, predictive modeling, and data analytics. • Focus in IT Program: System Analysis & Design • Computer Organization & Architecture: CPU design & implementation, OS, electronic data, etc. • Programming & scripting languages: Just enough programming skills for developing APIs using scripting languages • Unix OS

  4. Information System Structure • The layers of an IS logically represent functionality • These layers can be combined and distributed in different ways • When distributed, layers are referred to as Tiers • We can distinguish 4 different kinds of IS: • 1-tier • 2-tier • 3-tier • N-tier

  5. 1-tier • Pros • Merging of layers to optimize performance: use of low-level language, no context switching, no complex data transformation, no networking overhead • Little or no client side development, maintenance, or deployment costs • Cons • Monolithic structure • The server side is difficult and expansive to maintain

  6. 2-tier • Came with the emergence of PC (i.e., inexpensive hardware) • Presentation layer can be detached from the layers below and deployed on the cheaper and smaller machines • The best example of two-tier is client/server architecture • Client = presentation layer • Server = application layer and resource management layer

  7. Client/Server • Clients can be • thin - provide only a minimum of functionality, and easier to port/install/maintain, require less processing capacity (wider range of computers) • thick - provide wide range of functionality: more sophisticated, offer richer functionality, large footprint and use considerable resources • Client/server is associated with many key developments in software for distributed systems • Remote Procedure Calls (RPC): interaction between client and server • Application Programming Interface (API) • stable published interfaces which can be used by clients • specify how to invoke a service, expected responses, effects on internal server state • C/S architectures became starting point for many crucial aspects of modern information systems • Services – individual server programs responsible for app logics, • Abstraction of service interface from the implementation • Standardization to address need for services (the last example are Web services).

  8. 2-tier – Contd. • Pros • Better computational load-sharing • The presentation layer can be customized based on client needs • Cons • Tight coupling between Application Logic and Resource Management layer: single server can serve only limited number of clients • Servers are typically running on a less expensive machines – limited scalability • Clients cannot be easily made to connect to the different servers • Leads to architecture in which Client integrates multiple servers

  9. 3-tier Architecture • clear separation between each of the three layers • Concepts introduced: Clear interfaces of resource managers (e.g., ODBC and JDBC); standardized interfaces for application logic code. • Pros • The mid-tier allows for a proper architectural integration of legacy servers • Improved scalability and reliability due to the possibility to distribute tiers • Cons • Complex • The mid-tier could be source of inefficiencies • Problematic connectivity through the Internet

  10. N-tier Architecture • Pros • Provide a mean to better decoupling the presentation logic to clients • Additional Tiers can take care of supporting Internet connectivity • Cons • Complexity quickly grows with the number of Tiers

  11. Middleware: Basic Definition • A middleware service is a general-purpose service that sits between platforms (or resources) and an applications • A middleware service must: • Meet the needs of a wide variety of applications • Have implementation that runs on multiple platforms • Support standard APIs

  12. Middleware Programming The client application sends a request to the server for a resource; the server then processes the request and returns the response

More Related