type=page
status=published
title=apply-http-lb-changes
next=attach.html
prev=add-resources.html
~~~~~~

apply-http-lb-changes
=====================

[[apply-http-lb-changes-1]][[GSRFM00002]][[apply-http-lb-changes]]

apply-http-lb-changes
---------------------

Applies load balancer configuration changes to the load balancer

[[sthref23]]

=== Synopsis

[source]
----
asadmin [asadmin-options] apply-http-lb-changes [--help]
lb-name
----

[[sthref24]]

=== Description

Use the `apply-http-lb-changes` subcommand to apply the changes in
the load balancer configuration to the physical load balancer. The load
balancer must already exist. To create a physical load balancer, use the
`create-http-lb` subcommand.

This subcommand is only applicable to Oracle GlassFish Server. This
subcommand is not applicable to GlassFish Server Open Source Edition.

[[sthref25]]

Context

The Load Balancer distributes the workload among multiple Oracle
GlassFish Server instances , increasing the overall throughput of the
system. The Load Balancer also enables requests to failover from one
server instance to another. For HTTP session information to persist,
configure HTTP session persistence.


[NOTE]
====
The Load Balancer Plugin is only available with Oracle GlassFish Server,
and is not available with GlassFish Server Open Source Edition. For
GlassFish Server Open Source Edition, it is possible to use the `mod_jk`
module to configure load balancing on the Apache HTTP server.
====


For more information about configuring load balancing with
\{product---name}, refer to the online help in the \{product---name}
Administration Console.

[[sthref26]]

=== Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.

[[sthref27]]

=== Operands

lb-name::
  The name of the load balancer to which changes are applied. The load
  balancer must already exist. You can create it with the
  `create-http-lb` subcommand.

[[sthref28]]

=== Examples

[[GSRFM446]][[sthref29]]

==== Example 1   Using the `apply-http-lb-changes` subcommand

This example applies configuration changes to a load balancer named
`mylb`.

[source]
----
asadmin> apply-http-lb-changes mylb
Command apply-http-lb-changes executed successfully.
----

[[sthref30]]

=== Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref31]]

=== See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:create-http-lb.html#create-http-lb-1[`create-http-lb`(1)],
link:create-http-lb-config.html#create-http-lb-config-1[`create-http-lb-config`(1)]


