JEUS 7 Administration 2014 Tmax Soft Co Ltd

  • Slides: 192
Download presentation
JEUS 7 Administration © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved.

JEUS 7 Administration © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved.

Contents 1. Training Course Overview (p. 2) 2. JEUS 7 Features (p. 5) 3.

Contents 1. Training Course Overview (p. 2) 2. JEUS 7 Features (p. 5) 3. JEUS 7 Components (p. 21) 4. JEUS 7 Installation and Uninstallation (p. 27) 5. Starting and Terminating JEUS 7 (p. 42) 6. Directory Structure and Environment (p. 48) 7. Deployment (p. 54) 8. DB Integration (p. 60) 9. Webto. B Installation and Uninstallation (p. 85) 10. Webto. B Operation and Features (p. 105) 11. Webto. B Environment File (p. 111) 12. Webto. B Administration Tools (p. 119) 13. Interoperability between JEUS & Webto. B (p. 125) 14. Managed Server Clustering (p. 136) 15. Session Clustering (p. 152) 16. Logging (p. 168) 17. Troubleshooting (p. 176) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 1

1. Training Course Overview

1. Training Course Overview

Course Outline Courses Introduction to JEUS 7 Description Basic knowledge of Webto. B/JEUS •

Course Outline Courses Introduction to JEUS 7 Description Basic knowledge of Webto. B/JEUS • Duration: 1 day • Target Audience: JEUS system administrators and application developers • Related course: N/A JEUS Administration Basic knowledge of environment configuration, administration, system operation of JEUS Application • Duration: 3 days • Target Audience: JEUS system administrators and application developers • Related course: JEUS Performance Tuning and troubleshooting the JEUS system • Duration: 2 days • Target Audience: JEUS system administrators and application developers • Related course: N/A JEUS Web Application Programming Knowledge of web application development and main features of the servlet engine in the JEUS environment • Duration: 3 days • Target Audience: JEUS system administrators and application developers • Related course: JEUS Performance Tuning © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 3

Introduction to JEUS Administration § Course Objectives • Set up a basic JEUS environment

Introduction to JEUS Administration § Course Objectives • Set up a basic JEUS environment • Efficiently manage JEUS system and handle errors by understanding and using JEUS monitoring methods and environment settings. § Audience • JEUS system administrators and application developers § Training Hours • 10: 00 AM ~ 6: 00 PM (approximately 7 hours) § References • http: //www. tmaxsoft. co. kr Training Schedule, Enrollment, & Cancellation • http: //technet. tmaxsoft. co. kr Online Support (Product, License, Manual, and Q&A) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 4

2. JEUS 7 Features

2. JEUS 7 Features

What’s New in JEUS 7? § To continue to meet the needs of the

What’s New in JEUS 7? § To continue to meet the needs of the Web Application Server industry, JEUS 7 supports a robust cloud environment with added performance enhancements and advanced features. It is also fully compliant with Java EE 6 and fine tuned for appliances. Cloud Architecture Support • Domain Architecture Java EE 6 Compliant • Dynamic Clustering • Graceful Redeployment Enhanced Features & Performance • Hot Swap • Lightweight Engine • Distributed Session Clustering • Advanced Caching • JMS MQ Sequencing • Web Services Transactions • Enhanced Management Screens © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 6 • Servlet 3. 0 • Dependency Injection Extensions • EJB 3. 1 • JAX-RS 1. 1 • Bean Validation 1. 0

Domain Architecture § Supports a large-scale computing environment by implementing fast and lightweight distributed

Domain Architecture § Supports a large-scale computing environment by implementing fast and lightweight distributed clustering through the adoption of the domain architecture. Domain DAS Management Distribution MS #1 MS #2 MS #3 Management MS #1 MS #2 MS #3 Massive scalability MS #3 MS #N EJB EJB Servlet JMS JMS Easy dynamic extensions Cluster #N Single view management support MS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. MS #N Separation of management and services MS #N Cluster #1 DAS Structure for cloud computing … Cluster #2 Service MS: Managed Server DAS: Domain Administration Server 7

Enhanced Dynamic Clustering § Dynamic clustering is a core function that provides rapid elasticity

Enhanced Dynamic Clustering § Dynamic clustering is a core function that provides rapid elasticity to allow the administrators to easily add and delete idle resources as needed. 2. Overload 1. Increase in number of business applications JEUS DAS JVM Additional MS 1 Resources JVM needed MS 2 to er v r s e s s urce d n so ma d re m Co ad JEUS JVM JEUS Secures Idle resources DAS JVM Client © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Dynamically adds resources MS 1 MS 2 MS 3 MS 1 MS 2 JVM JVM JVM 5. Seamless service provided 3. Overload detected MS 3 JVM 4. Dynamic Clustering Cloud 8 IT Engineer

Graceful Redeployment § When an application needs to be redeployed during operation, a continuous

Graceful Redeployment § When an application needs to be redeployed during operation, a continuous service environment is provided by guaranteeing the completion of session request processing before redeployment. 1 Before Redeployment 3 During Gracefully Redeployment 4 After Graceful Redeployment Old Application The Old Application myservice. war Request 1 (Old Session) Request 2 (Old Session) Request 3 (Old Session) 2 Redeploy Guarantees Completion of the Old Session Requests. New Application myservice. war Request 4 (New Session) Request 5 (New Session) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 9

Lightweight Engine Execution Method § Lightweight Execution Method reduces the use of server resources

Lightweight Engine Execution Method § Lightweight Execution Method reduces the use of server resources and prevents slow downs by lazily operating the engines depending on the request type. Improvements & Expected Effects JEUS Managed Server Engine Servlet Engine EJB Engine Improved Booting Speed JMS Engine Lazy Instantiation Started Resolved Demand for Lightweight Java EE by the Engine for A Request JNDI Service Session Service Data. Source Service Transaction Service Logging Service Security Service Reduced Usage of Unnecessary Resources Enhanced Operational Convenience Common Services © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 10

Improved Performance in Distributed Session Clustering § Provides performance suitable for large-scale operating environment

Improved Performance in Distributed Session Clustering § Provides performance suitable for large-scale operating environment and dynamic scalability through improved backup session server configuration and session instantiation method. Node #1 JEUS Session Clustering Improvements Servlet/EJB Engine Node #2 JEUS Backup Session Server Servlet/EJB Engine Primary Session Server Backup Session Server 2 Primary Session Server 1 Primary Session Server Backup Session Server © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. ü Node #3 JEUS 3 Servlet/EJB Engine Backup Session Server 11 Primary Session Server Dynamically modifies the backup server according to the node status. ② Lazy Deserialization ü ü Node #4 JEUS Servlet/EJB Engine ① Dynamic Backup Session Server Configuration ü Minimizes deserialization process. Decreases the backup server’s burden on the heap, and the CPU usage. Reduces the occurrence of garbage collection. ③ GMS (Group Management Service) Framework ü Efficient inter-node management in a cluster (health check, etc. ).

Consolidated Caching § Provides a superior performance for large-scale requests using the improved caching

Consolidated Caching § Provides a superior performance for large-scale requests using the improved caching function in connecting with the Webto. B web server. JEUS Webto. B 1 1 Enhanced Caching Algorithm 3 Large-Scale Request 1 EJB Cached Request Completed ü Efficient URL-based hash function. ü Performance improved by more than 1. 5 times. Servlet Cache Manager 22 Expanded Caching Targets ü Request response cache for other servers (JEUS, Reverse Proxy). 2 JMS 3 3 Efficient Memory Management ü Optimized LRU algorithm. Enhanced Caching © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Improved Speed and Efficiency ü Enhanced cache hit rate. 12

Stable Large Capacity Transaction Processing § Using multiplexing I/O, request queuing, dynamic load balancing,

Stable Large Capacity Transaction Processing § Using multiplexing I/O, request queuing, dynamic load balancing, and stream pipe communication, JEUS 7 exhibits stable large-scale transaction processing capability when connected to the Webto. B server. 1. Multiplexing I/O Minimizes system loads, despite an increase in client requests. 3. Dynamic Load Balancing 2. Request Queuing Dynamically handles loads for client request by taking the WAS loads into account. Accommodates large-scale client requests. 4. Stream Pipe IPC Enhances the communication performance for a single hardware by roughly 2~4 times. JEUS Webto. B 3. Dynamic Load Balancing 1. Multiplexing I/O 2 Request Queuing JEUS Webto. B Large-Scale Requests © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 4. Stream Pipe IPC 13

Hot Swap § Dramatically improves development productivity by reloading only the modified class instead

Hot Swap § Dramatically improves development productivity by reloading only the modified class instead of the entire class when a functional modification is required. Traditional Development Life Cycle Edit Build Distribute Test Reduced Time/Cost Hot Swap Based Development Life Cycle Edit Test Dynamically Applied (Hot Swap) JEUS Class Function No Need to Reload Class Loader (Build and Distribution Omitted) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Applied to POJO & Web App. Within the Related Directory 14 For Adding and Deleting Class Constructors & Modifying Class Methods

JEUS MQ Sequential Processing and Messaging Group § JEUS 7 satisfies important business requirements

JEUS MQ Sequential Processing and Messaging Group § JEUS 7 satisfies important business requirements by guaranteeing the sequencing of messages (a non-standard specification of JMS) and providing message group configuration settings. Message Global Order Message Group Configuration Message requiring C proper sequencing E D C B Producer A D Consumer 1 A Queue Cluster 5 E 4 D 3 2 1 A 3 Producer 1 2 Queue Cluster 1 B 3 F E 1 3 2 1 2 Consumer Producer 2 Consumer 2 All messages of the same purpose are collected and then delivered to the corresponding Consumer. JEUS MQ guarantees the proper sequencing between Consumer 1 and Consumer 2. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 15

JEUS MQ Message Bridging § Message Bridging provides the functions needed to integrate two

JEUS MQ Message Bridging § Message Bridging provides the functions needed to integrate two different JMS MQs to provide interoperability between different enterprise systems and flexibility in a business environment. Message Bridging Other JEUS (Standard connection & XA supported) JMS Engine JEUS 7 XA JMS Engine Multi-Vendor MQ XA XA Clients . (Producers) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Interoperates with other. standard MQs. including Web. Logic 16

Web Console Functionality and UX Enhancement § JEUS 7 maximizes the user experience by

Web Console Functionality and UX Enhancement § JEUS 7 maximizes the user experience by providing a way to easily manage domain-based systems through an intuitive node configuration, optimized navigation, and enhanced management capabilities. Enhanced Web Admin Functions & UX Enhancement Navigation with fewer clicks User-friendly screen/ Enhanced look & feel Simple configuration and greater efficiency Intuitive node configuration status Enhanced manageability & uniformity © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 17

Web Service Transaction § Provides WS-Coordination and WS-Atomic Transaction specifications that support distributed transactions

Web Service Transaction § Provides WS-Coordination and WS-Atomic Transaction specifications that support distributed transactions in the widely used web service environment. JEUS 7 Web Services Support Name Version WS-I Basic Profile 1. 1 WS-Security 1. 1 WS-Reliable. Messaging 1. 1 WS-Trust 1. 0/1. 3 WS-Secure. Conversation 1. 0/1. 3 WS-Policy 1. 5 WS-Policy. Attachment 1. 2 WS-Coordination 1. 0 WS-Atomic Transaction Web Service Transaction New Additions WS-Addressing • Guarantees data consistency and integrity by supporting SOAP-based transactions. 1. 0 SOAP 1. 1/1. 2 WSDL 1. 1 SAAJ 1. 3 UDDI 2. 0/3. 0 JAX-WS 2. 2 JAX-RS 1. 1 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. • Supports standard OASIS web services, WSCoordination, and WSAtomic Transaction. • Provides mediation specification standards for web service transactions in WS-Coordination. 18 • Supports 2 PC(Two. Phase Commit) via WSAtomic Transaction.

Features & Main Standard Specifications for Java EE 6 § Implements full Java specifications,

