Supported Environments

The PubSub+ Messaging APIs are compatible with the following environments. Each environment that supports client connections to the event broker using Transport Layer Security (TLS) / Secure Sockets Layer (SSL) encryption is indicated. When the term TLS/SSL is used in this documentation, it refers to these forms of data encryption.

The following sections describe the supported environments for each PubSub+ Messaging API:

Depending on the PubSub+ Messaging APIs:

  • Support for different Transport Layer Security versions vary for each API. The versions available are TLS 1.0, TLS 1.1, and TLS 1.2 . The recommended version to use is the most recent version of TLS.
  • Secure Socket Layer (SSL) protocol version support varies for each API. We don't recommend that you use SSL unless it's required for backwards compatibility.

Most PubSub+ Messaging APIs support various Linux environments for desktops and servers, but do not support Alpine Linux. Alpine Linux is built with musl-c, which is typically used for containerized environments or microcontroller devices.  PubSub+ Messaging APIs are built with glibc, which are typically used for Linux ( both desktop and server) environments. See the PubSub+ Messaging API to determine whether Alpine Linux (musl-c)  is supported.

PubSub+ Java API

For more information about the supported environments for the PubSub+ Messaging API for Java, see Supported Environments in the Developer's Guide for the PubSub+ Message API for Java.

PubSub+ Java RTO API

The PubSub+ Messaging API for Java RTO is compatible and supported with any version of the Java Development Kit (JDK) that is in active support and also has security update support. For information about supported versions of the JDK, see https://www.oracle.com/java/technologies/java-se-support-roadmap.html. For newer JDK releases, additional time is required to update the PubSub+ Messaging API for Java RTO. The PubSub+ Java RTO API is compatible with the following environments:

  • Linux variants(x86/x86_64)  that are in active support and also have security update support
    • supports TLS/SSL connections
  • macOS [x86_64 versions and ARM (M-Series processors)]
    • supports TLS/SSL connections
  • Windows 10 operating system (32-bit and 64-bit versions),
    • supports TLS/SSL connections

Your JVM and Java RTO architecture must be both 32-bit or both 64-bit.

The Java RTO API can be retrieved using Maven (pom.xml) or Gradle (build.gradle).

For example, using Maven:

<dependencies>
  <dependency>
    <groupId>com.solacesystems</groupId>
    <artifactId>solclientj</artifactId>
    <version>10.6.0</version>
    <type>pom</type>
  </dependency>
</dependencies>			

Using Gradle:

...
...
dependencies {
// Solace Messaging API for Java RTO Dependencies
implementation group: 'com.solacesystems', name: 'solclientj', version: '10.6.0'
...
}

PubSub+ JCSMP API

  • The PubSub+ Messaging API for JCSMP is compatible and supported with any version of the Java Development Kit (JDK) that is in active support and also has security update support. For information about supported versions of the JDK, see https://www.oracle.com/java/technologies/java-se-support-roadmap.html. For newer JDK releases, additional time is required to update the PubSub+ Messaging API for JCSMP.
  • Java 1.8 or later is required to use TLS/SSL connections to the event broker.
  • JCSMP  API includes a sample Ant build script (build.xml) with the sample applications that shows how to add the PubSub+ Messaging APIs libraries to the CLASSPATH during the compiler invocation. Ensure that the CLASSPATH set when invoking the javac compiler includes all the .jar files in the JCSMP  lib directory. For information on Apache Ant, refer to http://ant.apache.org.
  • OSGi support—The JCSMP sol-jcsmp JAR file includes metadata conforming to the OSGi standards and can be deployed as an OSGi bundle.

PubSub+ C API

Support for Solaris/SunOS is now deprecated and the last release was v7.23.0 (September 2022). For more details, see the Deprecated Features list on the Product Lifecycle Policy page.

