Thursday, January 22, 2015

Oracle Weblogic Admin Frequently Asked Questions



Explain about Start, Resume, Suspend, Shutdown and Restart with SSL options in weblogic console ?

What are the various ways of shutting down specific managed server ?

Significance of 'Protocols' tab in Weblogic console when you select any server instance ? what are the features it gives us ?

Explain concept of domains,admin,managed server in Weblogic.

Explain basic functionality of Application Servers eg WLS,OAS,Websphere.

Difference between Weblogic Development and Production mode.

Explain Node Manager in Weblogic.

Key functionality of Nodemanager.

What are the different types of nodemanager.

What is the default port number of nodemanager.

Mention the path for Nodemanager home.

Explain some properties present in nodemanager.properties file.

Is Nodemanager setup mandatory in a standalaone WLS installation.

Is nodemanager setup mandatory in a clustered WLS environment. If not what are the demerits.

Explain the functionalities of Nodemanager in a clustered WLS environment.

Explain the term managed Server Independence mode.

Can I start a managed server even if Admin server is down.

Can I make configurational changes to managed server if admin server is down.

Explain significance of admin server in a WLS domain.

Why do you think Oracle recommends not to deploy applications to Admin server in production environments.

Explain different ways of starting or stopping WLS Admin/managed server.

What is config.xml. Where can I find it.
You deployed a faulty code to Admin server which brought it down. You are not able to restart it.How would you undeploy the faulty piece of code then?

How do I clear cache for a WLS managed/Admin server.

What is meant by datasource.

Explain how would you tune a datasource and apply some best practices to it.

Explain difference between multicast and unicast IP.

Explain hardware requirement for a WLS 2 node cluster.

How do you configure OHS/Apache web server for a 2 node WLS cluster?

Explain basic steps for SSL configuration in WLS.

Explain JVM concept and detailed architecture.

What is the function of Permanent Generation (PermGen) space.

Explain OOM errors and what are the different causes.

Explain Memory Leaks. Explain how would you detect it. state examples of some tools to analyze it.

What would be your approach if you are asked to tune JVM.

Explain some key Sun JVM startup/tuning arguments.

State some JVM tuning properties that you would use in a multi threaded box like the Oracle T series so as to improve JVM performance.

Explain Garbage Collection. State some GC algorithms you are aware of.

What is the Verbose GC option used for?

Explain what would you do to mimimise frequent major GC.

Explain difference between major and minor GC.


How to set classpath ?

What is weblogic.jar file ?

What is cluster ? what are the benefits of a cluster ?

What are the different cluster algorithm and difference between them ?

What is cluster address ?

What is Multicast ?

What is unicast ?
Whart is the difference between multicast and unicast ?

What is the difference between vertical and horizontol clustering ?

What is JMS ?

What is a JMS server ?

What is SSL or what is the purpose of SSL ?

How to deploy an application ?

What are different staging modes and differences between them ?

What are the different forms of weblogic deployment files ?

What are the difference between jar, war and ear files ? 

What is the difference between web.xml and weblogic.xml ?

What is virtual host ?

What is a machine ?

What is JNDI ?

What is t3 or functioning of t3 ?

What is MSI mode ?

What is connection pool ?

What is data source ?

What is the difference between Data Source and Multi Data Source ?

What is heap and how to define max and min heap size ? 

what is the difference between heapdump, memorydump and thread dump ?

What is the impact on Managed server if admin server goes down ?

Is that possible to start Managed server if admin server is not running ?

How to change the weblogic password ?

What are deployment descriptors ?

What is autodeployment ?

What is exploded form of deployment ?

What is the difference between production and development mode ?

What are the differences between weblogic 10g and 11g versions ?

How to configure apache with weblogic ?

What are startup and shutdown classes ?

What is session replication and how to enable it ?

What is MBEAN ?

What is the difference between .out and .log file ? 