Features & Main Standard Specifications for Java EE 6 § Implements full Java specifications, including EJB 3. 1 and Servlet 3. 0, to provide enhanced performance(lightweight), flexibility, scalability, and development productivity. Updates and Main Features of Java EE 6 Key Standard Specifications for JEUS 7 Java EE Roadmap Type Java EE 5 “Enhanced Development Productivity” Java EE 6 Specification EJB 3. 1 Java EE 7, 8 JMS 1. 1 “for Cloud” Enterprise Application CDI 1. 0 Bean Validation 1. 0 Managed Beans 1. 0 Performance & Flexibility • Unnecessary APIs removed • Standardized dependency injection Scalability • Easy interlocking with framework and scalability support © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Development Productivity • POJO programing support • Annotation extensions • Minimized XML configurations 19 Dependency Injection 1. 0 Web Application Resource Servlet 3. 0 JSP 2. 2 JDBC 4. 0 WS-Coordination 1. 0 Web Service WS-Atomic Transaction 1. 0 JAX-WS 2. 2 JAX-RS 1. 1

JEUS 6 VS JEUS 7 [Internal Architecture Comparisons Between JEUS 6 and JEUS 7]

JEUS 6 VS JEUS 7 [Internal Architecture Comparisons Between JEUS 6 and JEUS 7] Category JEUS 6 JEUS 7 Top Logical Unit Components of the Top Logical Unit Node Manager Containers Domain DAS Managed Servers Clusters Concept of a Node The top unit of the logical structure JEUS installation unit (JEUS_HOME) Not included in/related to a domain Concept of a Cluster Services and resources are connected between nodes Services and resources are connected between MSs Engine(Servlet, EJB, JMS) Service Execution Container Managed Server Session Management Container(Distributed) Manager(Centralized) Managed Server(Centralized) Manager Individual node configuration Admin tools Managed Server Node manager Centralized domain configuration Admin tools + DAS Common Services System Monitoring and Restarting Configuration Management Deployment Management Context Group Launcher © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Individual node deployment Admin tools Provided Not supported 20 Centralized domain deployment Admin tools + DAS Not provided Supported

3. JEUS 7 Components

3. JEUS 7 Components

Components § A domain consists of a Domain Administrator Server (DAS) and one or

Components § A domain consists of a Domain Administrator Server (DAS) and one or more Managed Servers (MSs). © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 22

Domain § A domain is the basic unit of management and is a grouping

Domain § A domain is the basic unit of management and is a grouping of related servers. § A domain must be configured with the knowledge that the security configuration, applications, and resources are shared within a domain. § Relationship Between JEUS and Domains • Each machine requires a JEUS instance(installed in JEUS_HOME), which can contain one or more domains. A domain can be created in a single instance of JEUS or across multiple instances. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 23

DAS (Domain Administration Server) § DAS is a server that manages a domain. §

DAS (Domain Administration Server) § DAS is a server that manages a domain. § Only a single DAS can exist in a domain. § DAS manages domain configuration, and manages and controls applications that provide services in a domain. § DAS manages MSs in a domain. § Main Services • Web. Admin service • Dynamic configuration service • Domain application management service • Domain datasource management service • Cluster management service • Managed Server(MS) service § Although DAS can take the role of a MS, this is not recommended. In general, MSs are used to provide application services while DAS is only used to manage MSs except for a small or development environment. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 24

MS (Managed Server) § Managed Server (MS) is a service instance that manages engines

MS (Managed Server) § Managed Server (MS) is a service instance that manages engines and services used to provide the actual application services. § Multiple MSs can exist in a domain. § Main services • Engine service • JNDI service • Management service • Security service • Http session cluster service • Class FTP service • Scheduler service • Logging service • Database connection service • Transaction service • External resources • Enterprise information system (EIS) connection service § The engine of an engine service corresponds to an EJB container or web container defined in Java EE. It manages components and provides services that are deployed by the users. An engine is a service that is included in a server and runs by default whenever the server boots, without user configuration. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 25

Node Manager § A node manager is an instance that performs server monitoring, server

Node Manager § A node manager is an instance that performs server monitoring, server process control, and patch delivery. § Definition of a node – a JEUS instance installed on a machine § Type – Java, SSH § Restrictions • A node manager name must be unique within a domain. • Only a single node manager must exist in a JEUS instance. • The same node manager type must be used within a domain. • In Windows, a Java node manager must be used, and it is recommended to register it as a service. • To use a Java node manager, the ‘use. Node. Manager’ of jeusnm. properties must be set to true. To use the SSH node manager, it must be set to false. File path: $JEUS_HOME/domains/nodes. xml File path: $JEUS_HOME/nodemanager/jeusnm. properties <? xml version="1. 0"? > use. Node. Manager=true <nodes xmlns="http: //www. tmaxsoft. com/xml/ns/jeus" version="7. 0"> host=localhost <node> port=7730 <name>tmaxedu</name> use. SSLListener=false <host>localhost</host> server. Monitoring. Period=500 <java> server. Auto. Restart=true <port>7730</port> server. Restart. Try. Count=5 <use-ssl>false</use-ssl> server. Restart. Duration. Time=120000 </java> server. Retry. Restart=false </node> </nodes> © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 26

4. JEUS 7 Installation and Uninstallation

4. JEUS 7 Installation and Uninstallation

Platform Support § JEUS 7 supports OSs and platforms from various vendors based on

Platform Support § JEUS 7 supports OSs and platforms from various vendors based on Windows, Unix, and Linux. JEUS 7 supports newly released platforms and is released after careful testing and inspections by the QA team. Platform Support OS System Requirements CPU Mem. Disc JDK Solaris 9, 10, 11 Ultra. SPARC 9, 10, 11 Intel X 86 Series 10 1 GB 20 GB JDK 1. 6 or later Solaris, HP-UX, AIX, Linux HP-UX 11. x, 11 i, 11 i. V 2 PA-RISC 11. x (11. 11) Intel Itanium 64 11. x(11. 23, 11. 31) 1 GB 20 GB JDK 1. 6 or later IBM AIX 5 L, 6 L, AIX 7 L RS 6000 IBM p. Series(Power. PC) Windows 2003/XP Windows 2000 Windows NT Windows Vista Windows 7 1 GB 20 GB JDK 1. 6 or later Linux Series (Kernel 2. 6 or later) Intel x 86 series k 2. 6 or later (k 2. 4 is supported) Intel Itanium Series k 2. 6 or later IBM p. Series(Power. PC) k 2. 6 or later 1 GB 20 GB JDK 1. 6 or later MS Windows 2003, 2008, XP, Vista, 7 Intel x 86 Series 2003, 2008, XP, Vista, 7 1 GB 20 GB JDK 1. 6 or later © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Platform Required Environment JDK 6. 0 or later 500 M or more available disk space “No minimum system installation requirements and no separate constraints” “Ongoing support for newly released HWs and OSs from various vendors” 28

JEUS 7 Edition § JEUS Edition JEUS@Standard Features • Web Server, Servlet, JSP, JDBC,

JEUS 7 Edition § JEUS Edition JEUS@Standard Features • Web Server, Servlet, JSP, JDBC, XML, Security, and JMX • Web. Manager, Jmanager, EJB, JMS, JTA(2 PC), JCA, JNDI, and SNMP • Web Service JEUS@Enterprise • JEUS@Standard • Session Clustering, Clustered JMS, JDBC Multipool, and JNDI Clustering © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 30

JEUS 7 Installation Order § Installation • Install JAVA 2 SDK : http: //java.

JEUS 7 Installation Order § Installation • Install JAVA 2 SDK : http: //java. oracle. com/ • Install JEUS 7 in GUI mode (copy files) - Refer to JEUS Installation Guide - Check JEUS product version: jeusadmin –version, jeusadmin –fullversion(detailed version information) - Check JEUS license : ‘license’ file is in the $JEUS_HOME/license folder jeusadmin –licensedue(period) , jeusadmin –licenseinfo(information) • Check the installation folder and license Refer to http: //technet. tmax. co. kr (Product, manual, demo license, technical documents, and Q&A) • Configure and verify environment variables • Verify that the installation is completed before running JEUS 7 • Run the Adventure Builder example § Uninstallation • Uninstall JEUS 7 using GUI • Verify uninstallation © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 31

Installing JEUS 7 on UNIX/Linux (1/7) § Run the JEUS Installer. © 2014 Tmax.

Installing JEUS 7 on UNIX/Linux (1/7) § Run the JEUS Installer. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 32

Installing JEUS 7 on UNIX/Linux (2/7) § Read the JEUS License Agreement. Press the

Installing JEUS 7 on UNIX/Linux (2/7) § Read the JEUS License Agreement. Press the <ENTER> key to go to the next page. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 33

Installing JEUS 7 on UNIX/Linux (3/7) § Agree with the license terms by entering

Installing JEUS 7 on UNIX/Linux (3/7) § Agree with the license terms by entering ‘Y. ’ § Choose a platform from the list to install JEUS on. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 34

Installing JEUS 7 on UNIX/Linux (4/7) § Select a server, Domain Admin Server or

Installing JEUS 7 on UNIX/Linux (4/7) § Select a server, Domain Admin Server or Managed Server, to install. § Select the installation directory. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 35

Installing JEUS 7 on UNIX/Linux (5/7) § Enter the location of JDK. § Enter

Installing JEUS 7 on UNIX/Linux (5/7) § Enter the location of JDK. § Enter the JEUS administrator password. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 36

Installing JEUS 7 on UNIX/Linux (6/7) § Enter a domain name that will be

Installing JEUS 7 on UNIX/Linux (6/7) § Enter a domain name that will be used for the Domain Admin Server. § Review the installation summary. Press the <ENTER> key to start the installation process. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 37

Installing JEUS 7 on UNIX/Linux (7/7) § Check the progress of installation, and that

Installing JEUS 7 on UNIX/Linux (7/7) § Check the progress of installation, and that installation is completed successfully. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 38

Uninstalling JEUS 7 on UNIX/Linux (1/3) § Run $JEUS_HOME/Uninstaller. Data/Uninstall from the directory where

Uninstalling JEUS 7 on UNIX/Linux (1/3) § Run $JEUS_HOME/Uninstaller. Data/Uninstall from the directory where JEUS is installed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 39

Uninstalling JEUS 7 on UNIX/Linux (2/3) § JEUS uninstallation starts. A message is displayed

Uninstalling JEUS 7 on UNIX/Linux (2/3) § JEUS uninstallation starts. A message is displayed when the uninstallation is completed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 40

Uninstalling JEUS 7 on UNIX/Linux (3/3) § Removing Installed Directories & Files • Check

Uninstalling JEUS 7 on UNIX/Linux (3/3) § Removing Installed Directories & Files • Check whether all directories and files, that are installed in the JEUS installation directory, have been removed. • Since files, which are created after JEUS is installed, are not removed, these files need to be deleted manually. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 41

5. Starting and Terminating JEUS 7

5. Starting and Terminating JEUS 7

Starting JEUS § Starting a Node. Manager • nohup start. Node. Manager > /home/jeus/node.

Starting JEUS § Starting a Node. Manager • nohup start. Node. Manager > /home/jeus/node. MLog/node. M. log & [jeus@tmaxedu nodemanager]$ nohup start. Node. Manager > /home/jeus/node. MLog/node. M. log & ******************************** - JEUS Home : /home/jeus 7 - Java Vendor : Sun - Added Java Option : ******************************** …… …… [2013. 10 10: 28: 25][2] [nodemanager-1] [Node. Manager-0101] The node manager is starting. [2013. 10 10: 28: 25][2] [nodemanager-1] [Node. Manager-0102] Initializing the node manager configuration. [2013. 10 10: 28: 25][2] [nodemanager-1] [Node. Manager-0108] Beginning to listen: localhost/192. 168. 14. 58: 7730. [2013. 10 10: 28: 25][2] [nodemanager-1] [Node. Manager-0115] Domain=[jeus_domain], Server=[admin. Server] [2013. 10 10: 28: 25][2] [nodemanager-9] [Node. Manager-0109] Processing the request. . . [2013. 10 10: 28: 25][2] [nodemanager-1] [Node. Manager-0115] Domain=[jeus_domain], Server=[server 1] [2013. 10 10: 28: 25][2] [nodemanager-10] [Node. Manager-0137] Beginning to monitor the server[admin. Server] in the domain[jeus_domain]. When a Java Node Manager is configured, a Managed. Server can be started from Web. Admin only when the Node. Manager is running. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 43

