SlideShare uma empresa Scribd logo
1 de 15
Keeping E-Business Open for Business™




                     BEA Users Group
                           January 16, 2003

    Embedding WLS Server –
     Experience of Building a
    J2EE-based Management
             Server

                Sanjeev Kumar
           skumar@resonate.com
    Management Server Team
         Resonate Inc.




    www.resonate.com
1   Resonate_presentation title
Experience of Building a J2EE-based
       Management Server

 • Basic Control Flows & Characteristics
 • Development Issues
 • Installation & Packaging Issues
 • Operational & Performance Issues




Resonate_presentation title
Commander Solutions – “Moving Parts”

                       Test Engine              Management   Watchdog               Configured Backup
                                                  Server                            Management Server
                                                                                          Node


                                                    PTA




                                 Pass-through
            WLS Server                                                   Backup Pass-
                                    Agent                               through Agent

                                          AA
                                                                               AA

               cm_wls
                                     cm_solaris


       signifies a node (machine) boundary
       signifies “ping” or heartbeat traffic
       signifies configured (primary) connections
       signifies configured backup connections



   Resonate_presentation title
Management Server – Code Layers
                GUI
                                       SLO Manager

                   Servlets             Rules Engine
                                         Scheduler

   Stateless Session Beans     JMS    Failover Manager

                                       Tests & Actions
   Singletons (Entity Beans)
                                     Statistics & Events

                                      Data Subscription
              DB Interface
                                         Discovery

         Weblogic Server             Communication Hub




Resonate_presentation title
Management Server: Characteristics
 • J2EE Technologies Used
     – Servlets, JSP’s, Struts Framework
     – Session Beans, and (partially) Entity Beans
     – BMP, JDBC, and DB Connection Pool
     – (In-memory) JMS
     – XML Parsers

 • WLS HTTP Listener
 • WLS Startup/Shutdown Hooks
 • Different from an In-house, Traditional Application
     – Packaging & Installation
     – Resource planning for varying scales of deployment




  Resonate_presentation title
Management Server: Characteristics
  • Design Patterns Used
         – Singletons: key functional components
         – Value Objects: persistent data
         – Session Bean per Singleton
         – Publish & Subscribe (JMS) for Asynchronous Communication

  • Rules Engine
         – Events combined with AND’s and OR’s
         – Event correlation w.r.t. time and occurrences

  • Agent Communication
         – Persistent and non-persistent message channel
         – Thread pool created and managed by the server



 Resonate_presentation title
Development – Servlet Container
            Servlet Container
                  – Application level authorization filter
                  – Use of JSP’s, servlets, struts framework, and bean shell
                  – Management of HTTP sessions for server failback


HTTP Request                                      Stateless                       JDBC
                    Java            Auth.         Session          Singleton/
 GET/POST          Servlets                        Beans          Value Objects


HTTP Response        Java
                    Server
                     Page
                                               Stateless Session Beans
                                                                              JDBC
                                             (Service Object Model)
            Web Container



                                            Enterprise Java Beans Container



      Resonate_presentation title
Development – EJB Container
• Session Beans
   – <session-type> - stateless; <transaction-type> - bean
   – <isolation_level> - TRANSACTION_READ_COMMITTED, for all methods

• Entity Beans
   – Persistence: <db-is-shared> - true; use of is_modified as “dirty” bit
   – Entity-cache: <concurrency-strategy> - database
   – db_is_shared = false; Caused transaction timeouts
   – db_is_shared = true; Excessive ejbLoad()’s and ejbStore()’s
   – Seen intermittent reentrancy exceptions; possible bug in WLS61sp1

 Moved functionality from entity beans to singletons
 and value objects


 Resonate_presentation title
Development – “Backend”
• Blocking vs. Non-blocking Operations
  – Use of request queues for op’s with high latency (e.g. writes to DB)
  – Decoupling of components via JMS server thread-pool

• Error Handling
  – Logging of application level errors, with varying levels of severity
  – Map most WLS and DB errors to user-consumable errors

• Debugging
  – Synchronization of entries across log files in the control flow chain

• Throughput
  – Data intensive, DB and disk I/O bound
  – Parallelization of disk I/O across as many disks as possible



  Resonate_presentation title
Installation & Packaging
    • Usage
          – Silent Install of WLS
          – Install of WLS as a service
          – Embedded WLS (ISV) License

    • Issues Discovered (“Nits”)
          – WLS uninstall is not silent
          – WLS uninstall is not "cumulative", i.e. uninstall of
            WLS61sp1 requires uninstall of WLS61
          – Uninstall does not remove BEA directory completely