Explain deployment descriptors?
Deployment descriptors are associated with almost all the modules as well as applications. The deployment descriptors can be seen in the form of XML documents and they are capable of describing the contents that are part of directory or the jar file. J2EE specifications usually define the standard as well as the deployment descriptors which are portable for J2EE applications and modules.
What is web.xml ?
Web.xml is an XML document that is mainly for application purpose and it helps in listing out the J2EE components and configuration that of your application in J2EE modules format.
What is the name of default JVM that is made used for WebLogic?
The sun hotspot JDK default is made used for development, JRockit is the one used for production of WebLogic 11g as well as 12c. Operating system is another factor that helps in choosing the certified JDK JVM.
Explain the methods for providing user credentials for starting the server?
At the time of the creation of domain, the wizard for setting configuration asks for the details like user name, password etc. from the user who is logging in for the first time as an administrator. If the domain is created in development mode, the configuration wizard saves the encrypted password as well as the username inside an identity file. This file is available for reference during the time of booting so that in the absence of this file, system can prompt the user for the purpose of entering credentials. A new boot – identity file can be created if you want to change the use credentials or else if you are having the requirement of creating domain in the production mode.
Is there any possibility for starting managed server during the absence of administrator server?
The usual process is that in case of any difficulty for the manager server to get connected to any administration server at the time of start up, there is an option for the managed server to retrieve the configuration related to it from the configuration files as well as other files involved.  The information thus retrieved cannot be altered and it is possible only when the administration server is really available. When the administration server is unavailable, then the managed server enters into its independence mode for carrying out its operations.
Explain WebLogic server.
This is a kind of server that supports various services as well as infrastructure that are related with JEE applications. WebLogic server is capable of deploying components as well as applications through WSDL, UDDI and SOAP. This server gets configured as a web server by making use of HTTP listener for supporting the HTTP. Web servers like that of Apache, Netscape and Microsoft are utilized.  The configuration of a web server allows WebLogic is capable of providing services to dynamic and static requests that are usually generated by servlets, HTML and JSP.
What are the capabilities of WebLogic server?
There are various capabilities associated with WebLogic server and they are
·        Changes in dynamic configuration.
·        Production application redeployment
·        Rolling upgrades.
Explain about the function associated with T3 in WebLogic server ?
T3 provides enhancements support for the messages of WebLogic server. The enhancements comprise of the object replacement, the working of the seblogic server – clusters and also HTTP. T3 also performs serialization of java object and also predation of RMI. T3 can be considered as a superset associated with java object. T3 is mandated between WebLogic servers, programmatic clients and cluster associated with WebLogic server. The protocols HTTP and IIOP are made used for enabling communication between WebLogic server and processes.
Explain the use of HTTP ?
HTTP is the protocol that is made used for the purpose of enabling communication between the WebLogic server and processes.
Explain the functionality of IIOP ?
IIOP is a kind of protocol helpful in enabling the communication between WebLogic server and object request broker.
How do stubs function inside WebLogic server cluster at the time of failure?
Stubs perform the process of removing the failed instance from the list whenever there is a failure. The stub usually makes use of DNS for finding the running server and also for obtaining the list of the instances that are currently available with the application. List of the instances available with the server inside cluster gets periodically refreshment and allows in acquiring advantages associated with new servers. The advantages are gained as the server gets added to the cluster.
How can default JVM be changed to other?
For changing the JVM can be done by following the steps below.
·        You should first set the JAVA_HOME in the start script of the server.
·        Change the config.xml of domain for using the JRockit javac.exe
·        Remove any kind of switches specific to Sun JVM from start scripts of server.
How clients handle the DNS – requests to the failed servers?
Bandwidth gets wasted in the case of continues DNS requests to that of unavailable machine at the time of server failure. This problem usually occurs during the time of startup associated with the application that of client side. The servers that are unavailable are removed by searching DNS entries provided by WebLogic server. This removal prevents the clients from accessing failed servers. A third party load – balancers are made used for avoiding the unnecessary DNS requests. Some of the third party load – balancers are BigIP, resonate, local director and Alteon. The main function of these third party loads – balancers is to mask multiple addresses of DNS in to a single one.
Explain the functionality of T3 associated with WebLogic server?
T3 is capable of providing framework or overall structure for the messages that are capable of supporting the enhancements. The enhancements comprises of product tunneling, working in the context associated with clusters of WebLogic server and also in object replacement.
How can classpath be set?
Classpath can be set by making use of the following script WL_HOME\server\bin\setWLSEnv.cmd (in case of windows).
Explain the functioning of Stub?
Stub is usually expected by the people who connect to the WebLogic server cluster. The stub has the list that consists of the available instances of server that perform host implementations associated with object. The stub also has the functionality of balancing the load by distributing load amongst the host servers.
What are the steps for the creation of Pooling within Tomcat server?
·        The first step involved in this process of creating pooling is to download 3 jar files which are the commons-dbcp-1.2 jar, commons-pool-1.3.jar and commons-collections-3.1 jar.
·        The next step is to make an entry inside server.xml of tomcat factory.
How can you differentiate server crash and server hang?
With a server crash, there is no existence for the Java process and if it is a server hang, then the Java process stops responding.
What are the causes for server crash?
The major reasons for the occurrence of server crash are the native IO, JVM, supported configuration, JDBC driver issues and SSL native libraries.
How can you solve the issue of server crash?
A crash associated with JVM is capable of generating hs_err_pid file. You need to refer this file for finding out the root cause for such a crash. In the case of native IO being the origin of thread, you need to disable it. If the origin of the problem is from the driver, need to contact the driver team.
How can Server Hang be solved?
Java WebLogic.Admin PING needs to be checked for finding whether you get a normal and positive response. You can find out the root cause for hanging from this file. You just need to rectify the errors that are identified from this file.
Explain the reasons for server hang?
The major reasons that lead to the server hang are memory leak, deadlock, and long time for returning.
Define memory leak ?
Memory leak is the condition that arises when the objects get retained in the heap even after they have no use.
What causes the condition OUT OF MEMORY?
There are various reasons that can lead to this condition and they are
·        Insufficient size of the heap compared to the extra load.
·        Placing of the objects takes longer period of time like that of HTTP sessions.
·        Occurrence of memory leak inside the application code.
·        The prevention of occurrence of full GC because of JVM bug.
How can the OUT OF MEMORY be solved?
There is a possibility for collecting the memory data after enabling GC – verbose. If the condition has aroused because of HTTP session, then it will be automatically solved when the session gets time out. You should also verify the code associated with the handling of jdbc connectivity. You should also optimize the size of the heap by considering the load.


When can high usage of CPU occur?
This is the condition that usually occurs when a single thread or process makes use of a larger portion of the CPU in an unexpected manner.
How can the issue associated with high CPU usage be solved?
In windows platform the issue of CPU high usage can easily be solved by making use of pslist and also with the process explorer to observe the function performed by the thread or the process.
Explain the term clustering?
Clustering is the process of grouping the servers together for accomplishing high percentage of scalability and availability.
What is the purpose of clustering?
The major goal of performing the process of clustering is to make high scalability as well as availability of the servers possible. This process also helps in balancing the load in a proper manner and also accomplishes failover.
How can cluster communication occur?
The communication through cluster is made possible by the multicast IP as well as port by the process of sending periodic messages which are normally called as heartbeat messages.
What are the various types of WebLogic installations?
The WebLogic installation usually occurs in three different modes which are:
·        Graphical mode
·        Console mode
·        Silent mode.