Starting JEUS § Starting a Domain Admin Server • start. Domain. Admin. Server –u

Starting JEUS § Starting a Domain Admin Server • start. Domain. Admin. Server –u administrator –p jeusadmin [jeus@tmaxedu ~]$ start. Domain. Admin. Server -u administrator -p jeusadmin ******************************** - JEUS Home : /home/jeus 7 - Java Vendor : Sun - Added Java Option : ******************************** + /home/jeus/java/jdk 1. 6. 0_31/bin/java -server -Xmx 512 m -Xbootclasspath/p: /home/jeus 7/lib/ system/extension. jar -classpath /home/jeus 7/lib/system/jeus-launcher. jar: /home/jeus 7/lib/ system/xalan. jar: /home/jeus 7/lib/system/jaxb-impl. jar: /home/jeus 7/lib/system/woodstox. jar : /home/jeus 7/lib/system/xml_resource. jar: /home/jeus 7/lib/system/commons-cli. jar: /home/ jeus/jeus 7/lib/system/jaxb 2 -basics-runtime. jar: /home/jeus 7/lib/system/javaee. jar: /home/jeus/ ………… [2013. 01. 31 14: 31: 04][0] [admin. Server-1] [SERVER-0242] Successfully started server. [2013. 01. 31 14: 31: 04][2] [admin. Server-1] [SERVER-0248] Jeus. Server is RUNNING. [2013. 01. 31 14: 31: 04][2] [admin. Server-1] [SERVER-0401] Elapsed booting time: 59751 ms [2013. 01. 31 14: 31: 04][2] [launcher-10] [Launcher-0034] The server[admin. Server] initialization successfully done [pid : 3809]. [2013. 01. 31 14: 31: 04][0] [launcher-1] [Launcher-0040] Successfully started server. The server is RUNNING now. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 44

Starting JEUS § Starting a Managed Server • start. Managed. Server –dasurl localhost: 9736

Starting JEUS § Starting a Managed Server • start. Managed. Server –dasurl localhost: 9736 –domain jeus_domain –server 1 –u administrator –p jeusadmin & [jeus@tmaxedu bin]$ start. Managed. Server -dasurl localhost: 9736 -domain jeus_domain -server 1 -u administrator -p jeusadmin & ******************************** - JEUS Home : /home/jeus 7 - JEUS Base Port : - Java Vendor : Sun - Added Java Option : ******************************** + /home/jeus/java/jdk 1. 6. 0_31/bin/java -server -Xmx 512 m -Xbootclasspath/p: /home/jeus 7/lib/ system/extension. jar -classpath /home/jeus 7/lib/system/jeus-launcher. jar: /home/jeus 7/lib/ system/xalan. jar: /home/jeus 7/lib/system/jaxb-impl. jar: /home/jeus 7/lib/system/woodstox. jar: / home/jeus 7/lib/system/xml_resource. jar: /home/jeus 7/lib/system/commons-cli. jar: /home/jeus/ jeus 7/lib/system/jaxb 2 -basics-runtime. jar: /home/jeus 7/lib/system/javaee. jar: /home/jeus 7/lib/ ………… [2013. 01. 31 15: 04: 36][0] [server 1 -1] [SERVER-0242] Successfully started server. [2013. 01. 31 15: 04: 36][2] [server 1 -1] [SERVER-0248] Jeus. Server is RUNNING. [2013. 01. 31 15: 04: 36][2] [server 1 -1] [SERVER-0401] Elapsed booting time: 24232 ms [2013. 01. 31 15: 04: 36][2] [launcher-10] [Launcher-0034] The server[server 1] initialization successfully done [pid : 4428]. [2013. 01. 31 15: 04: 36][0] [launcher-1] [Launcher-0040] Successfully started server. The server is RUNNING now. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 45

Environment Configuration File § Calling an example application after starting JEUS • http: //ip:

Environment Configuration File § Calling an example application after starting JEUS • http: //ip: 8088/examples © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 46

Shutting Down JEUS § Shutting down a Managed Server • Shutting down a managed

Shutting Down JEUS § Shutting down a Managed Server • Shutting down a managed server using Jeusadmin [jeus@tmaxedu bin]$ jeusadmin -u administrator -p jeusadmin Try to connect to 127. 0. 0. 1: 9736. Connection has been established to domain administration server: admin. Server in domain: jeus_domain. JEUS 7 Administration Tool To print help, use the 'help' command. [DAS]jeus_domain. admin. Server>stop-server 1 Server [server 1] has been stopped successfully. § Shutting down a Domain Admin Server • stop. Server –url localhost: 9736 –u administrator –p jeusadmin [jeus@tmaxedu bin]$ stop. Server -host localhost: 9736 -u administrator -p jeusadmin ************************************** - Usage : stop. Server -host: port -u username -p password ************************************** Try to connect to localhost: 9736. Connection has been established to domain administration server: admin. Server in domain: jeus_domain. The server [admin. Server] has been shut down successfully. § Shutting down a Node. Manager • stop. Node. Manager -host Node. Manager_IP -port Node. Manager_PORT • E. g. : stop. Node. Manager –host localhost –port 7730 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 47

6. Directory Structure and Environment

6. Directory Structure and Environment

Management Tools § JEUS provides tools to operate or monitor JEUS with more ease

Management Tools § JEUS provides tools to operate or monitor JEUS with more ease and stability. Web. Admin • An HTML-based management tool which provides features to control, monitor, and manage JEUS. start. Domain. Admin. Server • A basic tool for starting JEUS DAS (Domain Administration Server). start. Managed. Server • A basic tool for starting JEUS MS (Managed Server). jeusadmin • A tool for controlling JEUS from the command prompt. Reference: There are commands that shut down DAS and MS. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 49

Directory Structure © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 50

Directory Structure © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 50

Directory Structure § JEUS_HOME • The root directory of JEUS. The actual directory name

Directory Structure § JEUS_HOME • The root directory of JEUS. The actual directory name and the location are set during installation. § bin • Contains the scripts for starting and stopping servers. The scripts are called start. Domain. Admin. Server, start. Managed. Server, and stop. Server. This directory also contains the executable files, including the JEUS console tool 'jeusadmin'. § derby • Contains Apache Derby, which helps users build sample applications or perform tests. § docs • Contains Javadoc documentation for the APIs provided by JEUS. § lib • Contains the libraries to start JEUS. Users only need to access the shared directory. § license • Contains JEUS license files needed to run JEUS. § setup • Contains the files necessary to set up the environment to use JEUS after JEUS has been installed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 51

Directory Structure § templates • Contains template files for various settings and environment configurations.

Directory Structure § templates • Contains template files for various settings and environment configurations. § samples • Contains sample files for JEUS. § domains • Each domain contains a file named nodes. xml that contains information about the nodes used in DOMAIN_HOME and JEUS_HOME. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 52

Environment Variables § All JEUS environment variables are configured in "JEUS_HOM/bin/jeus. properties" and are

Environment Variables § All JEUS environment variables are configured in "JEUS_HOM/bin/jeus. properties" and are used by the scripts in JEUS_HOME/bin. § JEUS Environment Variables Description JEUS_HOME Root JEUS installation directory JEUS_LIBPATH JEUS native library file JEUS_LANG JEUS language file VM_TYPE The JAVA which JEUS uses to boot (hotspot or old) USERNAME Administration name PASSWORD Administration password JAVA_HOME Java home directory JAVA_ARGS JVM parameter JAVA_VENDOR JVM vendor name SESSION_MEM JVM memory argument TOOL_CLASSPATH Console tool classpath © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 53

7. Deployment

7. Deployment

Application Deployment After installing applications on DAS(Domain Administration Server), JEUS deploys them to the

Application Deployment After installing applications on DAS(Domain Administration Server), JEUS deploys them to the target server or cluster by using a two phase deployment method. Application Deployment Procedure 1 Install • Uploads application files to DAS. Application 1 Repository Developer or Administrator • Locates application files in APPLICATION_INSTALL_HOME or in a directory specified by the user through Web. Admin or jeusadmin. DAS 2 2 Managed Server#1 3 Managed Server#2 • Deploys application files to each server and performs preparation and verification tasks to ensure normal application services. Managed Server#3 3 3 …. Target Servers © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Distribute 55 Start • Puts applications in a ready state to provide services.

Application Management JEUS controls application-related monitoring and operation through DAS to manage applications in

Application Management JEUS controls application-related monitoring and operation through DAS to manage applications in the unit of a domain. Application Life Cycle Application Status NOT_EXIST Application files are uploaded to the domain. The distribute command from the DAS is successfully executed. Applications are providing services. INSTALLED DISTRIBUTED RUNNING Deployment Details • Distribute command completes successfully even if some servers of the cluster fail or are shut down. install • deploy When the target server is not in a cluster: Distribute command fails if any server fails. distribute start stop Start Details • Even if one server starts successfully , the entire operation is considered successful. • DAS restarts a server that failed to start. undeploy uninstall © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. When the target server is in a cluster: 56 An ID that identifies an application is issued and used to manage applications in the domain.

Module Implementation (1/3) § Implement an exploded module. § 1. Create a directory where

Module Implementation (1/3) § Implement an exploded module. § 1. Create a directory where applications will be placed. • E. g. ) Create an app directory in the /home/jeus directory. (Command: mkdir app) § 2. Create an exploded module in the parent directory of the directory created in 1. • Ex. 1) Create an edutest directory and create the WEB-INF directory in the edutest directory. • Ex. 2) Locate the web. xml file in the WEB-INF directory. • Copy and use the $JEUS_HOME/domains/jeus_domain/config/servlet/web. xml file. • Create simple contents for testing purposes. Create the index. html or index. jsp file in the edutest directory. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 57

Module Implementation (2/3) § 3. Install the exploded module on DAS. • Ex. 1)

Module Implementation (2/3) § 3. Install the exploded module on DAS. • Ex. 1) After connecting to jeusadmin, register the /home/jeus/app directory as a repository. [DAS]jeus_domain. admin. Server>add-application-repository /home/jeus/app Performed to ADD an application repository successfully. You can check the results using "add-application-repository or list-application-repositories" [DAS]jeus_domain. admin. Server>appinfo Application information in the domain [jeus_domain]. ================================ +-----------+---------+-----------------+ | Applicat|Application| State | Server | Cluster | Application Path | | ion ID | Type | | Targets | | +-----------+---------+-----------------+ | edutest | | INSTALLED | | /home/jeus/app/edutest| +-----------+---------+-----------------+ | examples| EAR | RUNNING | server 1 | | /home/jeus 7/sampl| | | | |es/examples. ear | +-----------+---------+-----------------+ ================================ © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 58

Module Implementation (3/3) § 4. Deploy the edutest module to server 1. [DAS]jeus_domain. admin.

Module Implementation (3/3) § 4. Deploy the edutest module to server 1. [DAS]jeus_domain. admin. Server>deploy -servers server 1 edutest Succeeded to deploy the application : edutest [DAS]jeus_domain. admin. Server>appinfo Application information in the domain [jeus_domain]. ================================ +-----------+----------+----------------+ | Applicati|Application| State | Server | Cluster | Application Path | | on ID | Type | Targets | | +-----------+----------+----------------+ | edutest | WAR | RUNNING | server 1 | | /home/jeus/app/edutest| +-----------+----------+----------------+ | examples | EAR | RUNNING | server 1 | | /home/jeus 7/sampl| | | | |es/examples. ear | +-----------+----------+----------------+ ================================ § 5. Call the index. html or index. jsp page and check that it runs successfully. • E. g. ) http: //ip: 8088/edutest/index. html or http: //ip: 8088/edutest/index. jsp © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 59

8. DB Integration

8. DB Integration

JDBC Overview § What is JDBC? • An application interface that connects to the

