- WebLogic is a J2EE server and as such provides support for J2EE API’s including.
- JDBC
- JTA
- EJB
- RMI over IIOP
- Servlets
- JSP
- JNDI
- JMS
- WebLogic defines a number of concepts so before we get rolling we should investigate what WebLogic server physically is.
- When you installed WLS you choose a directory to put it in, we will call this the <install directory>
- The Files and the files and folders created by the install includes tools to start, stop, and administrate your WLS installation.
- WLS version 6 runs on and ships with Java version 1.3, the install includes JDK 1.3.0 in <install directory>\jdk130
- Thankfully we won’t cover every detail about WLS and how it is configure and how to set up every option.
- We will focus on getting enough information about WLS so you can successfully setup a WLS server.
- We will get started on monitoring your WLS configuration, so you can trouble shoot.
- We will look at some configuration options and get more comfortable configuring WLS.
- When you install WebLogic Server it comes with all the tools you need to visually configure and monitor your J2EE server. Start me up
- There are several ways to startup a WLS server.
- In windows you can use the Start menu. Start > Programs > BEA … > BEA WebLogic Server > Start Default Server
- You can start the Server from the command line using a predefined script. Navigate to your domain under the <install directory> and run the script called “startWebLogic”.
- You can run WLS as a Service in Windows. To configure services open the control panel and select “services”. WebLogic Server should appear in the list.
- You can also fire up WLS in a more direct fashion using the command line without scripts. Because of the difficulty with the command line it is common to write your own startup scripts for a server.
- WebLogic is a Java class, and it is run in a Java Virtual machine. To start your server type in “java weblogic.Server”.
- To successfully start the server the options to the java command must include the following.
- -classpath
- -Dweblogic.Name=
- -Dweblogic.managementusername=
- -Dweblogic.management.username=
- There are optional parameters as well.
- -Dweblogic.RootDirectory=
- -Dweblogic.RootDirectory=
- -Dweblogic.Domain=
- WebLogic View
- From a WebLogic perspective, the WebLogic Server sits as a middleman between the clients and services that are provided.
- There are several different types of clients that can call into WebLogic.
- Web Browsers
- Java Applets and applications
- Connected PDA’s and Cell Phones
- CORBA clients
- COM objects
- In addition to a database (RDBMS) there are several server side or backend services that a typical application server will have to access.
- Database
- Legacy Systems
- COM components
- To provide communications between the variety of clients and server applications WLS uses several protocols.
- HTTP is used for web communication.
- WLS can serve as a Web Server and be used to communicate to browsers such as Internet Explorer or Netscape Navigator.
- HTTP is used for communicating to mobile devices with WAP filters.
- HTTPS is a secure version of HTTP used to transfer more sensitive data. HTTPS uses a Secure Socket Layer (SSL).
- T3 is another protocol used to communicate to WebLogic.
- T3 was defined by BEA and is used in BEA products like Tuxedo.
- T3 has a secure version of the protocol called T3S, which uses SSL.
- T3 can be used by applets and applications to communicate to a server without using HTTP or going through a web server.
- WebLogic View
- Thread Pools
- When a request is sent into WLS it is put in a queue with all other requests.
- A “pool” of threads handles the tasks in the execution queue.
- Each task placed in the queue must wait until a thread is available to process it.
- The number of threads created in the thread pool is a big part of the customization of your WLS installation.
- By creating many threads the requests will be handled quicker, to a point.
- Defining too many threads in the Thread Pool will cause performance degradation as the administration and overhead of keeping track of all the threads becomes too much.
- The default number of threads in the pool is 15; you can configure it to be between 10 and 40. (We will see how to configure soon.)
- A quick visualization of the thread pool and task queue follows.