What is Graphic mode?
It is a kind of installation type that makes use of interactive GUI.
What is console mode?
This is a kind of installation type that follows interactive text based method.
What is silent mode?
This is a method of installation that is non-interactive and is usually based on the .xml properties – file.
What is Unicast?
Unicast is the method used in the clustering technique where there are cluster master and each server should ping to this cluster master for informing that the server is alive.
What is Multicast?
It is a kind of clustering system where there is no cluster master and each and every server needs to ping each other for informing their existence. Multicasting has many messages to be sent in the form of ping as each server needs to inform all others about its existence. This condition creates much complexity associated with the method compared to unicast.
What is a stage deployment?
Stage deployment is a kind of process in which the admin gets a physical copy which is distributed to the other instances.
What is non-stage deployment?
There is no copy in the administrator but each and every server needs to contact the source directly for getting the item to be deployed.
How can port number be checked?
Port number can be checked by using netstat-na|grep connected.

How to find out the listening ports?
Listening ports can be found out by using netstat-na|grep listen.
How to check the version of Java?
Version of java can be checked by using [roo@h1vm/]#java-version.
How is it informed when the server is added to the cluster?
The availability of the new server in the cluster is broadcasted by the WebLogic server – cluster.
How many WebLogic servers can be held inside a multi-processor machine?
There is no limitation for the number of servers.
What is application tuning?
This process involves ejb pool – size cache and jsp recompilation.
What is OS tuning?
This is the process of setting up TCP/IP parameters.
What is Core Server tuning?
This is the process involving the tuning of work manager, chuck size, performance packs, chunk pool size and connection backlog buffering.
What is JVM tuning?
This process involves monitoring of the garbage collection and the tuning of gc strategy.
What is a Machine?
Machine is the logical representation that of the physical machine.
What is Node Manager?
Node manager is a service from Java that is capable of running separate process other than that of WebLogic server.
What is a domain?
Domain can be defined as the group which comprises of various WebLogic – server resources.
What are deployment descriptors?
 Modules and applications have deployment descriptors—XML documents—that describe the contents of the directory or JAR file. Deployment descriptors are text documents formatted with XML tags. The J2EE specifications define standard, portable deployment descriptors for J2EE modules and applications.
What is the difference in the web.xml and weblogic.xml?
 An application-specific XML-based deployment descriptor file named web.xml, which lists your application's J2EE components and their configurations as J2EE modules. Each J2EE module is a collection of one or more J2EE components of the same container type (Web or EJB) that are represented by one component deployment descriptor for that type in the web.xml file.
 A WebLogic-specific deployment descriptor file named weblogic.xml, which defines how named resources in the web.xml file are mapped to WebLogic Server resources. Examples of weblogic.xml attributes include HTTP session parameters, HTTP cookie parameters, JSP parameters, resource references, security role assignments, and container attributes.
 What is the default JVM used for Weblogic?
Sun Hotspot JDK default for Development installation, JRockit is for Production mode for WebLogic 11g and 12c. Operating environment also factor to select the Certified JDK JVM. If you want to change you need to specify it.
Define SOA and how do you explain it to a layman.

 Deferentiate SOA from Oracle SOA Suite.

Define relation between Oracle SOA Suite and Weblogic.

Functional differences between Fusion EM console and WLS Admin console.

List some key Fusion Middleware 11g products and their usage in brief.

Key difference between Oracle SOA Suite 10g and 11g.

Define key components/building blocks/basic architecture of Oracle SOA Suite.

How to change from default JVM to other?
 When you upgrade a domain to WebLogic Server 8.1, consider upgrading your JVM to JRockit. WebLogic JRockit is a JVM designed for running server-side applications in Windows and Linux running on Intel architectures. For server-side applications, JRockit has these advantages over other virtual machines:
 It employs adaptive optimization, which detects and removes bottlenecks in the deployed application.

It is designed specifically for the special requirements of server-side applications, which tend to be parallel and thread-intensive, to run for longer periods of time, and not to use graphical interfaces.

You can monitor JRockit using the WebLogic Server Administration Console.

Steps to change:
 In the server start scripts, set JAVA_HOME (or equivalent) shell variables to point to the JRockit root directory. For example, change:
@rem Set user-defined variables.
set JAVA_HOME=WL_HOME\jdk131
 where WL_HOME is the WebLogic Server 7.0 installation directory, to
@rem Set user-defined variables.
set JAVA_HOME=WL_HOME\jrockit81_141_02
 where WL_HOME is the WebLogic Server 8.1 installation directory.
 Change the domain’s config.xml to use the JRockit javac.exe. For example, change
JavaCompiler="WL_HOME\jdk131\bin\javac"
 where WL_HOME is the WebLogic Server 7.0 installation directory, to
JavaCompiler=WL_HOME\jrockit81_141_02\bin\javac”
where WL_HOME is the WebLogic Server 8.1 installation directory.
 Remove from server start scripts any switches specific to the Sun JVM. For example, from the start command:
echo on "%JAVA_HOME%\bin\java" -hotspot .... weblogic.Server delete “-hotspot”.

How to make a managed server?

v     Backup the configuration by rename config.xml with config.xml_date
v     Configure the changes in the  startManagedWebLogic.sh /cmd  with weblogic home and java home and give the admin severs URL updated
v     Go to weblogic admins console and add a managed server and give the IP and port of the managed server. all the changes confirmed then start the server using startManagedWebLogic.sh script present in the domain bin.

What is a license file?

