Download presentation
Presentation is loading. Please wait.
Published byHarriet Lindsay Warner Modified over 8 years ago
1
Victor Mushkatin, MCSE, MCSD CORPORATION Alexander Zakonov, MCSE, MCSD Stephen Pelletier, MCSE
2
AVICODE provides PRODUCTS to facilitate integration of LEGACY BACK-END servers with FRONT-END WEB applications. CODE LIBRARIES APPLICATION FRAMEWORKS ESSENTIAL SERVER TOOLS RAPID DEVELOPMENT TECHNIQUES CORPORATION
3
VALUE PROPOSITION Lower Software Development Costs Enable Rapid Development Enable Connectivity to Business Portals and Application Service Providers TARGET MARKETS Web Developers, Internet Start-ups Corporate Intranet Developers CORPORATION
4
B2B – BUSINESS PORTALS CYNOPS.COM – Legal Services E-SHIPPINGSOLUTIONS.COM – Shipping Transactions B2C - COMMERCIAL WEB SITES MIMRX.COM – Prescription Orders LEASETRADING.COM – Leased Equipment CORPORATION
5
Programming techniques for developing stateless web applications using VB under IIS and COM+ CORPORATION
6
What is a Stateless Object ? Object that does not maintain state across method calls called stateless Object Object = State + Behavior Stateless Object = Object - State
7
Why do we need Stateless Objects ? Scalability Transactions Nature of the Internet (HTTP)
8
What are the issues introduced by stateless approach ? Context recreation Difficult design
9
What is the context ? Application context – configuration information for different resources User state – information specific to the user session
10
Custom “class factory” Class factory is an agent that creates instances of objects that initialized with application context (Code example)Code example
11
Adding transaction support to “class factory” (AppContext) (Code example)Code example
12
Adding object caching to “class factory” (AppContext) (Code example)Code example)
13
Additional techniques that simplify coding and system maintenance Custom resource wrapper Performance logging Error Handling DB COM Wrapper
14
Managing State in Web Applications CORPORATION
15
What is a Web farm ? Web farm is a GROUP of SERVERS that use load balancing techniques to distribute the workload of incoming requests Application availability Horizontal Scalability
16
Load balancing techniques Session-based load balancing Round-robin DNS Software based products (WLBS) Request-based load balancing Hardware based product (LocalDirector/CISCO, BigIP/F5, NetFoundry)
17
Maintaining state in load balancing scenario Client Side Very easy to store and retrieve data Limited size of the state data Security issues Middle tier IIS Single point of failure Supports only session-based LB Bad distribution of request Database Data durability Virtually “unlimited” size Could be expensive
18
approach … Sign URL with embedded session ID Minimize number of hits to the DB server (Code example)
19
What are the common problems of persistent session management solutions ? Flat nature of all existing session mechanisms ASP/HTTP does not provide infrastructure for defining variable scope
20
Typical Scenario ASP1 ASP2 Call ASP2.ASP Work within ASP2.ASP Return back to the page that called ASP2 (Code example)Code example
21
ASP Call Stack using AVICODE AX Code Library axCall, axCallEx – PUSH return address to stack axReturn – POP return address from stack axPass – call page without modifying stack axEscape – clear the stack
22
How does it work ? ASP1 ASP2 axCall(“ASP2.ASP?_mode=view”) axPass(“ASP2.ASP?_mode=view”) axReturn() (Code example)Code example
23
Yet another problem – Heavy Objects Very time consuming to initialize and destroy objects (i.e. Exchange and Index Server recordsets) Legacy objects
24
AVICODE DECA Distributed Caching for Applications Scales COM - DCOM Applications Provides tools to migrate single server application onto Server Farms environment Provides COM-based interfaces for integration with COM-enabled languages (VB, C++) Provides Distributed Object Pool to minimize object instantiation time and memory resources
25
AVICODE DECA Principal Architecture
26
Example of performance benefits of storing heavy Recordset in DECA (Code example)Code example
27
TEL: 860-678-7777 Info@avicode.com FAX: 860-678-7779 www.avicode.com CORPORATION
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.