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
{productName}, refer to the online help in the {productName}
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)]