now you need to register with Oracle Support ID to get updated license xml file.

 How to configure a DB connection pool?
  • Choose the DB type (Oracle, Sybase, Mysql, etc...).
  • Then choose the driver type for the DB.
  • Give the connection pool name.
  • Give the DB Service ID, schema name and password.
  • Then it will ask for testing the connection pool/DataSource.
  • After successful connection, it will ask you to create and deploy the connection pool target to server or cluster. After creating new connection pool always point the jdbcstore to the connection pool created. This is required because A JMS JDBC store will be used for persistent messaging.
  • After each JDBC connection, we have to restart the server if there is startup classes dependancy exists otherwise no restart required in WebLogic 9.x and higher versions.

What are the modes of operation for Weblogic server domains?

There are two modes: Development and production mode:

Development mode:
  1. You use development mode while you are developing your applications. Development mode uses a relaxed security configuration and enables you to auto-deploy applications.
  2. You can use the demonstration digital certificates provided by the WebLogic Server security services. With these certificates, you can design your application to work within environments secured by SSL.
  3. WebLogic Server instances can automatically deploy and update applications that reside in the domain_name/applications directory.
  4. When you start a server, the server automatically renames (rotates) its local server log file as server-name.log.n. For the remainder of the server session,
  5. the server rotates its local log file whenever the size of the file reaches 500 kilobytes.
  6. The default number of threads available to Execute Queues is 15.

The default capacity is 15 JDBC connections.

Production mode:

  1. You use production mode when your application is running in its final form. A production domain uses full security and may use clusters or other advanced features.
  2. A warning message is displayed if you use the demonstration digital certificates.
  3. The auto-deployment feature is disabled, so you must use the WebLogic Server Administration Console or the weblogic.Deployer tool.
  4. A server rotates its local log file after the size of the file reaches 500 kilobytes.
  5. The default number of threads available to Execute Queues is 25.
  6. The default capacity is 25 JDBC connections.

What is JNDI?

Java Naming and Directory Interface

Applications use naming services to locate objects data sources, EJBs, JMS, MailSessions, and so on within the WebLogic domain. A naming service associates names with objects and finds objects t3 protocol will be used. (The RMI registry is a good example of a naming service.)

JNDI provides a common-denominator interface to many existing naming services, such as LDAP (Lightweight Directory Access Protocol) and DNS (Domain Name System). These naming services maintain a set of bindings, which relate names to objects and provide the ability to look up objects by name. JNDI allows the components in distributed applications to locate each other.

The WebLogic Server implementation of JNDI supplies methods that:

Give clients access to the WebLogic Server naming services
Make objects available in the WebLogic namespace
Retrieve objects from the WebLogic namespace


How to configure JMS?

Ø      JMS (Java Message Service) is a standard API for accessing enterprise messaging systems. Specifically, WebLogic JMS:
Ø      Enables Java applications sharing a messaging system to exchange messages.
Ø      Simplifies application development by providing a standard interface for creating, sending, and receiving messages.
Ø      Using the Administration Console, you define configuration attributes to:

1. Create JMS servers and target a WebLogic Server instance or a Migratable Target where the JMS server will be deployed.
2. Create and/or customize values for JMS servers, connection factories, destinations (queues and topics), JMS templates, destination sort order (using destination keys), persistent stores (file or JDBC), paging stores, session pools, and connection consumers.
3. Define message and/or bytes thresholds and quotas, as well as a maximum allowable message size on your JMS servers, destinations, and templates.

Enable any desired WebLogic JMS features, such as:
Server clustering using multiple connection factories.
Ø      High availability and load balancing for destinations across a cluster by using distributed destinations.
Ø      Persistent messages and durable subscribers.
Ø      Paging out message bodies during peak load periods to free up memory.
Ø      Controlling message flow during peak load periods, including blocking message producers.
Ø      Establishing a message expiration policy to ensure that expired messages are cleaned up immediately.
Ø      Preventing message quota errors by temporarily blocking message producers from sending messages to a destination when it exceeds its specified maximum message quota.
Ø      Concurrent message processing via session pools.




What is a domain template?

A domain template is a jar file default one is wls.jar file, which is '/bea/weblogic81/common/templates/domains/, it has all the features that is required for the standard weblogic domain, we can even create domain template of our own configuration. by this template we dont have to configure every time we create a new domain.

By using template we can:
*      Create servers.
*      Clusters.
*    Machines.
*      Configure services such as JMS, JDBC, Applications 

What are the Admin Default ports?

The non-SSL listen port for the Administration Server's default network configuration is 7001 by default.

The SSL listen port for the Administration Server's default network configuration is 7002 by default.

WebLogic Admin servers and Managed servers could communicate with Admin port which is separate network channel. So that other communications can be run on different networks.

What are Weblogic clusters?

A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. A cluster appears to clients to be a single WebLogic Server instance. The server instances that constitute a cluster can run on the same machine, or be located on different machines. You can increase a cluster's capacity by adding additional server instances to the cluster on an existing machine, or you can add machines to the cluster to host the incremental server instances. Each server instance in a cluster must run the same version of WebLogic Server.

Benefits of clustering:

Scalability:

The capacity of an application deployed on a WebLogic Server cluster can be increased dynamically to meet demand. You can add server instances to a cluster without interruption of service, the application continues to run without impact to clients and end users.

High-Availability:

In a WebLogic Server cluster, application processing can continue when a server instance fails. You "cluster" application components by deploying them on multiple server instances in the cluster, so, if a server instance on which a component is running fails, another server instance on which that component is deployed can continue application processing