JDBC Overview § What is JDBC? • An application interface that connects to the database to execute SQL in Java. § A Web Application Server (WAS) needs to communicate with the database to provide database related services. The JDBC standard defines an interface to efficiently and systematically make a connection between the database and the database client. § The JDBC standard describes how to use the application’s database connection and how to execute SQL, and provides related APIs. § JEUS 7 supports JDBC 4. 0. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 61

Data. Source § Data. Source, an abstract object, provides applications with JDBC connections. §

Data. Source § Data. Source, an abstract object, provides applications with JDBC connections. § Advantages • Unlike Driver. Manager, driver information does not have to be hard coded into applications. • Data. Source allows developers to use connection pooling and distributed transactions by implementing the Data. Source class. • The J 2 EE standard allows the same code to be used on all WASs. • Other JVMs can call and use it. § Data. Source Type • Basic Data. Source ü The Basic Data. Source type does not support Connection Pooling. • Connection Pool Data. Source ü Supports Connection Pool. ü Used when accessing a DB without using XA. Also used when configuring Auto Commit to false and controlling local transactions. • XA Data. Source ü Integrates Connection Pooling and global transactions. ü Used when the Java EE component logic, such as Servlet/EJB, accesses two or more databases. Even if only one database is accessed, it can be used when the related logics are processed as a single transaction. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 62

JEUS Connection Pooling Structure § Connection Pooling is a framework for the database connection

JEUS Connection Pooling Structure § Connection Pooling is a framework for the database connection cache. § Advantages of using Connection Pool • High Performance ü When a connection pool starts, a specific number of physical connections are created. This reduces the overhead of creating connections when the applications are running. • Connection Management ü By limiting the number of concurrent connections, excessive DB load issues can be resolved. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 63

Data. Source Environment Configuration (domain. xml) <resources> <data-source> <database> <data-source-id>tibero_cpds</data-source-id> <export-name>tibero_cpds</export-name> <data-source-class-name>com. tmax. tibero.

Data. Source Environment Configuration (domain. xml) <resources> <data-source> <database> <data-source-id>tibero_cpds</data-source-id> <export-name>tibero_cpds</export-name> <data-source-class-name>com. tmax. tibero. jdbc. ext. Tb. Connection. Pool. Data. Source</data-source-class-name> <data-source-type>Connection. Pool. Data. Source</data-source-type> <vendor>tibero</vendor> <server-name>localhost</server-name> <port-number>8629</port-number> <database-name>tibero</database-name> <user>tibero</user> <password>tmax</password> <login-timeout>0</login-timeout> <auto-commit>DRIVER</auto-commit> <stmt-query-timeout>0</stmt-query-timeout> <pool-destroy-timeout>10000</pool-destroy-timeout> <property> <name>driver. Type</name> <type>java. lang. String</type> <value>thin</value> </property> <support-xa-emulation>false</support-xa-emulation> <connection-pool> <pooling> <min>2</min> <max>30</max> <step>1</step> <period>3600000</period> </pooling> <wait-free-connection> <enable-wait>false</enable-wait> <wait-time>10000</wait-time> </wait-free-connection> <max-use-count>0</max-use-count> <dba-timeout>-1</dba-timeout> <stmt-caching-size>-1</stmt-caching-size> <stmt-fetch-size>-1</stmt-fetch-size> <connection-trace> <enabled>false</enabled> <get-connection-trace>true</get-connection-trace> <auto-commit-trace>false</auto-commit-trace> </connection-trace> <use-sql-trace>false</use-sql-trace> <keep-connection-handle-open>false</keep-connection-handle-open> </connection-pool> </database> </data-source> </resources> javax. sql. Data. Source API사용 할 수 있도록 JEUSMain. xml에 설정 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 64

Cluster Data. Source (1/3) § JEUS supports Data. Source clustering function to provide measures

Cluster Data. Source (1/3) § JEUS supports Data. Source clustering function to provide measures against any possible errors or data loss during operation. Data Source Clustering JEUS Request to Primary Instance “TAC 1” Failure TAC Instance 1 with “TAC 1” Cluster Data. Source Application AP with the Export Name TAC Instance 2 “TAC” “TAC 2” will provide services when “TAC 1” is down with “TAC 2” • In DS clustering, failover is the process of switching an application to a normally running server upon failure. (Fail. Over Function) • In DS clustering, failback is the process of reconnecting an application to the primary DB. (Fail. Back Function) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 65

Cluster Data. Source (2/3) § Provides the Data. Source clustering function to handle any

Cluster Data. Source (2/3) § Provides the Data. Source clustering function to handle any data loss caused by errors that occur while using JEUS. This is one of the specialized features of JEUS. DAS Cluster CP MS 1 Data. Source CLUSTER üDAS manages domain-level Data. Sources and Connection Pool. DS 1 üMS manages server-level Data. Sources and Connection Pool. CP 1 CP 2 DS 2 MS 1 w/ access to DS 1, DS 2 Cluster MS 2 MS 3 CP 3 MS 2, MS 3 w/ access to DS 3 DS 4 MS 3 w/ no access to DS CP 3 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 66

Cluster Data. Source (3/3) § Cluster Data. Source can be specified to provide failover

Cluster Data. Source (3/3) § Cluster Data. Source can be specified to provide failover and failback between TAC(RAC) instances in JEUS. • TAC stands for Tibero Active Cluster, a DB clustering provided by Tibero. • RAC stands for Real Application Cluster, a DB clustering provided by Oracle. § Cluster Data. Source is a data source instance with a single JNDI name. The instance sends requests from an application to the main TAC(RAC) instance. If the main instance is down, a backup TAC(RAC) instance is selected to process the requests. Since applications sees the TAC(RAC) instances as a single data source, the failover is processed transparently. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 67

Data. Source Configuration Example (domain. xml) <cluster-ds> <data-source-id>tac</data-source-id> <export-name>tac</export-name> <load-balance>false</load-balance> <is-pre-conn>false</is-pre-conn> <use-failback>true</use-failback> <component-data-sources> <data-source>tac

Data. Source Configuration Example (domain. xml) <cluster-ds> <data-source-id>tac</data-source-id> <export-name>tac</export-name> <load-balance>false</load-balance> <is-pre-conn>false</is-pre-conn> <use-failback>true</use-failback> <component-data-sources> <data-source>tac 0</data-source> <data-source>tac 1</data-source> </component-data-sources> </cluster-ds> • data-source-id: ID of the Cluster Data. Source. The ID of each Cluster Data. Source in a domain must be unique. • export-name: JNDI name of the Cluster Data. Source. If unspecified, the ID of Cluster Data. Source is used as the JNDI name. • load-balance: Specifies whether to implement load balancing. If set to true, the Is-Pre-Conn and Use-Failback configuration is ignored. • is-pre-conn: Specifies whether to create a Connection Pool of component data sources that belong to Cluster Data. Source in advance. • use-failback: Specifies whether to failback to the main data source after doing failover with the secondary data source. By default, a failback is attempted. Failback requires the settings, Check Query and Check Query Period, to be configured for the main data source. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 68

DB Integration Practice § Locate the Tibero JDBC driver file in the $JEUS_HOME/lib/datasource directory.

DB Integration Practice § Locate the Tibero JDBC driver file in the $JEUS_HOME/lib/datasource directory. • E. g. , cp /home/db/tibero 4/client/lib/jar/tibero 4 -jdbc. jar /home/jeus 7/lib/datasource § Set the owner and group of the JDBC driver file to those of JEUS. • E. g. , chown jeus: jeus tibero 4 -jdbc. jar § Start or restart DAS. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 69

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 70

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 70

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 71

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 71

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 72

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 72

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 73

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 73

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 74

DB Integration Practice © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 74

DB Integration Practice § JNDI Information • After logging into jeusadmin, execute the following

DB Integration Practice § JNDI Information • After logging into jeusadmin, execute the following command. [DAS]jeus_domain. admin. Server>jndi-info -server 1 The JNDI list on the server 1 List of the context / ======================================== +-------------------------------+--------+ | Name | Value | Local Binding | +-------------------------------+--------+ | __jeus_cl@server 1_Examples. Que| jeus. jms. common. destination. Je| false | |ue_$addr$_localhost. localdomai|us. Queue | | |n: 9936 | | | …… …… | Queue. Connection. Factory | JMSAdministered. Object | false | +-------------------------------+--------+ | tibero_cpds | jeus. jdbc. info. JDBCBind. Info | false | +-------------------------------+--------+ | Topic. Connection. Factory | JMSAdministered. Object | false | +-------------------------------+--------+ ======================================== § Call and Verify • http: //[ip]: [port]/[context-path]/[contents-name] • E. g. , http: //localhost: 8088/edutest/tibero. jsp © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 75

DB Integration Practice § Monitoring • After logging into jeusadmin, execute the following commands.

DB Integration Practice § Monitoring • After logging into jeusadmin, execute the following commands. (connection-pool-info or cpinfo) [DAS]jeus_domain. admin. Server>connection-pool-info -server 1 The connection pool information on the server [server 1]. ======================================== +--------+-----+----+----------+-------+-------+ | Connection | Min | Max | Active | Idle |Disposable| Total | Wait |Enabled| | Pool ID | | | | | +--------+-----+----+----------+-------+-------+ | tibero_cpds | 2 | 30 | 2 | 0 | 2 | false | true | +--------+-----+----+----------+-------+-------+ * : has not been created, total = active + idle + disposable ======================================== • Min: The minimum pool size • Max: The maximum pool size • Active: The number of connections currently being used • Idle: The number of connections not in use • Disposable: The number of temporary connections • Total: The total number of connections in the Connection Pool • Wait: Decides how to process connection requests when Connection Pool does not have available connections and cannot increase the number of connections. - true: Waits for available connections - false: Creates new connections that are not returned to the pool. • Enabled: Enable / disable status of JDBC Connection Pool - true: Enable / false: Disable © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 76

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 77

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 78

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 79

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 80

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 81

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 82

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 83

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All

DB Integration Practice – Cluster DS © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 84

9. Webto. B Installation and Uninstallation

9. Webto. B Installation and Uninstallation

Webto. B Edition § What is Webto. B? • Webto. B stands for ‘Web

Webto. B Edition § What is Webto. B? • Webto. B stands for ‘Web to Business’. • Webto. B is a server software that handles requests from web browsers. § Webto. B Editions Edition Features Webto. B@Standard HTML, CGI, PHP, SSL, SSI, Web. API Webto. B@Standard Webto. B@Enterprise © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. JSP/Servlet, Web Admin Tool 86

Pre-installation Tasks § Host name (Required when requesting a license) § Port number to

Pre-installation Tasks § Host name (Required when requesting a license) § Port number to be granted when the web server starts • Only a user with root privileges can use port 80. To install Webto. B using a general user account, a port number greater than 1024 must be used. § Account to start the web server • If a user does not have the root privileges, the user must use a port number greater than 1024. § Environment variables • If Webto. B is already installed or a user wants to install Webto. B with the Webto. B Servlet Engine, it is recommended to check if the Webto. B Servlet Engine was previously installed and to delete any existing environment variables. • Shared Memory § JDK version check (Enterprise Edition: Required to install the Servlet Engine. ) • Check the JDK path by using the command, ‘which java’. § File descriptor • File Descriptor(FD) affects the number of processes that can be used simultaneously and the number of users who can be connected concurrently. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 87

System Requirements § Supported Platforms for Webto. B 4. x: OS Version CPU RAM

System Requirements § Supported Platforms for Webto. B 4. x: OS Version CPU RAM Memory When Using JDK when Using CGI/WEBAPI Servlet JDK 1. 4 or later, Solaris 7, 8, 9 32/64 bit Ultra. SPARC 512 MB SUN ANSI C compatible with JDK 1. 5 JDK 1. 4 or later, HP-UX 11. XX 32/64 bit HP-PA series 512 MB HP-UX ANSI C compatible with JDK 1. 5 JDK 1. 4 or later, AIX 4. x, 5 L 32/64 bit IBM Power. PC 512 MB AIX C compiler compatible with JDK 1. 5 JDK 1. 4 or later, Linux Kernel 2. 4 or later (32/64 bit) MS Windows 2000/XP/2003 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. INTEL Pentium, Itanium INTEL Pentium 3 1 GHZ or above 88 512 MB GNU ANSI C 512 MB Microsoft Visual C++5 or above compatible with JDK 1. 5 JDK 1. 4 or later, compatible with JDK 1. 5