0   Resonate_presentation title
Operational Issues: Config. & Startup
         • Server Startup & Shutdown
               – Startup and shutdown class hooks via config.xml
               – Ordered startup of server state
               – Orderly shutdown in the case of failback to primary

         • Management Server (App Level) Config File
               – Setting singleton and thread states at startup time
               – User-visible vs. hidden parameters

         • Log Generation
               – Application level log file
               – Cyclical set of log files




1     Resonate_presentation title
Operational Issues: Performance Related
     • Thread-pool Sizes
          – Strict control of application-spawned threads & execute queue
          – Lack of control of JMS server thread pool size (WLS6.1)

     • Java Heap Sizing
          – Guidelines to specify typical and max on heap size
          – Min & Max for heap and new-space set equal at startup
          – Experimentation required for survivor-ratio and min/max of heap-
            free ratios

     • Database Throughput
          – Control over database and disk I/O throughput
          – Indirectly impacts GC performance



2    Resonate_presentation title
Summary-I
     • Things that worked
            – EJB Container: Stateless session beans
            – In-memory JMS message propagation (pub/sub)
            – Weblogic Server, Rel 6.1sp1, in general
            – Online docs (edocs.bea.com)
            – BEA’s consulting services

     • Things that “kind of” worked
            – Silent install, uninstall & release upgrades of WLS
            – Use of debuggers to step through application code




3   Resonate_presentation title
Summary-II

    • Things that did not work
          – Full GC & network connections

          – Predictability (and outcome) of full GC

          – Network I/O (as supported in JDK 1.3.1)
          – Entity beans & application spawned threads




4   Resonate_presentation title
Questions?

                                     Q&A




5   Resonate_presentation title

Mais conteúdo relacionado

Mais procurados

JBoss started guide
JBoss started guideJBoss started guide
JBoss started guide
franarayah
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
Jeffrey West
 
Sp2010 high availlability_sql
Sp2010 high availlability_sqlSp2010 high availlability_sql
Sp2010 high availlability_sql
Samuel Zürcher
 

Mais procurados (20)

Oracle WebLogic 11g Topology
Oracle WebLogic 11g TopologyOracle WebLogic 11g Topology
Oracle WebLogic 11g Topology
 
WebLogic FAQs
WebLogic FAQsWebLogic FAQs
WebLogic FAQs
 
WebLogic Deployment Plan Example
WebLogic Deployment Plan ExampleWebLogic Deployment Plan Example
WebLogic Deployment Plan Example
 
JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
JBoss started guide
JBoss started guideJBoss started guide
JBoss started guide
 
Learn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationLearn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c Administration
 
(ATS3-APP08) Top 10 things every Symyx Notebook by Accelrys Administrator sho...
(ATS3-APP08) Top 10 things every Symyx Notebook by Accelrys Administrator sho...(ATS3-APP08) Top 10 things every Symyx Notebook by Accelrys Administrator sho...
(ATS3-APP08) Top 10 things every Symyx Notebook by Accelrys Administrator sho...
 
Quest v ranger 6.0 product overview - august 2012 sd
Quest v ranger 6.0   product overview - august 2012 sdQuest v ranger 6.0   product overview - august 2012 sd
Quest v ranger 6.0 product overview - august 2012 sd
 
Powering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogicPowering the Cloud with Oracle WebLogic
Powering the Cloud with Oracle WebLogic
 
Weblogic configuration
Weblogic configurationWeblogic configuration
Weblogic configuration
 
Instruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environmentInstruction on creating a cluster on jboss eap environment
Instruction on creating a cluster on jboss eap environment
 
Physical Architecture Layer Design
Physical Architecture Layer DesignPhysical Architecture Layer Design
Physical Architecture Layer Design
 
(ATS4-APP01) Tips and Tricks for a Successful Installation of Accelrys Electr...
(ATS4-APP01) Tips and Tricks for a Successful Installation of Accelrys Electr...(ATS4-APP01) Tips and Tricks for a Successful Installation of Accelrys Electr...
(ATS4-APP01) Tips and Tricks for a Successful Installation of Accelrys Electr...
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
 
Weblogic security
Weblogic securityWeblogic security
Weblogic security
 
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server Performance
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencast
 
PACLUG sametime presentation
PACLUG sametime presentationPACLUG sametime presentation
PACLUG sametime presentation
 