Q: What do you mean by weighted based server instance? How do you configure it?
Ans: The Weblogic Servers in the clustered environment could be routed in 6 ways ROUND-ROBIN, WEIGHT-BASED, RANDOM and same algorithms with Affinity. Weight is defined as the number of the requests incoming to a managed server that is default 100. As per the machine capacity and Operating environments will make you to deside how much weight is suggested on that managed server. We can control the incoming requests using weights increase or decrease, So, this way we can route all the request to one of the managed server in the Cluster. This Weight differences can be used when there is operating environment differences are there.
Q: How to enable EJB available to servlet? asume servlet on apache, ejb on Weblogic cluster.
Ans:Any external access to EJB is not allowed. if the apache webserver already configure as front-end. then we need to look up by JNDI tree.
Q: What is the silent mode installation file contains root element? When do you require this mode of installation?
Ans:The root element in silent.xml is <install>This kind of mode usually required in two different situations.
Situation1 : Weblogic clusters could be installed/implemented only on homogenous environments. If cluster1 is constructed with MgdServer1, MgdServer2if one server isusing Weblogic 7 environment and other one on Weblogic 8.1 or higher this is not allowed.
Situation 2: When one huge project is migrated from one physical location to other, Where the Application specialist must have the similar environment as the Production Server had. To prepare Development work with similar kind environment we shall install on First system same as Production Server rest of the developers systems could be installed with silent mode.
Q: What are the basic configuraiton requirements for a Cluster? or
Why do you need multicast address in Clustering?
Ans: The Multicast address is must for clustering, If server instance need to join the cluster it will use multicast address. The Administrator server handles the web/resource request which is incoming to the Weblogic server then the admin server will send poll messages for availability to handle the current incoming request by which member server in the cluster with multicasting. The multicast address should not conflict with the Network configurations on every member server. The range of multicast IP address is : 224.0.0.0 to 239.255.255.255.The admin server sends a TTL (Time to Leave) packet,which will acknowledges the readiness of a managed server. If more than one member server is available then it will choose the member server with first come first server bases.
Q: What are all the ANT command options?
Ans:To view all options of ant command is simple, just use the following command :
prompt> ant -help

Note: This will work on Unix and Windows too iff PATH is pointing to ant specific jars
Q: What is the ANT version last you used? How to get it??
Ans: I am using Weblogic 8.1 it internally provides ant support which is 1.5.6 version.To get this simply use :
 prompt> ant -version
Q: How do you config eclipse with Weblogic?
Ans:Weblogic version wise plug-ins are available for free download sites. Eg: lomboz tool it is a very simple tool, my experience is that deployment on WL is very few steps required.Just we need to copy the plug-in extracted to eclipse/plug-ins folder. Here we need to follow the correct J2EE specification for easy deployments of application.

Q: what is the source to identifying the Connection pool failure? What is the remedy?
Ans: In WL 7/8 to identify the Connection pool failure we have 3 options:
1.The Connection pool hosting Server instance healthchecking by Monitoring tab where we need to find the idle thread availability.2. Checking in the weblogic log of that corresponding server instance. Usually we get broken pipe Exception.This could be generated due to overload on connection pool. To resolve we can tune the execute threads for the corresponding server instance.3. Look for Thread dump and identify the which thread is doing which task execution?
Q: What is Thread Dump? Why we need it? How do we get it?
Ans:Thread dump concept is used only by Admin users who operates the production server; it is the dump of the behavior of the WebLogic server instance’s execute threads.When the thread dumps helpful? If WLS execute threads misbehaving due to following reasonsMaybe you just need more threads. Maybe you need some of your application to use a different queue. Maybe your application needs tuning.There is a need of trouble shoots the issues due to various reasons:
1. Requests overloaded
2. Connection Pool fails
3. File cannot read/write for any application (which might be xml file too)
4. Queues are overloaded
or back-end legacy connection issues
In windows CTRL + Break , There is another common method to get thread dump:a) Open a cmd window (in Windows) or shell (in Unix/Linux)b) Set the proper java path and add weblogic.jar to the classpathc) Run the following command script :prompt >java weblogic.Admin -url t3://host:port -username weblogic -password weblogic THREAD_DUMP Here please replace with the correct host, port number, username and password. You can get the thread dump from the standard output.

Best WebLogic (JVM ) Thread Dump analyzer are:
1. Samurai
2. Java TDA
3. Thread Dump Viewer
4. Eclipse lock analyzer plugin

Q: What is the procedure for Queues config? How to make them to free?
Ans:
1. The Queues configuration requires persistence storage which could be a File on operating system or a DataSource.
2. The queue configuration requires JMSConnectionFactory, JMSServer, jms module Queue or topic as per the application need
You can created using the Weblogic Administration console or using WLST in latest versions 9.x onwards.

Can you give the  deployer utility syntax?
The syntax goes like this:
$  java weblogic.Deployer -adminurl http://admin:7001 -name appName -source /myapp/appName.ear -targets [serverList] [-activate or other options]
How do you install Apache web server in UNIX and windows?
You will get a binaries for Apache website and you compile and build with the 4 steps
a. Extract the compressed file
b. Execute configure.sh file from the extracted folder
c. make
d. make install
What is Oracle SID in Database?
It is a  Service ID in Oracle database, that we need to use in configuring JDBC Connection pool.
What is listener in database?
In Oracle listener is that which is associated with a SID and host, port. It is configured in the tnsnames.ora file. You can verify it by tnsping command.
What are the tuning techniques you applied?
Tunning for JVM - chanigng -Xmx, -Xms, MaxNewSize, MaxPermSize, and if required GC algorithms
Tuning in Threads/ThreadPool -- Defining Workmanager with maximum constraint
Tuning TCP/IP connections Interface address, backlog count,
Tuing  JMS  -- changing queue sizes as required
Tuing JDBC - initial count, maximum capacity, increase by number of connections
 How do you troubleshoot if config.xml file will be deleted
First we look for is there any last good backup of configuration is availble on the Admin machine. If it is not found then alternatively you can find it on remote machines where the managed servers running.

Best practice is whenever there is a configuration changes made before and after you need to take a backup.That will help you such situation where you might need old configuration sometime.

How do u trouble shoot if managed server is in FAILED state?
If any managed server is in FAILED state there could be reasons as follows:
i) deployment failed
ii) JDBC DataSource issue
iii) JMS configuration issue

How to monitor webLogic using WLST?
First you need to connect to the adminServer. then you can use any Runtime MBean.
Using WLST we can monitor various Runtime MBeans such as ThreadPool, JVM, JDBC ConnectionPool, JMS Server and Server Life Cycle for state of a WebLogic server instance.
Can you explain about bea guardian?
Gaurdian is only helpful when you have GUI. It is enables that all new patches available on Oracle site can shown in the right downside corner shows.
10.What are monitoring tools you know?
There are wide varieties of  monitoring tools available, such as:
a. HP-OVO
b. Introscope Willey
c. Patrol
d. Mercury and many more...

What are the difference between Connection pool and data source?
ConnectionPool is physically connects to the Database. where as Data Source is a logical resource that can be used by developer or any other resource for accessing Connection of pools.
DataSource can be associated with JNDI name that is used for lookup from from any other client.

What are the difference in WebLogic 8.1 and 9.x?
Side by side deployment introduced in WL 9.x
deployment descriptors
JDK support 1.4 and 1.5 respectivly
console Look and feel changed Cuncurrent access is controlled with Change center 'Lock and Edit' , 'Activate Changes', 'Undo All chnages' buttons.
ConnectionPool is included in DataSource configuration part.
JMS Uniform distributed destination is reduced configuration side.
JMX version change 1.2 so the MBean accessing methods simplified.

What is JMS and how do you configure it?
Java Messaging System it is a API supported by J2EE application server for messaging between diffent resources. it can be used by MDB (Message Driven Beans).  First you need to configure JMS System resource,  JMS module consists  any one out of  PTP,   publisher/Subscriber type
What is cluster and how do you configure?
Cluster is a group of managed servers.
Using console
Usning WLST
You need to provide the Multicast address, Multicast port, Cluster Address which is nothing but the listen addresses, listen port of all managed servers need to group together.
What is the use of multicast address?
In a WebLogic domain to broadcast the heart beat message to all cluster members. TTL will be send to the multicast address, to this address all the cluster members are subscribers. If one of the Server crashes that can be notified by all other members by missing 3 times heart -beat. So that secondary server will takeover the request and start working with the replication data.
How to get thread dump and what the purpose of stuck thread?
Get the java process id, you can get it by jps or customized script for it.
kill -3 pid for unix env.
Ctrl+break for windows env.
When there is a Stuck Thread need to monitor the log for few minutes some times 2 or 3 stuck threads hogging but after sometime it will be  unstucked. If you take multiple thread dump for every 5 sec gap and analyse with sumarai or Java Thread Analyzer tool you will get to know why it is stuck what is causing the instances to mis behave that time.
What is nmenroll in WLST?
The nmEnroll() method is used for enroll the machine with the weblogic domains running on that. It is name and its path.
the Nodemanager always get the domain information from the Administration server provided that it should have enrolled in that machine.
Tell about ant scripts?
You can ANT Scripts are mostly used for deployment process in development environtments.
ANT can be used to
  1. start WebLogic Server
  2. deploy the application
  3. Configure a single WebLogic server
  4. invoking WLST script
Types of load balancing techniques and differences b/n them
There are Hardware loadblancer, Software loadbalancer BIG IP F5 is most leading load balancers in use.
Again the Software loadbalancing CMS, CSS Context Switch Servicing
Basically Load balances uses Round robin method to its connecting Webservers.

Plrease ref wikipedia.com for more details.
What is the important configuration file in apache?
The Apache configuration will be defined in the httpd.conf, if required segrigated weblogic.conf file can be created.
SSL enable sites requires httpsd.conf
How do you provide load balancing?
In WebLogic Cluster side we have 3 basic types and each supports Affinity based also.
I) Round Robin
ii) Random
iii) Weight based
Why Data source is not there in Weblogic 9?
I just wonder about this question!! It is there under jdbc link
When do you use vi editor?
In UNIX environments we have vi editor for creating new file which can be shell or python or jython or plain file.
I - insert mode
Esc - to come out of the mode
r - replace char
a - append to the line
O - insert above line
o - insert below line
dw - delete word
dd - delete line
x - delete char
/ - search a pattern
:set nu setup numbers  etc...
What type of shell scripts you have created?
There are many bash scripts whihc I had developed
i) Finding a pattern in all log files.
ii) instance name assciated with PID
iii) Heap dump
iv) Multiple copy for produciton Code move
v) Many DB related scripts
vi) Log archiving scripts
vii) Daily DTS Collector scripts
What type of wlst scripts u have created?
WLST scripts
I) Thread Monitoring script
ii) JVM monitoring
iii) JMS monitoring
iv) DataSource monitoring
v) Site wise, Server wise, Domain wise scripts
How to test the port is existing or not in unix?
On the UNIX you can give the following command
netstat -na |grep <port> 

When do we go for jdrivers and  XA drivers?Advantages?
This question is focused for weblogic Architect/developers. This choice is depends on the application if it is having more transaction with Database requires reliable connections with the DB, more Entity Beans on the ejb-tier then we need to choose JDriver when JDO is in application side. Transactional consistency is mandatory for the application and response time is no matter then we choose XA.

