BEA WEBLOGIC SERVER™ 开发与管理交流

download BEA WEBLOGIC SERVER™ 开发与管理交流

If you can't read please download the document

description

BEA WEBLOGIC SERVER™ 开发与管理交流. 2007 年 2 月 6 日. 培训目标. 听众: Weblogic Server 开发和管理人员 目的:加深对 BEA WebLogic Server 的技术理解,全面把握 Weblogic 开发和管理的特点 时间安排:讲解过程中穿插实例演示,加深大家对知识的掌握。. 满足服务 水平协议. 开发. 安全. 集成. 管理. 配置 , 部署. 议程安排. J2EE 平台概述 Weblogic 基础 Weblogic 配置和开发 Weblogic 日常管理和性能调优. J2EE 平台概述. - PowerPoint PPT Presentation

Transcript of BEA WEBLOGIC SERVER™ 开发与管理交流

  • BEA WEBLOGIC SERVER200726

  • Weblogic Server BEA WebLogic Server Weblogic

  • J2EEWeblogicWeblogicWeblogic

  • J2EEJ2EEJ2EEJ2EEEAI/SOA/SCA

  • J2EE

  • J2EE

  • J2EEJ2EEJ2EEJ2EEEAI/SOA/SCA

  • J2EEJDK 1.5

  • J2EEJ2EEJ2EEJ2EEEAI/SOA/SCA

  • J2EE(1)

  • J2EE(2)

  • J2EE(3)

  • J2EEJ2EEJ2EEJ2EEEAI/SOA/SCA

  • C/SB/SN

  • C/SC/S

  • C/SC/S

  • B/SB/S

  • n- Web Web MOM Web WebLogic ServerJMS JCA Web JDBC Web ComponentsResourcesJWS PartnersEmployeesCustomersEJB Services JSP/Servlet

  • J2EEJ2EEJ2EEJ2EEEAI/SOA/SCA

  • EAIBusiness RequirementsBusiness RequirementsBusiness RequirementsInfrastructureInfrastructureInfrastructureApp.App.App.App.App.App.EAIPortal/BPM/AI/Msg. Broker/B2BEAIEAIEAIEAIEAI

  • EAIBusiness RequirementsApp.App.App.

    Server-sideASServerIntegration SuiteBPM/BAM/Message Broker/Data Transformation/Security Management/Adapter Framework/B2BiAdapterJMS/JCA/Web Services

  • EAIEAIODS

  • Gartner Application Platform SuitSource: Gartner Research report 10/2/2002 SODA ()SOA ()

  • J2EEWeblogicWeblogicWeblogic

  • WeblogicBEAWeblogicWeblogic 9

  • ,,fast time to marketIT,PMO,ITIT.,IT,IT IT

  • IT Consumer LoanMortgage LoanheadquartersBusiness StrategiesBusiness StrategiesBusiness StrategiesBusiness StrategiesBPR BranchCredit App.IT Mortgage LoanLegacy TransformationEDMSCSSMIS/DW/DM WorkflowImagingCall Center/CRM KFB Example

  • WeblogicBEAWeblogicWeblogic 9

  • WebHTMLWeb

  • GUIDBOS/

  • J2EECORBADCOMEAIEII

  • WeblogicBEAWeblogicWeblogic 9

  • Weblogic

  • WeblogicWebLogic Product FamilyJ2EEAquaLogic Product Family

    WebLogic PortalWebLogic IntegrationWebLogic ServerWebLogic WorkshopAquaLogic PortalAquaLogic SecurityAquaLogic DataAquaLogic MessagingAquaLogic ComposerAquaLogic Process

  • WebLogicWebLogicWeb benchmarkjSPECJ2EEJ2EEJ2EE CertifiedJ2EE-JMXClusterClusterEJB ClusteringSSLX.509ACLJDBCJTAJDBC-XAWLW/Jbuilder/VAJWebLogic ServerB2BB2C

  • WeblogicBEAWeblogicWeblogic 9

  • WEBLOGIC 99.999 LOB

  • WEBLOGIC BEA WebLogic WorkshopJVM BEA WebLogic JRockitBEA WebLogic Workshop BEA WebLogic IntegrationBEA Liquid Data for WebLogicBEA WebLogic PortalApplication ServerBEA WebLogic ServerBEA WebLogic Server

  • Weblogic Portal

  • BEA WEBLOGIC INTEGRATION 8.1/Web J2EE

  • BEA WEBLOGIC SERVER WebWeb Web HTTP JMS Web Web

  • BEA WEBLOGIC WORKSHOP EJBWebLogic FrameworkEJB lDB WebComponentsWeb PortletsWeb Services (.NET)Web Services (Java)ServicesPortlets WebServices ControlBrokerasync

  • BEA LIQUID DATA FOR WEBLOGIC 8.1 API (SOA) SOA Web 1RDBMSDWBEA Web XML Web 2Web 3Workshop

  • WeblogicBEAWeblogicWeblogic 9

  • Weblogic9 2- JavaSE 5 / JavaEE 4WebLogic Platform 9:WebLogic Portal Workshop 9WebLogic IntegrationBEA AquaLogic Service Bus 1.0 ( WLS 9.0)WLS9SOA + /; ;

  • WLS9 SOA

  • Weblogic9 WebSphere6.0

  • J2EEWeblogicWeblogicWeblogic

  • WeblogicWeblogicWeblogicDataSourceWebEJB

  • 24x7x365

  • Java Community Process WS-I TAG in W3C

  • Weblogic

    IT LOB

  • WebLogic ServerDelphiWLSBrowsersMobile WAPJava/Swing ClientsC++/VB/Delphi ClientsWMLT3, JRMI, IIOP(S)HTML, XMLRMI/IIOPSOAP/HTTP/WSDL

  • BEA WEBLOGIC Web JWS Web WSDL SOAP BEA WebLogic Workshop Web

  • WeblogicWeblogicWeblogicDataSourceWebEJB

  • WebBusinessData

  • UNIXSolarisHP-UXSCO UnixwareTrue 64AIXOpenVMSOS/390Linux/390Windows2KNTXPNSKLinuxRed HatSuSEMiracleSunIntel IA32 and IA64HPIBMBullUnisys

  • WeblogicWeblogicWeblogicDataSourceWebEJB

  • DataSourceWebEJB

  • J2EEWeblogicWeblogicWeblogic

  • WeblogicWeblogicWeblogicWeblogicWeblogic JRokit

  • WeblogicDomainServerHTTPJDBCJTA

  • Weblogic

  • Weblogic

  • WeblogicWeblogicWeblogicWeblogicWeblogic JRokit

  • WeblogicWebWebTCP

  • Weblogicjava-verbose:gc JVMGC-Xloggc:gc.log GC

    JVM

  • WeblogicjRocket,IntelJVMJRockit JavajRockit JRokit JVM

  • WeblogicMonitoringWebLogic ConsoleWebLogic ServerConnections HighWait Second HighWaiters HighConnection HighMaxium CapacityWaiters HighWaiters High JDBC

  • WeblogicWeb Application MonitoringWEBSession,Servlet,Session Monitoring Enabledsession Web

  • WeblogicEJBSLSB,SFSB,Entity Bean,MDBEJBEJBEJB EJB

  • WeblogicWeblogicWeblogicWeblogicWeblogic JRokit

  • Performance Flexibility, MAKE A BALANCE!80-20 principle: 20% of the code uses 80% resource.20% of the code executes 80% of the time.KISS law: Keep It Simple & Small!Use independent resources like poolsReduce unnecessary distribution and transactionsPush the multiple SQL statement operation to the DB level.

  • PoolJDBC Connection PoolSocket PoolObject PoolObjectPool (Class p_class, int size) Object getObjectFromPool()void returnObjectToPool(Object p_object)synchronized expandObjectPool()Thread Pool

  • Weblogic

  • pool,buffercache JDBC SQL Web HttpSessionSessionJSP Servlet EJB ValueObjectEJBWebLogic

  • Premature Object CreationDefine objects in the scope that needs them. Allocation, and construction use cycles, and, may require garbage collection to do extra work. Reconstruction is the absolute worst situation! Dont fall back on C/C++ techniques.

    void f() {int i;Date x = new Date(); // Date x is constructed... // ...outside the scope where...// ... it is used...if (...) { .... // Date object x only used here }...}void f() {int i;...if (...) { Date x = new Date();// Date x is constructed...// ...inside the scope where...//... it is used ...// Date object x only used here }...}

  • Dont Initialize more than oncepublic class X { // member v is initd twice private Vector v = new Vector( ); public X( ) { v = new Vector ( ) }}public class Y { // member v is initd once private Vector v = new Vector( ); public Y( ) { }}

    Time to construct 100,000 objects

  • Buffered I/OWhich is more efficient? - Given -PrintWriter pw = new PrintWriter( new BufferedWriter( new FileWriter(junk.out)));

    printWriter.print(one + i);-or-printWriter.print(one );printWriter.print(i);

  • String & StringBufferMany hidden pitfalls exist for the novice to intermediate programmers.

    String s = new String();long start = System.currentTimeMillis();for (int i = 0; i

  • Sockets vs RMI No time limit No Disqualifications! Sockets The assembly language of distributed programming. RMI Easier, but at what price?milliseconds

  • ArrayList vs. Vector

    Chart4

    2090

    2080

    3080

    3080

    3070

    ArrayList (unsynchronized)

    Vector (synchronized)

    Time (ms)

    Sheet1

    Thread 12090

    Thread 22080

    Thread 33080

    Thread 43080

    Thread 53070

    Sheet1

    ArrayList (unsynchronized)

    Vector (synchronized)

    Time (ms)

    Sheet2

    Sheet3

  • Hashtable vs. HashMap

    Chart3

    200401

    221511

    211551

    210481

    160361

    HashMap (unsynchronized)

    Hashtable (synchronized)

    Time (ms)

    Sheet1

    Thread 1200401

    Thread 2221511

    Thread 3211551

    Thread 4210481

    Thread 5160361

    Sheet1

    00

    00

    00

    00

    00

    HashMap (unsynchronized)

    Hashtable (synchronized)

    Time (ms)

    Sheet2

    Sheet3

  • JVM (GC)JVMJava,Java(Heap)JavaGC,GC,,GC,GC,, ,()70-80%,,:-Xms=-XmxjRockit jRockitJRockit-Xgc:,gencopy, singlecom, genconparallel-Xgc:gencon-Xms-Xmx,-Xns-Xmx10%

  • ServerServerWebLogic Server,,,() WebLogic,

  • ServerI/OWebLogic ServerJava,Enable Native IO(),UNIXCPUs+1,WindowCPU,java.lang.UnsatisfiedLinkException,Java,socket readers ,33%Console Server Tuning Configuration

  • Server ,CPUI/OJVMWebLogic25,CPU,WebLogic,,CPU,,25*CPUs,CPU,()PC Server Window 2000CPU50, CPU90%WebLogic,Threads Increase0,

  • Server WebLogic ServerAccept Backlog50,,Connection Refused,,Accept Backlog 25%Portal,Login TimeoutSSL Login TimeoutSSL,SSL,Console Server Tuning Configration

  • JDBC JDBC Connection PoolWebLogic Server,,,,

  • WEBWEBWEB,WEBSession Monitoring Enabled,ClusterSession(),,Session JspservletJSPPage Check SecsServlet Reload Check Secs-1,JSPKeep Generated JSPVerbosejsp,precompileweblogic.appc

  • EJBpoolcacheinitial-beans-in-free-poolSLSB,0,,max-beans-in-free-pool,1000SLSB,,,,Entity Bean,,finderhomecreate EJBTRANSACTION-SERIALIZABLE; TRANSACTION-REPEATABLE-READ; TRANSACTOIN-READ-COMMITTED TRANSACTION-READ-UNCOMMITTED ,,

  • EJB EJBTRANSACTION-SERIALIZABLE; TRANSACTION-REPEATABLE-READ; TRANSACTOIN-READ-COMMITTED TRANSACTION-READ-UNCOMMITTED ,,,Required,SupportsNotSupports

  • EJBfinders-load-beantruen+1;delay-updates-until-end-of-txtrue; check-exists-on-methodfalse; , enable-call-by-reference true; reentrantfalse,

  • I/O CPUI/O

  • WebLogicBEA WebLogic Performance PackData cachingRDBMS connection poolingMultiplexing Serialization/

  • Weblogicpooling XML

    EJBRMIPerformance PacksHigh JMSPerformanceWeb (JSP) Bean JRockit JVM

  • / SQL RDBMS

  • JVMThread Count: Accept Backlog
  • WeblogicWeblogicWeblogicWeblogicWeblogic JRokit

  • JRockit: JVMIntelJVMBEA JRockit Intel JVM Sun SPARC! SPECjAppServer2002 28% SPECjAppServer2004JRockit (JMC)Management ConsoleRuntime AnalyzerMemory Leak Detection

  • SPECjbb2005 17-24%faster!

  • SPECjbb2005 World Record!Middle bar data CMHWhat does this mean?

    JRockit on Linux/Itanium Sun/SPARC by ~50% 30-50% than Sun/SPARCSun E25K: $4.1M, Fujitsu PP 2500: $5.8M, SGI Altix: $4.4M.

    Disclaimer: Sun Fire E25K 1164995 SPECjbb2005 bops, 32361 SPECjbb2005 bops/JVM, Fujitsu PRIMEPOWER 2500 1251024 SPECjbb2005 bops, 39095 SPECjbb2005 bops/JVM, SGI Altix 3700 BX2 1828349 SPECjbb2005 bops, 28568 SPECjbb2005 bops/JVM. SPEC and the benchmark name SPECjbb2005 are trademarks of the Standard Performance Evaluation Corporation. Competitive benchmark results stated above reflect results published on http://www.spec.org as of April 19, 2006. For the latest SPECjbb2005 benchmark results, visit http://www.spec.org/osg/jbb2005.50% faster!

  • jRockit Weblogic 9 JRockit

  • JRockit JVM Weblogic@rem Set JAVA_VENDOR to java virtual machine you want to run on server side.set JAVA_VENDOR=BEA

    @rem Set JAVA_HOME to java virtual machine you want to run on server side.set JAVA_HOME=d:\bea\jrockit81sp5_142_08

  • WeblogicWeblogicWeblogicWeblogicWeblogic JRokit

  • Dirig (FenWay, FMX Plus, Pathfinder)Wily (Introscope)Mercury Interactive (Load Runner, Topaz)HP (OpenView)BMC (Patrol)Borland (OptimizeIT)Quest Software ( Sitraka) (Jprobe, PerformaSure)

  • Dev2devBEA BEA BEA WebLogic BEA WebLogic Server e-docs.bea.come-Literature Request Center

  • J2EEWeblogicWeblogicWeblogic

  • BEA WEBLOGIC SERVER Thank You

    In addition to the applications rich business functionality, there are these critical infrastructure requirements that customers expect application server to provideNow lets look more closely at the WebLogic Enterprise Platform. The WebLogic Enterprise Platform is built on the latest release industrys leading application server, WebLogic Server 8.1, providing a robust, industrial-strength foundation for the platform. WebLogic Server also includes JRockit, the industrys first JVM designed specifically to address the unique requirements of server-side Java applications.

    The WebLogic Enterprise Platform also includes WebLogic Integration for application and process integration. WebLogic Integration is a robust application integration framework for accessing, integrating, and exchanging information between packaged applications, legacy and custom applications, and multiple corporate data sources, and a full featured process engine to manage multi-step, long-lived business processes (including human workflow tasks) into one seamless flow that matches the business.

    Liquid Data for WebLogic provides the data integration capabilities needed for improved business visibility with simplified access and aggregation of distributed business information.

    For user integration, that is connecting people to processes and extending user access to business applications and processes on the WebLogic Enterprise Platform, WebLogic Portal provides an enterprise portal that simplifies, personalizes, and lowers the cost of customer, partner and employee access to information, applications and business processes.

    And finally, development across the platform is unified with the simplified development model provided by WebLogic Workshop 8.1, with its integrated development environment and application framework framework that makes it incredibly easy for any developer not just J2EE experts to build, test, and deploy applications on the BEA WebLogic Enterprise Platform. On ant-driven tools: they provide high and low granularity access to Web Services generation utilities in order to allow both step-by-step or complete generation of Web Services. Low level tasks could generate the client proxy (including possible asynch invocations), test harness, SOAP router, custom user type proxy, WSDL file, Java proxy for a Web Service, or the complete Web Services package ready for deployment. In the future releases these tools will be accessible through centralized application building interfaces.Develop and extend applications quicker and easierAccess- Directly access native data sources to retrieve and aggregate dataUse- Developers can rapidly utilize unified views of information across multiple projects and deploy new applications quicklyDeliver- The complexity of getting data is now transparent, developers save time and costs by using a single API to access all enterprise data, regardless of where it residesData Services as part of a Service Oriented Architecture (SOA)Easily create composite views or data services as part of a Service Oriented Architecture (SOA) to design and assemble applications from services components Published once, data views can be reused and shared many times across multiple applications, thereby improving data consistency De-couple your business logic from enterprise data accessFlexibility to adapt to change Data is tagged and organized as metadata, so its easier to incorporate changes without the complexity of knowing each underlying data sourceThe Java Web Service Container generates:Stateless session beans to manage the requests to the application 1 per web serviceEntity beans to manage conversation state 1 per conversationMessage-driven beans to pull requests from message buffers and the JMS transport 1 per web service.

    The container:Compiles the sourcePackages up the EAR fileGenerates the deployment descriptorDeploys the J2EE application to a running instance of WebLogic ServerGenerates a test harness application and traces the SOAP messagesGenerates the WSDL for the Web Service, and for its clients if there are client callbacksGenerates code for a Java proxy to the Web Service that can be used by development teams building clients in Java.

    The web application generated for the Web Service by the container also exposes the WebLogic Server administration console to allow monitoring and management of the J2EE components generated to support the application.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Extensible administration and management interface Administration console can be extended to report on application-specific set of metrics. WebLogic Server management can be integrated with the industry leading administration and management solutions. Through the same open API, your WLS-based application can be programmatically controlled from another application, or a batch. One more very important point administration service compatibility with prior and future releases. This means you can rollout a new release of WLS in phases, or just mix and match different releases in your environment while managing them from a single administration console.Lots of resources are available for anybody who want to learn or to know more about WebLogic Server.A wide range of on-line resources available from BEA and is accessible around the world, round the clock.BEA education is the best place to go for any BEA-specific education. However, you can also find a wide range of classes on J2EE, Web Services, and other related technology both from BEA, and from other education vendors (like the Middleware company, who by the way us WebLogic Server as their education platform and to power their web site as well).Another good source of WebLogic-related information for developers is WebLogic Developer JournalAnd of course, no other J2EE product is so well represented in books as WebLogic Server. These books do a great job of a real deep drill down into development, administration, and other issues.