Vous êtes sur la page 1sur 6

WebLogic Admin FAQS:

What is MSI mode?



When a Managed Server starts, it tries to contact the
Administration Server to retrieve its configuration
information. If a Managed Server cannot connect to the
Administration Server during startup, it can retrieve its
configuration by reading configuration and security files
directly. A Managed Server that starts in this way is
running in Managed Server Independence (MSI) mode.

by default MSI will be enabled. You can disable this by
going to managed server ->configuration-> tuning-> advanced
options.... untick the checkbox...


What happen when your database and proxy server are down
and your weblogic server is up

All the functionalities except those dependent on DB will
work as usual but whenthe proxy server is down ,no requests
will be routed to the Weblogic Server .
Ahhh! When the DB is down, datasources would go in inactive
mode. But yeah, your application would be impacted majorly
when DB is down and you have used weblogic datasources to
connect to database. As when database comes up, you would
need to restart the weblogic server to bring the weblogic
datasources in ACTIVE mode.
Slight or not complete impact on application in this case.
Things not dependent on DB would work perfectly alright.

And of course, when the proxy server is down, no request
would be accepted. All would be rejected. So 100% fauilre
of application.

WHAT IS TROUBLE SHOOT IN WEBLOGIC

Troubleshooting in weblogic is find out the cause(Server
fail, Server shutdown, SSL issue, Thread stuck, etc) of
weblogic server failure if it occur by servers logs,
You can also troubleshoot the outofmemory(OOM) or server
hanging issues by taking a thread dump of the server. in
unix use kill -3 pid command. in windows i am not very
sure. this gives a snapshot of the threads running in the
server at the time of issue.
Trouble shooting is the find of the cause of weblogic server
fails if it occur by server logs.we can take the thread dump
of the server kill -3 pid.
Q>By default thread dump goes to System.out log.How can we
send it to a particular file so that when we take the thread
dump, instead of searching in System.out we can analyse a
particular file

>Here is the jvm tools for taking the thread dump and heap dump.

You just go to jdk home path
Ex:
C:\Program Files\Java\jdk1.6.0_20\bin
and then issue the below command for thread dump it will
redirect you the output of the command to TD.log file under
/tmp dir

C:\Program Files\Java\jdk1.6.0_20\bin jstack -l <PID>
>/tmp/TD.log


For Heap Dump
C:\Program Files\Java\jdk1.6.0_20\bin jmap -heap <PID>
>/tmp/heap.log



In cluster , the load balancing that simply redirect
the client request to any available server in weblogic
server cluster. Suppose assume we have 4 managed
servers and one admin server. can we trace that request
is going to which managed server in the cluster? is it
possible to tell that request is going to which
ipaddr/managed server?

Access logs have all these informations.
whenever the request gets routed from any Load balancer or
Web-server to any application server, the routed request
contains a header part which includes information of the
server like Port, Listen address etc based on which it
routes to its appropriate server hosting application. And
we can trace this information in web-server log file.



what is directory structure of any ear/war file in
weblogic

directory structure for ear file:

App-INF/application.xml
META-INF/MANIFEST.MF
+jar files
+war files

directory structure for war file:

Web-INF/web.xml
META-INF/MANIFEST.MF
classes
libs


How to Know the maanged servers status,when admin
console is
not available?

we can always check via unix box by ruuning a inbuild
script ServerStatus.sh. Also we can check whether
SystemOut.log for that server is updating or not.
We can run the weblogic.Admin to know the status as below,

java weblogic.Admin -username <name> -password <passwd> -
adminurl <admin url> GETSTATE

This will give the status of the server running on the
port, used while defining the admin url
i.e if we use localhost:7002, it will give the status of
the server running on port 7002. So change the port
accordingly for getting the status of a particular server.
java weblogic.Admin -username <USERNAME> -password
<PASSWORD> GETSTATE <SERVER NAME>

Exmp:

java weblogic.Admin -username <USERNAME> -password
<PASSWORD> GETSTATE AdminServer

java weblogic.Admin -username <USERNAME> -password
<PASSWORD> GETSTATE ManagedServer ./

What is DataSource ?how can its associated with connection
pools ?

A Data Source object enables JDBC applications to obtain a DBMS
connection from a connection pool. Each Data Source object binds to
the JNDI tree and points to a connection pool or MultiPool. Applications
look up the Data Source on the JNDI tree and then request a
connection from the Data Source
DataSoource is an Interface that is an alternative to
Driver manager.It has methods :
getConnection()
getConnection(username,pwd)
...and many more..
Through JNDI it connects with database.
Or It takes from Connection pool.


what is WLS T3 protocol?

Weblogic's implementationof the RMI specification uses a
proprietary wire-protocol known as T3. javasoft's reference
implementation of RMI uses a proprietary protocol callrd
JRMP. weblogic developed T3 because they needed a
scalable,efficient protocol for building enterprise-class
destributed object systems with java.
T3 is an optimized protocol used to transport data between
WebLogic Server and other Java programs,
including clients and other WebLogic Servers. WebLogic
Server keeps track of every Java Virtual
Machine (JVM) with which it connects, and creates a single
T3 connection to carry all traffic for a
JVM.
For example, if a Java client accesses an enterprise bean
and a JDBC connection pool on WebLogic
Server, a single network connection is established between
the WebLogic Server JVM and the client
JVM. The EJB and JDBC services can be written as if they
had sole use of a dedicated network
connection because the T3 protocol invisibly multiplexes
packets on the single connection.
T3 is an efficient protocol for Java-to-Java applications
because it avoids unnecessary network
connection events and uses fewer OS resources. The protocol
also has internal enhancements that
minimize packet sizes