Is there any disadvantages of using machines in cluster configuration?

Yes, If Weblogic domain not using the feature of NodeManager then it is a useless configuration.


What happens if we delete the log files when the server is running & when the  server is not running?

Better option is to NULLify the content of the log after archiving the logs. Nothing  happen when we delete a WebLogic server log files, When server is RUNNING, new logs will be generated w.r.t Server instance and application logs depends on log4j.properties.
New loggging will be written if the file exists. It will always do appending to the log file. If the file is removed then no appending happens. So that you don't know what is happening to the Server instance. The other case, When NOT RUNNING not new log generated :)

Can we change the name of the log files?
When we want to change the log file names while running. If we change at run time WebLogic will creates new log file again.
Using WLST, specifying logger with edit, save we can change it in the domain level also. Ref: Unnikrishnan pillai blog.

What is the actual procedure of the application deployment in realtime? Basic  reqiurement?
If there is no deployment tools in use then no-stage mode is preferred for production. Application code will be deployed when target managed server is restarted. Admin server need not to copy the code to remote machine. But you need to place the code in the code directory. 

Production Redeployment can be done with weblogic.Deployer command also. 

Latest version prefers to use deployment plan. 

Realtime in the sense development or in Production? If it is Development procedure is simple we can use hot deployment.
the number of components of the application are scheduled in sequance of deployment order.
for entity-ejbs some times requires restart of the server.

 Why datasources ,JMS  need JNDI?
JNDI is a light weight directory which is used to lookup from other resources. Entity EJB lookup for DataSource, Message Driven
Beans lookup for JMS. Servlets, JSP web compoents lookup for JDBC connections for few actions. which is not recommmend in real time.

Benefits of  jRockit over jdk?

JRockit JVM strongly built with Aspect of Programming, POJO
JRockt don't have separate class loading in JVM space. Sun JDK JVM have a dedicated memory space for it, that is PermSize.
JRockit performance is good once it is in RUNNING. 
Sun JDK is faster than JRockit at launching time. 
GC options are varies in both.
Please visit: http;//wlabypani.blogspot.com

What is Bootup Process?
StartWebLogic.sh script flow need to explain...
CLASSPATH 
MEMARGS
GC parameters
to start the weblogic.Server class
check authentication if user, password given script takes from it. if not
check for boot.properties

Domain bootup process is like this...
Admin Server -> EJB TIER servers -> Web - Tier

How do u  identify weblogic health in production?
Main Threads...
checking ThreadPool state for the WebLogic instance. 

This depends on the client capacity ... if Client is willing to spend much on monitoring no downtime then Introscope,
HP-OVO some more tools are available. for me I m using WLST for JVM, Idle, Hogging thread count program which I had published in my blog.

What are the action to be taken when server is crash ?core file  is not genetated what to do?
if sever is crash u cannot do anything after words :) if u got alerts you can managed to get Heapdumps as you told.
reason pstack, jmap, pmap requires process id.
If third party package installed in Solaris then you can use dbx command for further investigation.
In solaries  we use pstack and pmap command to take long stack and to find which thread  library causes the problem instead of  using debbuger.. For linux is there any command that do the same tasks..pmap is working in linux but there is no pstack command..after a long search i found one command which is equal to pstack ...i.e  lsstack ( equal to pstack)..  but it is not working...

Difference between Weblogic previous 8.1 and  9.2 above versions such as ,10.3?
This you can ans only when you read release notes of each one.
already given weblogic interview questions 3

WLS Management from 6.0 to 8.1
WLS Management from 9.0 & above
Proprietary Remotable APIs to access MBeanServer
Standards based, JSR 160. Deprecated MBeanHome & RemoteMBeanServer
One MBeanServer, hosted all MBeans
4 MBeanServers, each MBS hosts MBeans depending on functionality
Non schema based config.xml
Schema based config.xml
Many broken links in MBean hierarchy
All MBeans completely Linked, making the hierarchy traversable
MBeanHome - Factory for creation/deletion of all MBeans
Each parent MBean serves as a Factory to create/delete its Child MBeans
Configuration change mechanism is atomic
Introduction of transaction semantics to configuration change
No control over configuration changes and often unpredictable
Need a lock on configuration to make a change, more control (can undo changes, stop edits etc)
AdminMBeanHome provided the federated view of the Domain
DomainRuntime MBeanServer provides the federated view of the Domain
CommandLine administration via weblogic.Admin
Deprecated weblogic.Admin, introducedWLST
WebLogic Domain Name in MBean's ObjectName, ex: mydomain:Name=myserver,Type=Server
Changed to com.bea, ex: com.bea:Name=myserver,Type=Server
config.xml represented all WLS configuration
{domain_dir}/config directory represents WLS configuration i.e config is spread across multiple xml files (JMS, JDBC & WLDF config in different files)
None
Service MBeans to get to the root Mbeans
Execute Queues control Thread pool control
Work Manager gives more effective and efficient Thread pool control, like JVM crash can be controlled,
Welogic console combination of Applet and webpage less in synchroniztion, no possibility to extention of console.
New WebLogic console in Portals and easy to extention of the console
No that much integrated
Newly introduced webLogic Diagnostics Framework WLDF is more useful for diagnostics
At a time single version archive is allowed for deployment
Deployment can be done with application version wise from commandline
JMS only two types
JMS new types introduced for more flexibility Store and Forward (SAF), distributed destination

Domain Templates are excellent feature for creating multiple domains for a development.

Node Manager can start even Admin Server and the commands can be given from WLST

 What is Tivoli?why we use?How it works?
Tivoli is a IBM product for profiling tool WebLogic was having similar tool Merqury.