The Solace PubSub+ Messaging API for C, version 7.28.0 is compatible with the following environments:

  • AIX 6 PowerPC (64-bit), supports TLS/SSL connections
  • Linux (x86/x86_64) variants that are in active support and also have security update support. Compatible with glibc 2.17 and later (desktop/server) and musl-c 1.2 and later (Alpine Linux)
    • supports TLS/SSL connections
  • Linux (ARM) variants (linux-arm64) that are in active support and also have security update support
    • Compatible with glibc 2.17 and later (desktop/server) only
    • supports TLS/SSL connections
  • macOS [x86_64 and ARM (M-Series processors)] 
    • supports TLS/SSL connections
  • SunOS10-i386 (32-bit)
    • compatible with glibc 2.17 and later
  • SunOS10-x86 (64-bit)
    • compatible with glibc 2.17 and later
  • SunOS10-sparc (32-bit and 64-bit versions)
    • compatible with glibc 2.17 and later
  • SUSE Linux PowerPC (Big Endian) (64-bit)
    • supports TLS/SSL connections
  • Windows 10 operating system (32-bit and 64-bit versions), for Microsoft Visual Studio 2015 and later
    • supports TLS/SSL connections
  • iOS 7.1 (ARMv7, ARMv7s, ARM64, i386 and x86_64), for Xcode 5.1 and later
    • supports TLS/SSL connections
  • iOS 8 (ARM v8, ARMv7, ARMv7s, ARM64, i386 and x86_64), for Xcode 6.0 and later
    • supports TLS/SSL connections
  • OpenVMS 8.4-2 and later (64-bit version only, Itanium processors). The C API for OpenVMS supports the same features as the C API for Linux, with the following limitations:
    • 64-bit version only (no support for 32-bit version)
    • Itanium processors only (no support for Alpha processors)
    • Provided as a VMS shared library only (no support for static linking)
    • No support for Kerberos
    • No support for IPC

The OpenSSL binaries bundled with the SDK are provided for developer convenience only. Do not deploy them in production environments.

  • CCSMP versions up to 7.10 require OpenSSL 1.0 binaries.
  • CCSMP versions from 7.11-7.24 support both OpenSSL 1.0 and OpenSSL 1.1 binaries
  • CCSMP versions 7.25+ support OpenSSL 1.0, OpenSSL 1.1, and OpenSSL 3.0 binaries
  • CCSMP versions 7.11+ support TLS SNI (Server Name Indication).

PubSub+ Go API

For more information about the supported environments for the SolacePubSub+ Messaging API for Java, seeSupported Environments in the Developer's Guide for the PubSub+ Message API for Go.

PubSub+ .NET API

The PubSub+ Messaging API for .NET is compatible and supported with any version of the .NET framework that is in active support and also has security update support. For information about supported versions of .NET, see https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core. For newer .NET releases, additional time is required to update the PubSub+ Messaging API for .NET. The PubSub+ .NET API, version 10.23 is compatible with the following platforms:

  • Windows 10 operating system (32-bit and 64-bit versions), for Microsoft Visual Studio 2015 and later
    • supports TLS/SSL connections
  • .NET Core support is as follows:

    • Windows
    • macOS [x86_64 versions and ARM (M-Series processors)]
    • Linux (x86/x86_64) variants that are in active support and also have security update support.
      • Compatible with glibc 2.17 and later (desktop/server) and musl-c 1.2 (Alpine Linux)

The PubSub+ Messaging API for .NET supports:

  • .NET Framework 4.6.2 and later
  • .NET 6.0
  • .NET Standard 2.0 and later

PubSub+ Javascript API

The Solace PubSub+ Messaging API for JavaScript, version 10.15 has been tested to work in the latest version of modern Web browsers such as Google Chrome, Safari, Firefox, Edge, and Internet Explorer. Other web and mobile browsers may also work properly, but they have not been verified. They have also not been verified to work with specific JavaScript frameworks, however, they should be fully compatible and work with these frameworks without problems.

Some API features are not available in all Web browsers. For example, web sockets support is not available in all versions of Internet Explorer (in this case, the API falls back on a transport protocol that is supported by the browser in use.)

The JavaScript Messaging API does not support Internet Explorer 11's Enterprise Mode—a compatibility mode that renders websites with a modified browser configuration to emulate Internet Explorer 7 or 8. To use applications developed with the JavaScript Messaging API in Internet Explorer 11, Enterprise Mode must be disabled.

PubSub+ NodeJS API

The Solace PubSub+ Messaging API for Node.js, version 10.15 supports the actively maintained Node.js LTS release lines.

PubSub+ Python API

The PubSub+ Messaging API for Python is compatible and supported with any version of Python that is in active support and also has security update support. For information about supported versions of Python, see https://devguide.python.org/versions/. For newer Python releases, additional time is required to update the PubSub+ Python API. The PubSub+ Python API is compatible with the following platforms:

  • Windows 10 (32-bit and 64-bit versions)
  • Linux variants (x86_64) that are in active support and also have security update support
    • includes Debian-based (Ubuntu) and CentOS/RHEL-based (Red Hat Linux, CentOS) distributions
  • macOS 10.15 and later (x86_64 versions)