Sp2010 high availlability_sql
Sp2010 high availlability_sqlSp2010 high availlability_sql
Sp2010 high availlability_sql
 
(ATS3-APP13) Tips and Tricks for Monitoring and Managing Symyx Notebook Serve...
(ATS3-APP13) Tips and Tricks for Monitoring and Managing Symyx Notebook Serve...(ATS3-APP13) Tips and Tricks for Monitoring and Managing Symyx Notebook Serve...
(ATS3-APP13) Tips and Tricks for Monitoring and Managing Symyx Notebook Serve...
 

Semelhante a BUG - BEA Users\' Group, Jan16 2003

OOW09 Ebs Tuning Final
OOW09 Ebs Tuning FinalOOW09 Ebs Tuning Final
OOW09 Ebs Tuning Final
jucaab
 
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
Michael Noel
 
ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...
Nancy Thomas
 
02 -my_sql_roma-may2011
02  -my_sql_roma-may201102  -my_sql_roma-may2011
02 -my_sql_roma-may2011
testfank
 
The Art & Sience of Optimization
The Art & Sience of OptimizationThe Art & Sience of Optimization
The Art & Sience of Optimization
Hertzel Karbasi
 
Performance Engineering Case Study V1.0
Performance Engineering Case Study    V1.0Performance Engineering Case Study    V1.0
Performance Engineering Case Study V1.0
sambitgarnaik
 

Semelhante a BUG - BEA Users\' Group, Jan16 2003 (20)

F428435966 odtug web-logic for developers
F428435966 odtug   web-logic for developersF428435966 odtug   web-logic for developers
F428435966 odtug web-logic for developers
 
OOW09 Ebs Tuning Final
OOW09 Ebs Tuning FinalOOW09 Ebs Tuning Final
OOW09 Ebs Tuning Final
 
Virtual classroom
Virtual classroomVirtual classroom
Virtual classroom
 
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
Ultimate SharePoint Infrastructure Best Practices Session - Live360 Orlando 2012
 
ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...
 
04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment Workshop04.egovFrame Runtime Environment Workshop
04.egovFrame Runtime Environment Workshop
 
02 -my_sql_roma-may2011
02  -my_sql_roma-may201102  -my_sql_roma-may2011
02 -my_sql_roma-may2011
 
Java Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web ApplicationJava Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web Application
 
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
 
Intro to sbt-web
Intro to sbt-webIntro to sbt-web
Intro to sbt-web
 
The Art & Sience of Optimization
The Art & Sience of OptimizationThe Art & Sience of Optimization
The Art & Sience of Optimization
 
Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)
 
WebLogic Diagnostic Framework Dr. Frank Munz / munz & more WLS11g
WebLogic Diagnostic Framework  Dr. Frank Munz / munz & more WLS11gWebLogic Diagnostic Framework  Dr. Frank Munz / munz & more WLS11g
WebLogic Diagnostic Framework Dr. Frank Munz / munz & more WLS11g
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
 
Performance Engineering Case Study V1.0
Performance Engineering Case Study    V1.0Performance Engineering Case Study    V1.0
Performance Engineering Case Study V1.0
 
Oracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy featuresOracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy features
 
Jsf Framework
Jsf FrameworkJsf Framework
Jsf Framework
 
Sail Fin Webinar Overview
Sail Fin Webinar OverviewSail Fin Webinar Overview
Sail Fin Webinar Overview
 
Summer training oracle
Summer training   oracle Summer training   oracle
Summer training oracle
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the Union
 

Último