In order to see last 20 files what is the command?

At your Unix prompt you can give as follows:
ls -lrt | tail -20

 In order to see last 20 days files what is the command ?

 Simple way is using find command with ctime option and specify days signs +20
Custom Search

If SSL certificates are expired what to do?

Two options:
1. Using temporary demo certificates.
2. Get new renewal from CA(Certifying Authority) like verisign.

How to select where and which driver we have to use?

This is a typical question. This is obsolutely depends on application context.
Major impacting factors
i) load capacity number of connections
ii) Application contains PreparedStatements, CallableStatements preferable is OCI if it is Oracle. (DB vendor specific driver)
iii) Thin Driver is preferable for certain number of connections only. But is most widely used with Oracle RAC and Grid databases.

How to monitor the incoming  traffic for webserver?

HP OVO, Patrol, access logs of web servers. By looking in the access logs of the web-server.

How to find network outages in environment?

Basically ping command will give required output if not outage can be predictable, In WebLogic instance to instance inter-communication breakage will be indicated by BEA-000117 error code.
netstat -na |grep using port can be used for identifying the instance is responding or not.

How  you will analyse threads state using samurai tool?

By getting the Thread dump for the impacted WebLogic instance. Normally, thread state could be ACTIVE, STANDBY, STUCK, If the state is same for many thread dumps then need to check about that thread. 
Check for the 'wait', 'lock' keywords with find option, verify how the threads impacting, does it leads to dead-lock? It is GUI tool which clearly shows in RED color which are the impacting threads in wait state.

Basic requirement for datasouce and connection pools?
Amazon.com Widgets
The Basic need for Connection Pool and DataSource are:
1. connection to the adminserver
2. JDBC Driver name, connecting parameters such as DataSource name, DATABASE schema details (user,password, hostname, port, SID)
3. Target the connection pool to a 'server' or 'cluster'.
4. Finally verify the connection pool by testing it.

What is the difference between TRUNC and DELETE in SQL commands?
TRUNC
faster
dependent tables cannot work

DELETE
slow
row-by-row
cannot applicable for large tables
Explain your work at Current Organization ?
I had responded to this keeping in a brief description of Middleware Administration activities... This is common and general question by the interviewer, explained the work that I have been performing at current project. Like WebLogic Installation, Domain creation, Deployment, Clustering, Trouble shooting activities etc. 
I said that I am good at Shell Scripting.
What is the first line in Shell Scripting ?
Ans: Shebang (#! /bin/sh) It is an interpreter directive to the program loader.
Give some examples of Unix commands like top, netstat etc.,
These commands are discussed in previous interview questions already so here I am leaving it for navigate :)
What is the major configuration file in WebLogic ?
Ans: The WebLogic whole configuration stored into a repository file Config.xml in config folder present in the domain directory.
What is error 404 and error 500 ?
Ans: These are the common issues encounter when web application have trouble. The error code 404 - Page not found this says there is no page on the server when browser client requesting, this can happen when application is not deployed properly or not in active state.
500- Internal server error This error occurs when there is a communication issue between server's intermediate services 
How many Administration servers and managed servers should be there?
Ans: In a WebLogic domain there must be a single Admin server and there can be as many as managed servers as per the need and capacity limitations of the environment. 
Difference between weblogic 9.2 and 11g ?
Ans: The major differences are
* JDK Version support WebLogic 9.2 supports JDK 1.5, whereas WebLogic 11g supports JDK 1.6
* More control provided in the Change Center of the Weblogic 11g console
* SAF feature is added in the JMS server for WebLogic 11g
* More focus given for hot deployment and deployment strategies : production pre-deployment strategy, Production re-deployment strategy with weblogic.Deployer utility and also available in WLST.

- What are the various algorithms you see see while configuring cluster, explain each

- How do you minotiring ?

- How do you see health of the managed server ?

- What do you mean by failover ? 

- What do you mean by load balancing ? how do you configure ?

- What is Multi cast and Uni cast while configuring cluster in weblogic ?

-  How do you deploy any J2EE application in weblogic server ?

-  What is JMS Server ? How do you configure/create ?

- What is JMS Module ? How do you configure/create ?

- What is JMS Connection Factory ? How do you configure/create ?

-  What is the difference b/w queue and topic ?

- What is Point to Point and Publisher/Subscriber methodologies in Weblogic Server ?

- How JMS Server, JMS Module, JMS Queue and JMS Connection factory all correlated each other ?

- Explain me Java/J2EE architecture ?

- What is Web container and what is EJB container ?

- How do you start/ stop Node Manager ?

- what is config.xml file in domains/domainName/config.xml ? when this file will get updated ?

- Whenever you create JMS Module, what are the files get updated and created in weblogic ?

- How do you see pending messages in queue or Topic ?

- How do you stop / start queue or topic ?

-  What is sub deployment while creating JMS Resources ?

-  What are various JMS Resources ?

-  What is Subscription Sharing Policy while creating Connection Factory ?

- What is Client ID Policy while creating Connection Factory ?

- What is XAConnection Factory while creating JMS Connection Factory ?

- What is JMS Template ?

- What is JNDI  why do we need this ?

- What is Data source and how do you configure ?

- What and why is the Foregin server in JMS?

- What is Message Persistence in JMS ? What is JMSFile Store ? What is JMS JDBC Store ?

- What and Why  is Messaging Bridges ?

- What/Why/How Data source in Weblogic Console ?

- What is JNDI ? why ?

- What/why Connection Pool ?

- What are three different data sources available in WEblogic ? explain each one in detail ?

- Provide me detailed steps how to deploy any web application using enterprise Manager as well as using Weblogic console ?

1 comment: