Wednesday, April 18, 2007

java Architecture tutorial

Poor, tight coupling Difficult, data access and Integrity – Data can only be modified in allowed ways Privacy – Data is disclosed to authorized entities in authorized ways Auditability – The system maintains logs of actions taken for later analysis Scalability - the ability to support the required quality of service as the load increases Maintainability - the ability to correct flaws in the existing functionality without impacting other components/systems Reliability - the assurance of the integrity and consistency of the application and all of its transactions. Reliability spans from the OS to the Application to the service provided. Availability - the assurance that a service/resource is always accessible Extensibility - the ability to add/modify additional fuctionality without impacting existing functionality Manageability - the ability to manage the system in order to ensure the continued health of a system with respect to scalability, reliability, availability, performance, and security. Effects The following table outlines some inherent properties of common architectures. Single tier Two-tier Three- or Multi-tier Scalability Very limited Still limited, DB connections Good. Resource pooling possible, hardware can be added if and when need arises. Maintainabil business logic are mixed Good, layers can be changed independently. Reliability OK, Data consistency is simple because one storage Availability Poor, single point of failure Poor, DB server is still single point of failure Excellent with appropriate redundancy architecture. Extensibility Poor, tight coupling Difficult, data access and business logic are mixed. Code is dependent on DB schema. Good, layers can be changed independently. Performance OK Poor, DB Server can become bottleneck. Each client requires a connection, no pooling. High network bandwidth required, because all data has to travel to Good. Because the system is scalable, performance can be influenced by choosing the right system components. Bottlenecks can be removed at the relevant layer. Manageabilit y Relatively easy Poor, complex client installation and maintenance OK Security OK Problematic, because client has too much control. Good. Only certain services can be accessed, no direct database access. Firewalls and authentication and authorization systems help to further control access.

No comments: