eSobi Site Initiation

415 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
415
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • {}
  • eSobi Site Initiation

    1. 1. eSobi site Initiation Allan Huang @ eSobi Inc.
    2. 2. Agenda  Large-scale Site Requirement  Proposed Infrastructure  Testing Infrastructure  Conclusion
    3. 3. Large-scale Site Requirement  Requirement   High availability High scalability  Considered     factors Clustering Load Balancing Fail Over Session Persistence
    4. 4. Clustering  What kind of clustering (Topology)    What kind of communication    Vertical scaling  multiple server running on single machine Horizontal scaling  multiple machines in the cluster One-to-Many Communication Using IP Multicast Server Communication Using IP Sockets What tier should clustering    Web server Application server Database server
    5. 5. Load Balancing  Which  Round-Robin DNS     kind of strategy cheap, easy setup, and simplicity no server affinity support no support for high availability Hardware     expensive, complex setup, and single point of failure server affinity support support for high availability metrics
    6. 6. Load Balancing  Factors    When server selected How server selected (Policy) Where is load balancing accomplished
    7. 7. Fail Over  Solution   Request-level fail over  when one server goes down, all subsequent requests should be redirected to the remaining servers in the cluster Session-level fail over  when one server goes down, another server should be able to carry on with the sessions that were being handled by the first server
    8. 8. Fail Over  Factors    How are server failures detected When is it right time to fail over and try another server What about system and application state at the failed node
    9. 9. Session Persistence  Solution    Memory-to-memory replication File system session persistence Database session persistence
    10. 10. Session Persistence  Factors       How is state communicated How often is it communicated How is object state materialized Is the state persistence mechanism efficient Consistency of replicated state Any network constraints in replicating the session state
    11. 11. Proposed Cluster Setup I  Highly scalable  Fault-tolerant  Dynamically configurable  Automatic cluster member discovery  In-memory session state replication
    12. 12. Proposed Cluster Setup II  Pluggable/configurable load-balancing policies  Group membership notification  No loss of message transmission  Seamless from web application to server
    13. 13. Proposed Infrastructure
    14. 14. Realistic Context Deployment
    15. 15. System Architecture Business Delegate Layer Deployment Layer Business Tier Business Logic Layer (Business Object) Integration Tier Data Access Object Layer Architecture Component Layer (Framework) Domain Object Layer (Domain Model / Entity) Presentation Layer (Servlet / JSP) Presentation Tier
    16. 16. Testing Infrastructure
    17. 17. Testing Context Deployment
    18. 18. Value Object Layer (Domain Object) Presentation Layer (Servlet / JSP) Delegate Layer (Service Locator) Deployment Layer (EJB / Web Services) Business Logic Layer (Business Object) Data Access Object Layer (DAO Object) JUnit / TestNG Framework Architecture Component Layer (Framework) Unit Test Architecture
    19. 19. Conclusion  Next Step?

    ×