From For Publishers

Various topics pertaining to the technology of license management, both internal to license managers and the use of license managers in software products.

Advanced End User Reprise License Manager (RLM) Administration Tutorial Series

Advanced End User RLM Administration Tutorial Series

Reprise Software continues its series of regular on-line tutorials designed to help users maximize the value of the Reprise License Manager (RLM). These sessions are designed for system administrators and ISV tech support people.

This third session will be conducted by Reprise Software’s lead software developer, Bob Mearns, who has over 15 years experience developing and supporting license manager software.

The 40-minute session is scheduled for Tuesday October 12th at 8AM PDT (GMT-08). This session will focus on RLM license server administration and optimization in a multi-server environment. It will specifically address:

  • License server administration of multi-server sites
  • Connecting to multiple license servers
  • Connection and Idle Timeouts
  • Server to Server License Transfers
  • License Queuing
  • RLM’s environment variable settings

For more information about the tutorial series, please contact Mr. Cody Crider at [email protected]

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Time to Talk about Timeouts in the Reprise License Manager (RLM)

Technical article on timeouts in the Reprise License Manager

There are two types of timeout events in RLM: connection timeouts, and idle timeouts. Let’s dig into each of them a little bit deeper.

Connection Timeouts Time's Up

Connection timeouts occur when a client application takes too long to connect to one or more RLM license servers. Users can change the default connection timeout value from 10 seconds to as low as 5 seconds by setting an environment variable. If set to a negative value, the connect timeout will be its absolute value, and if any particular server connection times out, no further attempts will be made to that server. If set to a positive value, a connection will be attempted to the server even if it timed out on the last attempt. The latter example is the default behavior in RLM.

Skipping over License Servers

RLM also keeps track of which license servers in its license path list have an ISV’s server running on them. If either there is no ISV line for that ISV in a local license file, or an attempt is made to check out a license from a server and the RLM server returns a status indicating that this ISV is not present, then the server is flagged as not having that ISV server.

In a multi-server environment, it doesn’t make sense for an application to repeatedly attempt checkouts from servers that are known not to be serving its licenses. So, application developers may choose to “skip” these license servers. Note that by default, RLM will attempt all operations on all servers.

Idle Timeouts and Heartbeats

Most users want the license server to reclaim licenses from applications that become idle for too long. This ensures maximum utilization of floating (shared) license pools.

The RLM license server expects to hear from client applications periodically as a way for applications to tell the server that they are still active. Normally, this is done by sending “heartbeats” from clients to the server either automatically or under the direct control of the application itself.

Some software vendors may decide to inform the server that an interactive application is idle while waiting for user input. This allows the application’s license to be reclaimed by the server when the application waits too long for user input. When the user eventually “wakes up” the formerly idle application, it will attempt to reclaim any lost licenses from the server.

When licenses are timed out by the server, they are essentially checked back into the pool for use by others.  This event can be recorded in a server report log, if desired.

User Control of Idle Timeouts

An end-user can specify a TIMEOUT value for any idle license. If the license remains idle for this amount of time, the license server performs an automatic check-in of the license and informs the application (if it is still running).

Software vendors can set a MIN_TIMEOUT keyword in a license that specifies the lowest value that an end-user can set for the timeout value of a license. If not specified in the license, the RLM default minimum of 3600 seconds (1 hour) is used.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

How to License Server-based Software

Consider your options
The usual licensing strategy for server software is to lock it to a physical host. This provides some degree of protection from installing and running on multiple hosts, but it does not necessarily represent the optimal approach in terms of maximizing your revenue or customer satisfaction.

What’s missing?
First, there’s the notion of scaling. Do you really want to charge the same price for every site? You need some way to charge more when your software is used more.  Perhaps you can sell multiple node locked servers to larger sites, or even charge relative to the number of cores on the machines, the rationale being that there is the potential to get more use from machines with more horsepower.

Float your server licenses

If you want your customers to have the flexibility of installing and using your server on many machines without having to license them separately, perhaps you should use a floating license manager that ensures that no more than a predetermined number of concurrent server copies can run at the same time. With floating licensing, you issue a license key with a count, and lock only the license server, not each user node.

Size matters
Another approach could be licensing by some other scaled metric: how many records can be maintained in the database, a count of named users, etc.  Each of these metrics can be encoded into a license key, allowing the server software to know when it starts what level of service to enforce based on the license key scaling parameters. A single version of your software could then enforce the appropriate size limits on a site by site basis.

Using a license manager, such as RLM, could also give you even more control of how your software behaves within a virtual machine.  You could even license by platform or by the site’s timezone.

In any case, using a license manager gives you the freedom to change with your license policies.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website