Último (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

BUG - BEA Users\' Group, Jan16 2003

  • 1. Keeping E-Business Open for Business™ BEA Users Group January 16, 2003 Embedding WLS Server – Experience of Building a J2EE-based Management Server Sanjeev Kumar skumar@resonate.com Management Server Team Resonate Inc. www.resonate.com 1 Resonate_presentation title
  • 2. Experience of Building a J2EE-based Management Server • Basic Control Flows & Characteristics • Development Issues • Installation & Packaging Issues • Operational & Performance Issues Resonate_presentation title
  • 3. Commander Solutions – “Moving Parts” Test Engine Management Watchdog Configured Backup Server Management Server Node PTA Pass-through WLS Server Backup Pass- Agent through Agent AA AA cm_wls cm_solaris signifies a node (machine) boundary signifies “ping” or heartbeat traffic signifies configured (primary) connections signifies configured backup connections Resonate_presentation title
  • 4. Management Server – Code Layers GUI SLO Manager Servlets Rules Engine Scheduler Stateless Session Beans JMS Failover Manager Tests & Actions Singletons (Entity Beans) Statistics & Events Data Subscription DB Interface Discovery Weblogic Server Communication Hub Resonate_presentation title
  • 5. Management Server: Characteristics • J2EE Technologies Used – Servlets, JSP’s, Struts Framework – Session Beans, and (partially) Entity Beans – BMP, JDBC, and DB Connection Pool – (In-memory) JMS – XML Parsers • WLS HTTP Listener • WLS Startup/Shutdown Hooks • Different from an In-house, Traditional Application – Packaging & Installation – Resource planning for varying scales of deployment Resonate_presentation title
  • 6. Management Server: Characteristics • Design Patterns Used – Singletons: key functional components – Value Objects: persistent data – Session Bean per Singleton – Publish & Subscribe (JMS) for Asynchronous Communication • Rules Engine – Events combined with AND’s and OR’s – Event correlation w.r.t. time and occurrences • Agent Communication – Persistent and non-persistent message channel – Thread pool created and managed by the server Resonate_presentation title
  • 7. Development – Servlet Container Servlet Container – Application level authorization filter – Use of JSP’s, servlets, struts framework, and bean shell – Management of HTTP sessions for server failback HTTP Request Stateless JDBC Java Auth. Session Singleton/ GET/POST Servlets Beans Value Objects HTTP Response Java Server Page Stateless Session Beans JDBC (Service Object Model) Web Container Enterprise Java Beans Container Resonate_presentation title
  • 8. Development – EJB Container • Session Beans – <session-type> - stateless; <transaction-type> - bean – <isolation_level> - TRANSACTION_READ_COMMITTED, for all methods • Entity Beans – Persistence: <db-is-shared> - true; use of is_modified as “dirty” bit – Entity-cache: <concurrency-strategy> - database – db_is_shared = false; Caused transaction timeouts – db_is_shared = true; Excessive ejbLoad()’s and ejbStore()’s – Seen intermittent reentrancy exceptions; possible bug in WLS61sp1 Moved functionality from entity beans to singletons and value objects Resonate_presentation title
  • 9. Development – “Backend” • Blocking vs. Non-blocking Operations – Use of request queues for op’s with high latency (e.g. writes to DB) – Decoupling of components via JMS server thread-pool • Error Handling – Logging of application level errors, with varying levels of severity – Map most WLS and DB errors to user-consumable errors • Debugging – Synchronization of entries across log files in the control flow chain • Throughput – Data intensive, DB and disk I/O bound – Parallelization of disk I/O across as many disks as possible Resonate_presentation title
  • 10. Installation & Packaging • Usage – Silent Install of WLS – Install of WLS as a service – Embedded WLS (ISV) License • Issues Discovered (“Nits”) – WLS uninstall is not silent – WLS uninstall is not "cumulative", i.e. uninstall of WLS61sp1 requires uninstall of WLS61 – Uninstall does not remove BEA directory completely 0 Resonate_presentation title
  • 11. Operational Issues: Config. & Startup • Server Startup & Shutdown – Startup and shutdown class hooks via config.xml – Ordered startup of server state – Orderly shutdown in the case of failback to primary • Management Server (App Level) Config File – Setting singleton and thread states at startup time – User-visible vs. hidden parameters • Log Generation – Application level log file – Cyclical set of log files 1 Resonate_presentation title
  • 12. Operational Issues: Performance Related • Thread-pool Sizes – Strict control of application-spawned threads & execute queue – Lack of control of JMS server thread pool size (WLS6.1) • Java Heap Sizing – Guidelines to specify typical and max on heap size – Min & Max for heap and new-space set equal at startup – Experimentation required for survivor-ratio and min/max of heap- free ratios • Database Throughput – Control over database and disk I/O throughput – Indirectly impacts GC performance 2 Resonate_presentation title
  • 13. Summary-I • Things that worked – EJB Container: Stateless session beans – In-memory JMS message propagation (pub/sub) – Weblogic Server, Rel 6.1sp1, in general – Online docs (edocs.bea.com) – BEA’s consulting services • Things that “kind of” worked – Silent install, uninstall & release upgrades of WLS – Use of debuggers to step through application code 3 Resonate_presentation title
  • 14. Summary-II • Things that did not work – Full GC & network connections – Predictability (and outcome) of full GC – Network I/O (as supported in JDK 1.3.1) – Entity beans & application spawned threads 4 Resonate_presentation title
  • 15. Questions? Q&A 5 Resonate_presentation title