Thursday, October 30, 2014

Difference between the development mode and production mode in Weblogic Application server

 

During the creation of a domain, The server can be configured to start either in development or production mode. Once the server is started, It refers to the mode of the server to determine its run time mode. Default mode is development mode. This server setting is saved in the domains config.xml file and can be changed. It is strictly not recommended by BEA to change the mode after installation.

Which mode to use?


 If a new application is being developed and the process involves multiple deployments, In this case Auto deployment feature will ease the job and also the relaxed security configuration will be a plus point. In such scenarios, Development Mode can be used.
However, When the application is ready to go live in production environment, This mode has to be changed back to the Production Mode.
Lets have a look at the difference between these two modes.

Development Mode :

  • The auto-deployment mode is enabled. As a result the Weblogic server instances can Automatically deploy an EJB, WAR or EAR files present in domain_name/auto-deploy folder. Auto-deployment deploys only to the Administration Server. A poller polls the application folder every 3 secs to check the presence of the new application and deploys it automatically (if the Administration Server is running). If WebLogic Server is not running when the application is copied to \autodeploy folder, Then the application is deployed the next time the WebLogic Server Administration Server is started. This is the quickest way of deploying the application.
  • The default JDK used in development mode is Sun Hotspot.
  • When the server is started, A new log will be created and the old log will be automatically renamed as server-name.log.n. For the remainder of the server session, the server rotates its local log file whenever the size of the file reaches 500 kilobytes.
  • Boot.properties file for Admin server is automatically created during the server startup under Domain_home/servers/Server_name/security folder.
  • The Default JDBC Connection pool capacity is 15 connections.
  • Node manager User id and password will be the default admin credentials.
  • The default number of threads available to Execute Queues is 15. The thread count determines the number of simultaneous operations that can be performed by applications that use the specified execute queue. By default, all applications use the execute queue named default. Additional queues can be created to exercise more control over the resources that your applications use.
  • The DebugFlag is used to enable the WebLogic Workshop Debugger.
  • Change center is disabled. Any Configuration change being done doesn't need the Lock and Edit session.
  • JRE Mode is -client, The Client VM offers improved run time performance for applications and applets and is specifically tuned to reduce application start-up time and memory footprint, making it particularly well suited for client environments.
  • page_check_seconds in weblogic.xml file is 0, When a jsp is edited and deployed by means other than dropping in autodeploy folder, These pages will be recompiled and served. Following are the similar settings. 
  • servlet-reload-check-secs
  • servlet-reload-check
  • resource-reload-check-secs
  • Fast swap is enabled. As a result the Java classes are redefined in-place without reloading the ClassLoader thus having the huge advantage of fast turnaround times. Developers can make their changes, auto compile, and then see the effects immediately.

Production Mode : 

  • The auto-deployment mode is disabled to reduce the overhead of continuous polling of the directory for updates. Hence the WebLogic Server Administration Console, weblogic.Deployer tool or the WebLogic Scripting Tool (WLST) has to be used to deploy the application.
  • The default JDK for production mode is JRocket. Oracle highly recommends the usage of JRockit instead of Sun JDK. However it depends on the platform that the domains runs. JRockit works well with OEL/Red hat Linux platforms.
  • A Warning messages is displayed in the server start up logs when the demo SSL certificates are used. 
  • Server rotates its log file after the size of the file reaches 500 kilobytes. By default, all versions of the log files are retained. Administrators can customize the number of log files to be retained. 
  •  Admin Server will prompt for username and password during the startup. To overcome this, Boot.properties file can be manually created and the data inside the file will be encrypted once the servers is restarted.
  • The Default JDBC Connection pool capacity is 25 connections. For WebLogic 12c it defaults to 15 in both Dev and Prod mode.
  • Node manager user id and password will be randomly generated.
  • The default number of threads available to Execute Queues is 25.
  • The debugFlag that is used to start the WebLogic Workshop Debugger is disabled. 
  • Change center is enabled. Any configuration change being done by the user needs to produce a Lock and Edit session
  • JRE Mode is -server, Server VM has been specially tuned to maximize peak operating speed. It is intended for executing long-running server applications, which need the fastest possible operating speed more than a fast start-up time or smaller runtime memory footprint.
  • page_check_seconds in weblogic.xml file is -1 which means updated jsps, even those deployed outside the autodeploy directory, are not detected. 
  • Fast swap is disabled.





0 comments:

Post a Comment