Installing Webto. B on UNIX/Linux (1/7) § Execute the Webto. B Installer. © 2014

Installing Webto. B on UNIX/Linux (1/7) § Execute the Webto. B Installer. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 89

Installing Webto. B on UNIX/Linux (2/7) § Read the Webto. B License Agreement. Press

Installing Webto. B on UNIX/Linux (2/7) § Read the Webto. B License Agreement. Press the <ENTER> key to go to the next page. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 90

Installing Webto. B on UNIX/Linux (3/7) § Enter Y to agree to the license

Installing Webto. B on UNIX/Linux (3/7) § Enter Y to agree to the license terms. § Choose an install set. • A demo license provides unlimited Servlet Engine features, but the Standard license must be applied when applying a full purchased license. • In this example, only Webto. B is installed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 91

Installing Webto. B on UNIX/Linux (4/7) § Choose the installation folder. © 2014 Tmax.

Installing Webto. B on UNIX/Linux (4/7) § Choose the installation folder. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 92

Installing Webto. B on UNIX/Linux (5/7) § Review the installation summary. Press the <ENTER>

Installing Webto. B on UNIX/Linux (5/7) § Review the installation summary. Press the <ENTER> key to start the installation process. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 93

Installing Webto. B on UNIX/Linux (6/7) § Review the installation summary. Press the <ENTER>

Installing Webto. B on UNIX/Linux (6/7) § Review the installation summary. Press the <ENTER> key to start the installation process. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 94

Installing Webto. B on UNIX/Linux (7/7) § Check that the installer is ready to

Installing Webto. B on UNIX/Linux (7/7) § Check that the installer is ready to execute. § Check the installation progress, and that the installation completes successfully. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 95

Uninstalling Webto. B on UNIX/Linux (1/3) § Execute $WEBTOBDIR/Uninstaller. Data/Uninstall from the directory where

Uninstalling Webto. B on UNIX/Linux (1/3) § Execute $WEBTOBDIR/Uninstaller. Data/Uninstall from the directory where Webto. B is installed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 96

Uninstalling Webto. B on UNIX/Linux (2/3) § Webto. B uninstallation starts. A message is

Uninstalling Webto. B on UNIX/Linux (2/3) § Webto. B uninstallation starts. A message is displayed when the uninstallation is complete. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 97

Uninstalling Webto. B on UNIX/Linux (3/3) § Verify Uninstallation • Check that all files

Uninstalling Webto. B on UNIX/Linux (3/3) § Verify Uninstallation • Check that all files that were installed are removed. The files created after Webto. B was installed must be deleted manually. • Check that the environment variables registered during the Webto. B installation and paths set in the PATH variable are removed. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 98

Webto. B Directory Configuration $WEBTOBDIR [%WEBTOBDIR%] ap/ Application File bin/ Execution File (wsm, wscfl,

Webto. B Directory Configuration $WEBTOBDIR [%WEBTOBDIR%] ap/ Application File bin/ Execution File (wsm, wscfl, etc. ) cgi-bin/ CGI File config/ Webto. B configuration file docs/ Basic Install html File icons/ Icon that DIRINDEX will use jeus/ More than Standard Edition lib/ library file license/ license file(license. dat : binary type) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. log/ log file (access, error, system log) usrlog/ syslog/ txlog/ 99 path/ Named-pipe for IPC ssl/ ssl File svct/ WBAPI service table usrinc/ API header file

Setting Environment Variable § WEBTOBDIR • The home directory where Webto. B is installed

Setting Environment Variable § WEBTOBDIR • The home directory where Webto. B is installed • Windows: C: webtob • Unix: /home/tmax/webtob § PATH • PATH for execution files and scripts • Windows: %WEBTOBDIR%bin • Unix: $WEBTOBDIR/bin § LIBPATH • PATH for the Library files © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 100

License § Issuing a License ncpu Request License Issued $ >. /ncpu HOST NAME

License § Issuing a License ncpu Request License Issued $ >. /ncpu HOST NAME 1: tmax 5 HOST NAME 2: tmax 5 HOSTID: 3 D 21207 E http: //technet. tmax. co. kr license. dat License Request <via email> NCPUS: 4 UNAME: AIX tmax 5 3 4 0008 F 13 F 4 C 00 § Installing the License - Windows: %WEBTOBDIR%license. dat - Unix: $WEBTOBDIR/license. dat © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 101

Environment File Compilation • Create the Configuration File http. m %WEBTOBDIR%config http. m wscfl

Environment File Compilation • Create the Configuration File http. m %WEBTOBDIR%config http. m wscfl –i http. m • Create the Binary File wsconfig © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. %WEBTOBDIR%config wsconfig 102

Starting Up Webto. B $ wsboot [OPTION] § Options used to start Webto. B:

Starting Up Webto. B $ wsboot [OPTION] § Options used to start Webto. B: • -f: Webto. B uses a configuration file to start up. The name of the Webto. B configuration file must be specified. If no file name is specified, the default file, wsconfig, is used. • -T: Starts only the Webto. B administration processes (WSM, HTL and HTH). Each server must be started individually in order to provide the actual service. • -n: Starts the server processes of the specified node. The node name must be pre-configured in the Node section of the configuration file. (In a multi-node environment, the node name must be defined. ) § Options applied after wsboot (used when starting a process): • -g: Starts the server processes of the specified server group. • -A: Starts all server processes defined in the Server section of the configuration file. • -S: Starts the minimum number of server processes on the specified server. • -s: Starts the specified server process only. • -k: Must be used with the ‘-s’ option. • -w: Starts each Webto. B server process separately. • -b: Also starts the backup server if a backup server is specified. • -B: Starts Webto. B without accepting client requests. • -o: -o file name. Stores standard output. • -h: Displays a help message for wsboot. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 103

Shutting Down Webto. B $ wsdown [OPTION] § Options: • -f: Sets the name

Shutting Down Webto. B $ wsdown [OPTION] § Options: • -f: Sets the name of the Webto. B binary configuration file to refer to. • -A: Terminates all server processes of the service. • -S: Terminates server processes of the service currently in use. • -s: Terminates the server process only. • -k: Must be used with the ‘-s’ option. • -n: Terminates the application server processes of the Node. • -g: Shuts down server processes of the server group. • -p: Closes a specific server process. • -i: Immediately executes the wsdown command. • -w: Executes the wsdown command after a specified period of time. The time period must be set to five seconds or less. • -h: Displays a help message. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 104

10. Webto. B Operation and Features

10. Webto. B Operation and Features

Webto. B Operation § Webto. B Web Client Handler http Web Client Listener Web

Webto. B Operation § Webto. B Web Client Handler http Web Client Listener Web Client Handler http Web Service HTML CGI PHP TP Service 1 Basic Features of the Web Server: CGI, PHP, HTML, VHOST, etc. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 106

Webto. B Processes § WSM • Webto. B System Manager. The Webto. B system

Webto. B Processes § WSM • Webto. B System Manager. The Webto. B system operation process that manages operation information and all server processes, such as HTL and HTH. § HTL • The listener process that manages connections between clients and Webto. B. § HTH, HTHS • Also known as the client handler. The mediator process between the client and task-processing server process. § HTMLS • The HTML server process for HTML requests. § PHPS • The PHP server process for PHP requests. § CGIS • The CGI server process for CGI requests. § SISS • The SSI server process for SSI requests. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 107

Features of Webto. B § Performance significantly improved by efficient process management § Load

Features of Webto. B § Performance significantly improved by efficient process management § Load balancing § Fault tolerance § Data compression § Caching server supported through web caching § Log management § Web API § TP-monitor Tmax Service call § Security © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 108

Load Balancing § Ensures optimized system performance and resource utilization. § Maintains maximum system

Load Balancing § Ensures optimized system performance and resource utilization. § Maintains maximum system throughput. § Load balanced processing § Various load balancing methods: • Load balancing by hardware performance • Dynamic load balancing © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 109

Memory Caching § Memory caching: • Frequently used files are cached in memory. •

Memory Caching § Memory caching: • Frequently used files are cached in memory. • Caching can be performed by using Webto. B. A caching server is unnecessary. • Faster than disk caching, which has I/O overhead. Webto. B Cache Table Caching contents © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 110 Memory Area

11. Webto. B Environment File

11. Webto. B Environment File

Configuration File § All Webto. B operations are executed at runtime using the settings

Configuration File § All Webto. B operations are executed at runtime using the settings in the Webto. B configuration files. § General Syntax *Section (in capital letters) Name Item 1 = …, Item 2 = … § Data Types for Settings • Numbers • String Character strings like abc • Literal Character strings like “abc” • Y/N Yes or No © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 112

Configuration Settings Basic Settings: § DOMAIN § NODE § SVRGROUP § SERVER § URI

Configuration Settings Basic Settings: § DOMAIN § NODE § SVRGROUP § SERVER § URI § ALIAS § LOGGING § EXT Additional Settings: § VHOST REQUIRED § SERVICE § DIRECTORY § DIRINDEX § AUTHENT § SSL § ACCESS § EXPIRE § ERRORDOCUMENT § TCPGW © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 113

DOMAIN & NODE Sections § DOMAIN Section • Defines the overall environment of an

DOMAIN & NODE Sections § DOMAIN Section • Defines the overall environment of an independent Webto. B system. *DOMAIN webtob 1 § NODE Section • Defines the features of each individual host machine in the domain. *NODE Nodename © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. WEBTOBDIR = “C: webtob”, SHMKEY = 54000, DOCROOT = “C: wetbobdocs”, PORT = 80, HTH = 1, JSVPORT = 9900, Index. Name = “main. html, test. html”, Service. Order = “ext, uri” 114 REQUIRED

SVRGROUP & SERVER Sections § SVRGROUP • Manages service processes grouped by logical relationships.

SVRGROUP & SERVER Sections § SVRGROUP • Manages service processes grouped by logical relationships. • Service Type = HTML, CGI, JSV, WEBSTD, SSI § SERVER • A process that provides services * SVRGROUP htmlg NODENAME = “node 1”, SVRTYPE = HTML jsvg NODENAME = “node 1”, SVRTYPE = JSV * SERVER html SVGNAME = htmlg, My. Group SVGNAME = jsvg, © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Min. Proc = 1, Max. Proc = 2 115

VHOST Section § Allows a single instance of Webto. B to service different URLs

VHOST Section § Allows a single instance of Webto. B to service different URLs with different web pages as if there are multiple instances of web servers providing services. Webto. B (Web. Server) Main Browser Internet © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. www. tmax. com Vhost 1 edu. tmax. com Vhost 2 tech. tmax. com 116

URI & EXT Sections § URI: Client requests can be dispatched to different services

URI & EXT Sections § URI: Client requests can be dispatched to different services according to the client’s URI. § EXT: A service process can be assigned according to the specific file extension requested by the client. * URI Uri 1 Uri = “/cgi-bin/” SVRTYPE = CGI Uri 2 Uri = “/examples/ SVRTYPE = JSV * EXT htm Mime. Type = “ text/html”, SVRTYPE = HTML • E. g. , http: //localhost: 8088/examples/index. html • To change the priority order, modify the NODE section, Service. Order = “ext, uri” © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 117

LOGGING Section § Stores client requests. § Stores access logs and error logs separately

LOGGING Section § Stores client requests. § Stores access logs and error logs separately and allows the configuration of the storage format. *NODE node 1 WEBTOBDIR=“c: /webtob", …… LOGGING = "log 1", ERRORLOG = "log 2" *LOGGING log 1 Format = "DEFAULT", File. Name = “c: /webtob/log/access. log", Option = "sync" log 2 Format = "ERROR", File. Name = “c: /webtob/log/error. log", Option = "sync" © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 118

12. Webto. B Administration Tools

12. Webto. B Administration Tools

Administration Tool § Webto. B’s administration tool is called wsadmin. § wsadmin is an

Administration Tool § Webto. B’s administration tool is called wsadmin. § wsadmin is an interpreter-type admin tool. § Starting wsadmin • wsadmin [ l Node. Name ] • -l: Used to manage only the specified node in a multi-node environment that is centrally managed by wsracd. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 120

Commands Used by wsadmin § Commands: Command Description Displays the statistics for processes and

Commands Used by wsadmin § Commands: Command Description Displays the statistics for processes and wi Checks Webto. B system information. stat (st) ci Checks the connected web browser. qp si Checks server information. logstart Starts logging. Saves command execution history. logend Terminates logging. history ! config (cfg) quite (q) Repeats the previous command. Displays the environment configuration. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 121 services. Deletes the requests accumulated in the queue. Terminates wsadmin.

Environment Information § wi • Displays environment information about the connected Webto. B system.

Environment Information § wi • Displays environment information about the connected Webto. B system. • Displays the system version and expiration date (for demo version). § ci • Displays environment information about the current client’s web browser. • Displays information such as current status, access IP address, and processing count. § si • Displays information about each active server. • Displays information such as current status, processing count, queue count (qcount), the number of requests deleted from queue, and the number of returned requests due to exceeding the maximum queue capacity. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 122

Environment Information (cfg) § config (cfg) • Displays environment information about the running system.

Environment Information (cfg) § config (cfg) • Displays environment information about the running system. • Displays all environment information and default values defined in configuration files for each Domain, Node, Server Group, and Server Section. • Options: Option Description -d [Domain Name] Domain -n [Node Name] Node -g [Server Group Name] Server Group -v [Server Name] Server © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 123

Operation Status Information § stat (st) • Displays the actual system status. Shows information

Operation Status Information § stat (st) • Displays the actual system status. Shows information on active server processes and services. • Options: Option Description -p [Server Process Name] Server process status -v [Server Name] Server status -s [Service Name] Service status -n [Line Count] Displays N number of lines. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 124

13. Interoperability Between JEUS & Webto. B

13. Interoperability Between JEUS & Webto. B

Web Connection Management § A listener is a web engine channel that web servers

Web Connection Management § A listener is a web engine channel that web servers and HTTP/TCP clients following the AJP protocol can access. • Http listener • AJP 13 listener • TCP listener § A connector is a channel that a web engine uses to connect to Webto. B and Tmax. • Webto. B connector • Tmax connector § Worker Thread Pool • A listener or connector has worker thread pool, which manages worker threads that process client requests. • For a listener, worker threads are assigned to process requests. • For a connector, a one-to-one connection is made with Webto. B or Tmax, and then a worker thread is assigned. • Worker thread pool size setting has a significant impact on service processing performance. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 126

Webto. B – JEUS Connection § Reverse Connection HUB Firewall Webto. B © 2014

Webto. B – JEUS Connection § Reverse Connection HUB Firewall Webto. B © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. JEUS 127 DB Server

Setting for Connection between Webto. B and JEUS § The connection from Webto. B

Setting for Connection between Webto. B and JEUS § The connection from Webto. B and JEUS to MS Web Container is a persistent connection. http. m domain. xml Webto. B Connection Setting © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. JEUS Connection Setting 128

Webto. B Configuration File § Add the JSVPORT setting to the NODE clause. •

Webto. B Configuration File § Add the JSVPORT setting to the NODE clause. • E. g. , JSVPORT = 9900 • JSVPORT is used to connect to JEUS. § Add a server group with a JSV SVRTYPE to the SVRGROUP Section. • jsvg NODENAME = webmain, SVRTYPE = JSV § Add a service with the Context. Group name to the SERVER Section. • My. Group SVGNAME = jsvg, Min. Proc = 10, Max. Proc = 10 § Compile the configuration file. § Restart Webto. B. • Wsdown -> wsboot © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 129

Setting the Connection with Webto. B Listener (Example) § domain. xml <webtob-connector> <name>webtob 1</name>

Setting the Connection with Webto. B Listener (Example) § domain. xml <webtob-connector> <name>webtob 1</name> <output-buffer-size>8192</output-buffer-size> <postdata-read-timeout>30000</postdata-read-timeout> <max-post-size>-1</max-post-size> <max-parameter-count>-1</max-parameter-count> <max-header-count>-1</max-header-count> <max-header-size>-1</max-header-size> <max-querystring-size>8192</max-querystring-size> <network-address> <port>9900</port> <ip-address>localhost</ip-address> </network-address> <thread-pool> <number>5</number> <thread-state-notify> <max-thread-active-time>0</max-thread-active-time> <interrupt-thread>false</interrupt-thread> <active-timeout-notification>false</active-timeout-notification> <notify-threshold-ratio>0. 0</notify-threshold-ratio> <restart-threshold-ratio>0. 0</restart-threshold-ratio> </thread-state-notify> </thread-pool> <hth-count>1</hth-count> <request-prefetch>false</request-prefetch> <registration-id>default</registration-id> <read-timeout>0</read-timeout> <reconnect-interval>5000</reconnect-interval> </webtob-connector> © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 130

JEUS Web Connection Configuration (1/4) § Web. Admin Login > Servers > Select a

JEUS Web Connection Configuration (1/4) § Web. Admin Login > Servers > Select a Server > Engine > Web Connections > LOCK & EDIT > Click WEBTOB Web Connection © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 131

JEUS Web Connection Configuration (2/4) § Enter the Required WEBTOB Web Connection Settings ©

JEUS Web Connection Configuration (2/4) § Enter the Required WEBTOB Web Connection Settings © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 132

JEUS Web Connection Configuration (3/4) § Click Active Changes © 2014 Tmax. Soft Co.

JEUS Web Connection Configuration (3/4) § Click Active Changes © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 133

JEUS Web Connection Configuration (4/4) § WEBTOB Web Connection Configuration Completed © 2014 Tmax.

JEUS Web Connection Configuration (4/4) § WEBTOB Web Connection Configuration Completed © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 134

Thread Monitoring § Monitoring > Select a Thread © 2014 Tmax. Soft Co. ,

Thread Monitoring § Monitoring > Select a Thread © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 135

14. Managed Server Clustering

14. Managed Server Clustering

Clustering Overview § JEUS Cluster is a set of multiple servers that run the

Clustering Overview § JEUS Cluster is a set of multiple servers that run the same service. § Cluster Features • Load balancing for service extension • Failover for stability Domain 1 Machine #2 Manage Domain Managed Server #1 Machine #3 Cluster 1 Managed services Server #3 resources Managed services Server #4 resources Administration Server Manage © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. Managed Server #2 137 Cluster 2

Cluster Service § To use the JEUS Cluster Service, it is recommended to deploy

Cluster Service § To use the JEUS Cluster Service, it is recommended to deploy the same application, use the same resource, and register the same service on all the servers in the cluster. § Cluster Configuration Considerations • All the servers in the cluster use the same version of JEUS. • Each server is included in only one cluster. • All the servers in the cluster are belong to the same domain. ü EJB engine supports Session, Message Driven, Entity Bean, and Timer Service clustering. vle Ser Cluster Service EJB t/ Jsp ü A web engine supports web application clustering by a web server and HTTP session clustering. JMS ü JMS supports Connection Factory, Destination, and Durable Subscriber clustering. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 138

Adding MS § Select [Servers] from the left menu in Web. Admin and go

Adding MS § Select [Servers] from the left menu in Web. Admin and go to the server list screen. § Click [Lock & Edit] to convert to the configuration edit mode. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 139

Adding MS § Click [Add] from the Servers screen and go to the [Basic]

Adding MS § Click [Add] from the Servers screen and go to the [Basic] > [Basic Info] menu. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 140

Adding MS § Enter the server information from the Server screen and click [OK].

Adding MS § Enter the server information from the Server screen and click [OK]. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 141

Adding MS § To add a listener, go to the [Resource] > [Listener] menu.

Adding MS § To add a listener, go to the [Resource] > [Listener] menu. Click [Add] from the Listener section on the Listeners screen. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 142

Adding MS § Enter information about basic listeners to add and click [OK]. ©

Adding MS § Enter information about basic listeners to add and click [OK]. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 143

Adding MS § Once the MS is added, set ‘Base’, which sets the default

Adding MS § Once the MS is added, set ‘Base’, which sets the default listener of the server, to ‘base’. Click [OK]. § Click [Apply Changes] to apply the changes. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 144

Adding MS § The result of adding a server. © 2014 Tmax. Soft Co.

Adding MS § The result of adding a server. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 145

Adding MS § Select [Clusters] from the left menu in Web. Admin and go

Adding MS § Select [Clusters] from the left menu in Web. Admin and go to the cluster list. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 146

Adding MS § Click [Lock & Edit] to convert to the configuration edit mode.

Adding MS § Click [Lock & Edit] to convert to the configuration edit mode. § Click [Add] from the Clusters screen and select [Basic]. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 147

Adding MS § Configure the settings of the cluster to add and click [OK].

Adding MS § Configure the settings of the cluster to add and click [OK]. In this example, configure ‘cluster 1’, which consists of ‘server 1’ and ‘server 2. ’ © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 148

Adding MS § After a cluster has been added, a message is displayed. §

Adding MS § After a cluster has been added, a message is displayed. § To apply the changes, click [Apply Changes]. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 149

Adding MS § Select [Clusters] from the left menu in Web. Admin and go

Adding MS § Select [Clusters] from the left menu in Web. Admin and go to the cluster list. To start the servers that have been added, click the [start] button of the desired cluster from the list. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 150

Adding MS § Screen showing a started server © 2014 Tmax. Soft Co. ,

Adding MS § Screen showing a started server © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 151

15. Session Clustering

15. Session Clustering

Session Tracking § (HTTP) Session is an array of operations associated with the request

Session Tracking § (HTTP) Session is an array of operations associated with the request from the same client (e. g. a web browser). § When multiple clients send requests through a standard HTTP, the Web server is not able to distinguish the clients. § This is because HTTP is a stateless and connectionless protocol. § HTTP Protocol • Client connects to the Web Server. • Client creates a stateless HTTP request. • Client receives a response. • HTTP connection is lost. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 153

Web Engine Session Tracking (1/2) 1. A client sends an initial request to the

Web Engine Session Tracking (1/2) 1. A client sends an initial request to the Web server. 2. The Web server forwards the request to the Web engine. 3. The Web engine creates an HTTP session object for the client and a session cookie with the session ID of the HTTP session. 4. The response data and the session cookie are forwarded to the Web server. 5. The response and session cookie are sent to the client’s Web browser, and the HTTP connection is lost. 6. The session cookie with the session ID is stored in the client’s Web browser. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 154

Web Engine Session Tracking (2/2) 1. The client sends another request to the same

Web Engine Session Tracking (2/2) 1. The client sends another request to the same Web server. The existing session cookie is retrieved from the Web browser and is attached to the request. 2. The Web server receives the request with the session cookie and forwards it along with the first request to the same Web engine. 3. The Web engine receives the request and session cookie. It reads the HTTP session object corresponding to the session ID of the session cookie from the memory area. The Web engine processes the request using the HTTP session data. 4. The response data and the session cookie are sent to the Web server. 5. The HTTP response is forwarded to the Web browser, and the HTTP connection is lost. A session cookie is sent with the response only when a connection is first created. It is not necessary to include the cookie in any subsequent response forwarding. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 155

Session Tracking in a Clustered Environment § In a production environment, load balancing and

Session Tracking in a Clustered Environment § In a production environment, load balancing and a clustered environment is configured to process a large number of user requests. Solutions Problems 1. How can a request with the session cookie be forwarded to the Web engine where the request originated from? Session Routing (Sticky Session) 2. How can an HTTP session object created by one engine be used by other Web engines to allow all Web engines to process a restricted request? Session Server 3. How can session data be backed up when a Web engine is down due to an internal or external failure? © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 156

Session Routing 1. A client sends an initial request to the Web server. 2.

Session Routing 1. A client sends an initial request to the Web server. 2. The Web server arbitrarily selects a Web engine. In the example, Web engine A is selected. 3. The request is forwarded to Web engine A. 4. Web engine A creates an HTTP session and a session cookie with the session ID, and adds the Web engine ID(EID) to the cookie. 5. The response and the session cookie are returned to the Web server. 6. The response and the session cookie are returned to the Web browser. 7. The session cookie with the Web engine ID(EID) is stored in the Web browser. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 157

Session Server Structure § The distributed session server has a decentralized structure where servers

Session Server Structure § The distributed session server has a decentralized structure where servers that service the session objects are distributed on each servlet engine(Web engine) or each EJB engine. § Each container, participating in clustering, has its own distributed session server. The distributed session servers communicate with each other in a peer-to-peer manner to provide an ongoing session service. Features of the Distributed Session Server Web Engine or EJB Engine #1 EJB Engine #2 Session Server #1 Session Server #2 Session Server #3 Session Server #4 Web Engine or EJB Engine #3 EJB Engine #4 © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. ü Session states can be maintained across multiple servlet engines in a clustering environment. ü When a servlet engine goes down while processing a request, the subsequent requests will be handled by other servlet engines keeping active sessions safe. ü The distributed protocol provides scalability even when the size of the cluster grows large. 158

Session Server (1/3) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 159

Session Server (1/3) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 159

Session Server (2/3) 1. A client sends a request to the Web server. 2.

Session Server (2/3) 1. A client sends a request to the Web server. 2. The Web server selects Web engine A in the cluster to handle the request. 3. The Web server forwards the request to Web engine A. 4. The Web engine creates an HTTP session object and session cookie. The session ID is used to retrieve the HTTP session object created by the session server when a request is made from the same client. 5. When the request is processed, the Web engine stores the HTTP session object and session ID in the session server. 6. The response data and session cookie are forwarded to the Web server. 7. The session cookie is forwarded to the Web browser with the response and the HTTP connection is lost. 8. The Web browser stores the session cookie. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 160

Session Server (3/3) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 161

Session Server (3/3) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 161

Mixed Mode § The mixed mode is used to take advantage of both Session

Mixed Mode § The mixed mode is used to take advantage of both Session Routing and Session Server. Classification Advantage Disadvantage Session Routing Session Server • Faster as it accesses local session objects in the Web engine. • Ensures that all session objects are persisted in the Session Server, preventing the loss of session objects when a failure occurs in a specific Web container. • When a problem occurs, all session data stored in the problematic Web container may be lost, rendering restoration impossible. • Session objects must be fetched from the Session Server with every session-bound requests. It also requires updates to the Session Server every time an HTTP Session objects is modified. Thus, it is slower than Session Routing. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 162

Session Timeout Configuration § Servers > Select a Server > Engine > Web Engine

Session Timeout Configuration § Servers > Select a Server > Engine > Web Engine > Session Config © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 163

Session Clustering Practice Scenario § Session Clustering Practice Scenario Application DAS Client (Web Browser)

Session Clustering Practice Scenario § Session Clustering Practice Scenario Application DAS Client (Web Browser) ④ call setsession. jsp ⑤ Terminate Server Webto. B ③ Distribute MS #1 (Server 1) ⑥ call getsession. jsp ② Cluster MS #2 (Server 2) ① Add a server ① Add a Managed Server. ② Cluster the Managed Server. ③ Distribute the application (e. g. : edutest) to the clustered server. ④ Call jsp (e. g. : setsession. jsp) to create the session. ⑤ After checking that the server processed the request, terminate the server. (e. g. : server 1) ⑥ Call jsp (e. g. : getsession. jsp ) to retrieve and check the session. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 164

JSP Example § Session Creation JSP Example – setsession. jsp <%@page content. Type="text/html; charset=euc-kr"

JSP Example § Session Creation JSP Example – setsession. jsp <%@page content. Type="text/html; charset=euc-kr" %> <% out. println("<font color=red size=5>Session Set</font> <p>"); out. println("Container ID : " + System. get. Property("jvmid") + " "); out. println("Session ID : " + session. get. Id() + " <p>"); String id=request. get. Parameter("id"); out. println("Request Parameter : " + id + " "); session. set. Attribute("id", id); out. println("Session Set : " + id + " "); out. println("Session Get : " + (String) session. get. Attribute("id") + " <p>"); %> <a href=get. jsp>session check</a> © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 165

JSP Example § Session Checking Sample JSP – getsession. jsp <%@page content. Type="text/html; charset=euc-kr"

JSP Example § Session Checking Sample JSP – getsession. jsp <%@page content. Type="text/html; charset=euc-kr" %> <% out. println("<font color=red size=5>Session Get</font> <p>"); out. println("Container ID : " + System. get. Property("jvmid") + " "); out. println("Session ID : " + session. get. Id() + " "); out. println("Session Get : " + (String) session. get. Attribute("id") + " <p>"); out. println("Session Timeout : " + session. get. Max. Inactive. Interval() + " sec. "); out. println("Session Timeout : " + session. get. Max. Inactive. Interval()/60 + " min. "); out. println("Session Timeout : " + (double)session. get. Max. Inactive. Interval()/3600 + " hour. <p>"); out. println("session. get. Last. Accessed. Time() : " + new java. util. Date(session. get. Last. Accessed. Time()). to. String() + " "); out. println("session. get. Creation. Time() : " + new java. util. Date(session. get. Creation. Time()). to. String() + " "); © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 166

Distributed Session Server Monitoring § Web. Admin > Monitoring > Web © 2014 Tmax.

Distributed Session Server Monitoring § Web. Admin > Monitoring > Web © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 167

16. Logging

16. Logging

Overview of JEUS Logging § JEUS Logging is the process of storing and recording

Overview of JEUS Logging § JEUS Logging is the process of storing and recording series of operations performed on JEUS. § A system administrator can check and handle various jobs and errors occurring in JEUS. § JEUS uses the standard logging API (java. util. logging) provided by Java SE. § The logging system structure and configuration follow the Logging API, and exactly reflects the structures of the logger, handler, and formatter. § Even if a logger is not configured in the server, “jeus” logger, the root logger, exists by default. The file handler must be used daily, and the log files must be rotated daily. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 169

Handler § A handler uses an object to records log messages that an actual

Handler § A handler uses an object to records log messages that an actual logger outputs. § A logger always works together with a handler. § Types Classification File Handler Description • Records log messages of a logger to a file. SMTP Handler • Records log messages using email. Socket Handler • Records log messages using a specified IP. USER Handler • Records log messages using a handler configured by a user. § Note • Console handlers can be configured in JEUS 6, but not in JEUS 7. • JEUS 7 server is booted using a launcher so the console is the launcher's process, not the server's. • To output log messages occurring in a server to a console tool, a launcher process must not be terminated until the server has been shut down. If the -verbose option is used when the server is started, the launcher process will not be terminated until the server is shut down. The launcher process will read log messages occurring in the server through a pipe and will output them to a console tool. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 170

Log Directories and File Types § The following is the log directory structure. ü

Log Directories and File Types § The following is the log directory structure. ü An access log file for web application requests. ü By default, requests that are sent to all the web applications of the server are recorded in this file. Log Directory ü Logs the information which the launcher creates to start the server and the log messages which are created when the server is started. ü The basic log file for the server logs. ü A gc log of the server JVM or a thread dump are recorded here. ü This file is created because a specific JVM option is selected when a launcher starts a server. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 171

Logger Format § [Time], [Level], [Thread Information], and [Log Message ID] of a Log

Logger Format § [Time], [Level], [Thread Information], and [Log Message ID] of a Log Message Classification Description Time Outputted in the order of “year. month. day hour: minute: second". Level The log levels are as follows: 0: SEVERE 1: WARNING 2: INFO 3: CONFIG 4: FINE 5: FINER 6: FINEST 7: ALL Thread Information Shows the thread information that logs the log message. Expressed as a combination of the log process and thread number using a hyphen("-“) as a separator. Log messages which have the same thread information are logged by the same thread. Log Message ID Represents each module that outputs logs. Expressed as a combination of the module name and message number using a hyphen("-“) as a separator. Log Message Log messages that show events that occurred while a server is running. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 172

Log Directory Configuration § Web. Admin > Servers > Select a Server © 2014

Log Directory Configuration § Web. Admin > Servers > Select a Server © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 173

Dynamic Logger Configuration § Using Web. Admin • Web. Admin > Servers > Select

Dynamic Logger Configuration § Using Web. Admin • Web. Admin > Servers > Select a Server > Basic > System Logging § Using a console tool • Example • [DAS]domain 1. admin. Server>list-loggers server 1 • [DAS]domain 1. admin. Server>add-logger -server 1 jeus. ejb -level FINEST • [DAS]domain 1. admin. Server>add-logger -server 1 jeus. ejb. clustering -level FINEST • [DAS]domain 1. admin. Server>modify-logger -server 1 jeus. ejb. clustering -level FINE • [DAS]domain 1. admin. Server>remove-logger -server 1 jeus. ejb © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 174

Property Configuration § System Properties Configuration • The log levels can be configured using

Property Configuration § System Properties Configuration • The log levels can be configured using system properties. • When the logger is configured in the standalone client. § The logging properties files • Logging can be configured in the Java logging properties file. • Java Logging properties (logging. properties) file. • Properties file path can be specified in Djava. util. logging. config. file. • Default path: JEUS_HOME/bin/logging. properties. § Priority Level Configuration • System properties. • Java Logging properties (logging. properties) file. • Logging configuration for domain. xml. § Note • The jeuslogging. properties file that was used in JEUS 6 cannot be used in JEUS 7. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 175

17. Troubleshooting

17. Troubleshooting

License File Error § Condition: • If the “start. Domain. Server” command is executed

License File Error § Condition: • If the “start. Domain. Server” command is executed when there is JEUS process is not running, a message that says “License is expired” or “The license is not valid” will appear in JEUS logs and JEUS will not boot. ******************************** - JEUS Home : /home/jeus 7 - Java Vendor : Sun - Added Java Option : ******************************** + /home/jeus 7/jdk 1. 6. 0_31/bin/java -server -Xmx 512 m -Xbootclasspath/p: /home/jeus 7/lib/system/extension. jar -classpath /home/jeus 7/lib/system/jeus-launcher. jar: /home/jeus 7/lib/system/xalan. jar: /home/jeus 7/lib/system/jaxbimpl. jar: /home/jeus 7/lib/system/woodstox. jar: /home/jeus 7/lib/system/xml_resource. jar: /home/jeus 7/lib/syst em/commons-cli. jar: /home/jeus 7/lib/system/jaxb 2 -basicsruntime. jar: /home/jeus 7/lib/system/javaee. jar: /home/jeus 7/lib/system/tmaxjce_jdk 15 x. jar Dsun. rmi. dgc. client. gc. Interval=3600000 -Dsun. rmi. dgc. server. gc. Interval=3600000 Djava. library. path=/home/jeus 7/lib/system -Djava. endorsed. dirs=/home/jeus 7/lib/endorsed Djava. naming. factory. initial=jeus. jndi. JNSContext. Factory -Djava. naming. factory. url. pkgs=jeus. jndi. jns. url Djava. net. prefer. IPv 4 Stack=true -Djava. util. logging. manager=jeus. util. logging. Jeus. Log. Manager Djava. util. logging. config. file=/home/jeus 7/bin/logging. properties -Djeus. tool. webadmin. locale. language=ko Djeus. home=/home/jeus 7 -Djeus. jvm. version=hotspot -Djeus. tm. check. Reg=true Djeus. properties. replicate=jeus, sun. rmi, java. util, java. net jeus. launcher. Launcher -u administrator -p jeusadmin License is expired § Resolution: • Check the validity of the license. • If a demo license is used for more than 2 months, a message that says “License is expired” will be displayed. For this, check the license information as follows: - Check the JEUS license information: jeusadmin –licensedue. - Check the Webto. B license information: Run the command wi in wsadmin. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 177

If JEUS Installation Account is Not Used to Boot JEUS § Condition: • A

If JEUS Installation Account is Not Used to Boot JEUS § Condition: • A message that is to be written to the boot log is not displayed, or the following exception is thrown. [2014. 03. 07 13: 31: 18][2] [admin. Server-1] [SERVER-0248] The JEUS server is STARTING. java. io. File. Not. Found. Exception: /home/jeus 7/domains/jeus_domain/servers/admin. Server/logs/Jeus. Server. log (Permission denied) at java. io. File. Output. Stream. open. Append(Native Method) at java. io. File. Output. Stream. <init>(File. Output. Stream. java: 192). . at jeus. server. Bootstrapper. call. Main. Method(Bootstrapper. java: 464) at jeus. server. Bootstrapper. call. Main(Bootstrapper. java: 470) at jeus. server. Bootstrapper. main(Bootstrapper. java: 135) at jeus. server. admin. Domain. Admin. Server. Bootstrapper. main(Domain. Admin. Server. Bootstrapper. java: 18) [2014. 03. 07 13: 31: 19][0] [nodemanager-15] [Launcher-0038] The server admin. Server initialization failed because of a stream closed error. [2014. 03. 07 13: 31: 19][0] [nodemanager-10] [Launcher-0030] Starting the server failed. [2014. 03. 07 13: 31: 19][2] [nodemanager-10] [Node. Manager-0136] Handling the message failed. § Resolution: • Go to the log directory of JEUS or Webto. B, and check that the owner of the current day’s log files is the JEUS installation account. • If the owner is not the JEUS installation account, modify the owner, terminate the JEUS process, and then reboot JEUS. (ps –ef | grep java) © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 178

If a Configuration File is Incorrectly Written § Condition: • JEUS engine environment is

If a Configuration File is Incorrectly Written § Condition: • JEUS engine environment is configured in xml files, such as domain. xml. If spelling error or special character exists or the hostname is incorrect in the files, JEUS may not startup normally. § If the hostname is entered incorrectly [2014. 03. 07 14: 22: 32][0] [admin. Server-1] [SERVER-0102] Starting the server[admin. Server] failed. <<__Exception__>> jeus. server. Jeus. Server. Exception: Starting the server failed. at jeus. server. Server. handle. Exception(Server. java: 1186) . . . Caused by: java. net. Unknown. Host. Exception: tmaxedu 1. . . 16 more § If xml settings are incorrect [2014. 03. 07 14: 13: 52][2] [nodemanager-35] [Node. Manager-0151] Connected to the client. Starting the message handler. [Fatal Error] domain. xml: 324: 9: The element type "web-engine" must be terminated by the matching end-tag "</web-engine>". . org. xml. sax. SAXParse. Exception: The element type "web-engine" must be terminated by the matching end-tag "</web-engine>". . § Resolution: • Recheck the configuration files. Undo changes by comparing the modified settings with the previous settings from when JEUS booted normally. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 179

If an Engine is Restarted Before Terminating Processes § Condition: • If the JEUS

If an Engine is Restarted Before Terminating Processes § Condition: • If the JEUS engine is restarted while the engine is running or a previous JEUS instance is using server resources, a Bind. Exception is thrown. [2014. 03. 07 14: 40: 13][0] [server 3 -1] [SERVER-0102] Starting the server[server 3] failed. <<__Exception__>> jeus. server. Jeus. Server. Exception: Initializing the JEUS listener failed. . . . at jeus. server. Server. Bootstrapper. main(Server. Bootstrapper. java: 15) Caused by: java. io. IOException: java. net. Bind. Exception: Address already in use . . . 10 more Caused by: java. net. Bind. Exception: Address already in use at sun. nio. ch. Net. bind(Native Method) . . . § Resolution: • Terminate JEUS-related processes, and then restart the engine. • netstat –anp | grep 10801 (the port number in the error message) • ps –ef | grep java | grep jeus • Kill -9 PID © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 180

Context Path Error § Condition: • If a context path is set with an

Context Path Error § Condition: • If a context path is set with an already existing name on a Managed Server, an error that says “already has the context path : /edutest” occurs. [2014. 03. 07 15: 02: 23][1] [server 1 -69] [Deploy-0027] Distributing the application [edutest 2] failed. <<__Exception__>> jeus. deploy. Jeus. Deployment. Exception: Deploying the web module failed. [module=edutest 2] at jeus. servlet. deployment. Web. Module. Deployer. distribute 1(Web. Module. Deployer. java: 139) . . . at java. lang. Thread. run(Thread. java: 662) Caused by: jeus. servlet. deployment. Starting. Exception: The virtual host[DEFAULT_HOST] already has the context path[/edutest]. at jeus. servlet. common. Web. Container. Manager. deploy. Context(Web. Container. Manager. java: 618) at jeus. servlet. deployment. Web. Module. Deployer. distribute 1(Web. Module. Deployer. java: 118) . . . 27 more § Resolution: • Duplicate context paths cannot be used when executing multiple jobs from a single Managed Server. • To provide services for all jobs using the same context path, a separate Managed Server or host must be used for each. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 181

Webto. B Port Starting Error § Condition: • When a user tries to use

Webto. B Port Starting Error § Condition: • When a user tries to use port 80 for Webto. B, an error that says “HTL 0017: listen port(80) in use, we'll retry after 10 seconds” occurs. Number of client handler(HTH) = 1 Supported maximum user per node = 8133 Supported maximum user per handler = 8133 WSBOOT: SVR(htmls) is starting: Thu Jan 25 13: 46: 24 2007 HTL 0017: listen port(80) in use, we'll retry after 10 seconds WSBOOT: SVR(htmls) is starting: Thu Jan 25 13: 46: 24 2007 § Resolution: • Only the root account has the ownership of port numbers that are less than or equal to 1024. Therefore, if a user wants to start a service using port 80, Webto. B needs to be started using the root account. • netstat –an | grep 80 | grep LISTEN • Change to the root account, then execute “wsboot. ” © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 182

DNS Error § Condition: • Error that says “The server could not be found.

DNS Error § Condition: • Error that says “The server could not be found. ” occurs when trying to access a web page. § Resolution: • This error may occur because a web server is unable to provide services. Either the Web server could not be started, or the Web server could not receive a client’s request due to a network problem. Check that the Web server is running normally. • This error may also occur if the port 80 is unable to listen for a request, because the Web server is not running under the root account. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 183

Service Temporarily Unavailable § Condition: • Error that says “ 503 Service Temporarily Unavailable”

Service Temporarily Unavailable § Condition: • Error that says “ 503 Service Temporarily Unavailable” occurs when trying to access a service via a web browser. § Resolution: • This error occurs when a web server is started while JEUS is not connected. • Connect to wsadmin of Webto. B, check the status of the JEUS server, and check if JEUS started up normally or if there is a failure. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 184

Webto. B Connection Error § Condition: • Error that says “fail because of a

Webto. B Connection Error § Condition: • Error that says “fail because of a network error ” occurs repeatedly when JEUS is started or is running. [2014. 03. 07 15: 14: 08][1] [server 1 -79] [WEB-3347] webtob 1 -hth 0: Connecting to Webto. B[localhost: 9900] failed because of a network error [java. net. Connect. Exception: Connection refused]. Check if Webto. B is running. If it is not, contact the administrator. § Resolution: • This error may occur if JEUS fails to connect to Webto. B. • Check the network status and whether Webto. B started up normally. • Check whether Web Connection settings in the JEUS Managed Server Web engine are correct. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 185

404 Not Found § Condition: • “ 404 Not Found” error occurs when a

404 Not Found § Condition: • “ 404 Not Found” error occurs when a web browser tries to access the service, but the server does not have the requested file. § Resolution: § Check the server settings, and that the requested file exists. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 186

Connection Pool Exception § Condition: • Connection. Pool. Exception may occur while trying to

Connection Pool Exception § Condition: • Connection. Pool. Exception may occur while trying to access the DB. [Root exception is jeus. connector. pool. Connection. Pool. Exception : Creating the connection pool [oracle. DS] failed. ] at jeus. jndi. JNSContext. handle. Lookup. Exception(JNSContext. java: 574). . . at java. lang. Thread. run(Thread. java: 662) Caused by: jeus. connector. pool. Connection. Pool. Exception : Creating the connection pool [oracle. DS] failed. at jeus. jdbc. connectionpool. Server. Side. Connection. Pool. Initializer. make. Connection. Pool(Server. Side. Connection. Pool. Initializer. java: 69) at jeus. jdbc. connectionpool. Server. Side. Connection. Pool. Initializer. make. Connection. Pool(Server. Side. Connection. Pool. Initializer. java: 37) Caused by: jeus. jdbc. datasource. DBData. Source. Exception: Creating the driver data source instance failed: pool [oracle. DS]. at jeus. jdbc. datasource. Data. Source. Generator. get. Data. Source(Data. Source. Generator. java: 112). . . 22 more Caused by: java. lang. Class. Not. Found. Exception: oracle. jdbc. pool. Oracle. Connection. Pool. Data. Source at java. net. URLClass. Loader$1. run(URLClass. Loader. java: 202). . . § Resolution: • The above error occurs while checking a connection to the DB using the Data. Source configured in JEUS. • The “Caused by” clause above shows that the java. lang. Class. Not. Found. Exception has been thrown because the JDBC driver cannot be found. • Check whether the JDBC driver exists in the correct path. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 187

No. Class. Def. Found. Error § Condition: • No. Class. Def. Found. Error occurs

No. Class. Def. Found. Error § Condition: • No. Class. Def. Found. Error occurs when the class definition is not found during a service call. java. lang. No. Class. Def. Found. Error: db/DBSource at java. lang. Class. get. Declared. Constructors 0(Native Method) at java. lang. Class. private. Get. Declared. Constructors(Class. java: 1618) at java. lang. Class. get. Constructor 0(Class. java: 1930) jeus. servlet. jsp. Jsp. Servlet. Wrapper. execute. Servlet(Jsp. Servlet. Wrapper. java: 72) at jeus. servlets. Jsp. Servlet. execute(Jsp. Servlet. java: 359) § Resolution: • The above error occurs when a class file corresponding to Classloader exists, but the class is not defined correctly. • Check the class hierarchy of the Classloader. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 188

File Descriptor Related Error § Condition: • “Too many open files” , “Broken pipe”

File Descriptor Related Error § Condition: • “Too many open files” , “Broken pipe” , or “Class. Not. Found” error occurs. § Resolution: • FD setting may vary depending on the platform. Check that the FD setting is not too small. • E. g. ) Solaris: set rlim_fd_max=8192 /* hard limit */ © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 189

Out. Of. Memory. Error § Condition: • Out. Of. Memory. Error occurs. • Size

Out. Of. Memory. Error § Condition: • Out. Of. Memory. Error occurs. • Size of the memory allocated for JVM heap is too small. • GC is not operating normally. Exception in thread "main" java. lang. Out. Of. Memory. Error: Java heap space at java. util. Arrays. copy. Of(Arrays. java: 2882) at java. lang. Abstract. String. Builder. expand. Capacity(Abstract. String. Builder. java: 100) at java. lang. Abstract. String. Builder. append(Abstract. String. Builder. java: 390) at java. lang. String. Builder. append(String. Builder. java: 119) at Hold. Memory. OOM. add. Object(Hold. Memory. OOM. java: 25) at Hold. Memory. OOM. main(Hold. Memory. OOM. java: 10) Heap § Resolution: • Increase the heap size of the JVM. E. g. ) –Xms 512 m –Xmx 512 m • To examine the exact cause of the error, analyze GC logs and their settings. © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 190

Total Enterprise Solution Provider, Tmax. Soft Q & A © 2014 Tmax. Soft Co.

Total Enterprise Solution Provider, Tmax. Soft Q & A © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 191

Total Enterprise Solution Provider, Tmax. Soft Thank you! © 2014 Tmax. Soft Co. ,

Total Enterprise Solution Provider, Tmax. Soft Thank you! © 2014 Tmax. Soft Co. , Ltd. All Rights Reserved. 192