跳到主要内容

支持的环境

PubSub+ 消息 API 与许多不同的操作系统和平台兼容。

下表总结了每个 PubSub+ 消息 API 支持的主要操作系统和环境。有关每个 API 支持的操作系统和平台的完整列表,请参阅以下部分:

操作系统平台Java1Java RTO1JCSMP1CGo.NETJavaScript2Node.js3Python
Windowsx86/x86_64img
macOSx86_64
ARM (M-Series)10.6+7.25.0+1.3+10.23+1.7+
Linuxx867.13.0+
x86_64
ARMimg7.25.0+1.4+10.24+1.8+
Alpine Linuxx86_647.23.0+1.1+img
10.21+1.9+

1Java、Java RTO 和 JCSMP 需要任何处于活跃支持状态的 Java 开发工具包(JDK)版本,适用于平台和操作系统。PubSub+ JCSMP API 的 10.23 及更高版本依赖于最新支持版本的 Netty 库作为依赖项。有关 Netty 的更多信息,请参阅 netty.io。

2JavaScript 适用于一些浏览器。移动浏览器未经验证。有关更多信息,请参阅 PubSub+ Javascript API。

3Node.js 版本 10.15 支持处于活跃维护状态的 Node.js LTS 发行版。

以下部分描述了每个 PubSub+ 消息 API 支持的环境:

  • PubSub+ Java API
  • PubSub+ Java RTO API
  • PubSub+ JCSMP API
  • PubSub+ C API
  • PubSub+ Go API
  • PubSub+ .NET API
  • PubSub+ Javascript API
  • PubSub+ Node.js API
  • PubSub+ Python API

每个支持使用传输层安全(TLS)/安全套接字层(SSL)加密连接到事件代理的客户端连接环境都已标明。在本文档中使用术语 TLS/SSL 时,它指的是这些数据加密形式。根据 PubSub+ 消息 API:

  • 不同的传输层安全版本对每个 API 的支持各不相同。可用的版本有 TLS 1.0、TLS 1.1 和 TLS 1.2。推荐使用最新版本的 TLS。
  • 安全套接字层(SSL)协议版本支持对每个 API 各不相同。除非需要向后兼容,否则不推荐使用 SSL。

大多数 PubSub+ 消息 API 支持各种桌面和服务器的 Linux 环境,但不支持 Alpine Linux。Alpine Linux 使用 musl-c 构建,通常用于容器化环境或微控制器设备。PubSub+ 消息 API 使用 glibc 构建,通常用于 Linux(桌面和服务器)环境。请参阅本页的适当 API 部分,以确定是否支持 Alpine Linux(musl-c)。

PubSub+ Java API

有关 PubSub+ Java 消息 API 支持环境的更多信息,请参阅 PubSub+ Java API 开发者指南中的 PubSub+ Java API 支持环境。

PubSub+ Java RTO API

PubSub+ Java RTO 消息 API 与任何处于活跃支持状态且具有安全更新支持的 Oracle JDK 或 OpenJDK 版本兼容并受支持。有关支持版本的信息,请参阅 Oracle Java SE 支持路线图。PubSub+ Java RTO API 与以下系统兼容:

  • 处于活跃支持状态且具有安全更新支持的 Linux 变体(x86/x86_64)
    • 兼容 glibc 2.17 及更高版本(桌面/服务器)
    • 支持 TLS/SSL 连接
  • 处于活跃支持状态且具有安全更新支持的 macOS [x86_64 版本和 ARM(M-Series 处理器)]
    • 支持 TLS/SSL 连接
  • 处于活跃支持状态且具有安全更新支持的 Windows(x86/x86_64)
    • 支持 TLS/SSL 连接

PubSub+ Java RTO API 仅为开发者便利捆绑 OpenSSL 库,这些库不适合生产环境。OpenSSL 二进制文件捆绑在以下版本中:

  • 对于 macOS 和 Windows,所有版本的 PubSub+ Java RTO API
  • 对于 Linux,PubSub+ Java RTO API 的 10.7 及更早版本

您的 JVM 和 Java RTO 架构必须都是 32 位或都是 64 位。

可以使用 Maven (pom.xml) 或 Gradle (build.gradle) 获取 Java RTO API。

例如,使用 Maven:

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

使用 Gradle:

...
...
dependencies {
//PubSub+ 消息 API 依赖项
implementation group: 'com.solacesystems', name: 'solclientj', version: '10.8.0'
...
}

PubSub+ JCSMP API

  • PubSub+ JCSMP 消息 API 与任何处于活跃支持状态且具有安全更新支持的 Oracle JDK 或 OpenJDK 版本兼容并受支持。有关支持版本的信息,请参阅 Oracle Java SE 支持路线图。

  • 使用 TLS/SSL 连接到事件代理需要 Java 1.8 或更高版本。

  • PubSub+ JCSMP API 的 10.23 及更高版本依赖于最新支持版本的 Netty 库作为依赖项。有关 Netty 的更多信息,请参阅 https://netty.io。

  • PubSub+ JCSMP API 包含一个示例 Ant 构建脚本(build.xml),其中包含示例应用程序,展示了如何在编译器调用期间将 PubSub+ 消息 API 库添加到 CLASSPATH

    • 确保在调用 javac 编译器时设置的 CLASSPATH 包含 JCSMP lib 目录中的所有 .jar 文件。 有关 Apache Ant 的信息,请参阅 http://ant.apache.org。
  • OSGi 支持 — JCSMP(sol-jcsmp)JAR 文件包含符合 OSGi 标准的元数据,可以作为 OSGi 捆部署。

PubSub+ C API

对 Solaris/SunOS 的支持现已弃用,最后一个版本是 v7.23.0(2022 年 9 月)。有关详细信息,请参阅产品生命周期政策页面上的已弃用功能列表。

PubSub+ C 消息 API,版本 7.31.0 与以下系统兼容:

  • AIX 6 PowerPC(64 位),支持 TLS/SSL 连接
  • 处于活跃支持状态且具有安全更新支持的 Linux(x86/x86_64)变体。兼容 glibc 2.17 及更高版本(桌面/服务器)和 musl-c 1.2 及更高版本(Alpine Linux)
    • 支持 TLS/SSL 连接
  • 处于活跃支持状态且具有安全更新支持的 Linux(ARM)变体(linux-arm64
    • 仅兼容 glibc 2.17 及更高版本(桌面/服务器)
    • 支持 TLS/SSL 连接
  • macOS [x86_64 和 ARM(M-Series 处理器)]
    • 支持 TLS/SSL 连接
  • SunOS10-i386(32 位)
    • 兼容 glibc 2.17 及更高版本
  • SunOS10-x86(64 位)
    • 兼容 glibc 2.17 及更高版本
  • SunOS10-sparc(32 位和 64 位版本)
    • 兼容 glibc 2.17 及更高版本
  • SUSE Linux PowerPC(Big Endian)(64 位)
    • 支持 TLS/SSL 连接
  • 处于活跃支持状态且具有安全更新支持的 Windows(32 位和 64 位版本),使用 Microsoft Visual Studio 2015 及更高版本
    • 支持 TLS/SSL 连接
  • iOS 7.1(ARMv7、ARMv7s、ARM64、i386 和 x86_64),适用于 Xcode 5.1 及更高版本
    • 支持 TLS/SSL 连接
  • iOS 8(ARM v8、ARMv7、ARMv7s、ARM64、i386 和 x86_64),适用于 Xcode 6.0 及更高版本
    • 支持 TLS/SSL 连接
  • OpenVMS 8.4-2 及更高版本(仅 64 位版本,Itanium 处理器)。OpenVMS 的 C API 支持与 Linux 的 C API 相同的功能,但有以下限制:
    • 仅支持 64 位版本(不支持 32 位版本)
    • 仅支持 Itanium 处理器(不支持 Alpha 处理器)
    • 仅提供为 VMS 共享库(不支持静态链接)
    • 不支持 Kerberos
    • 不支持 IPC

捆绑在 PubSub+ C API 的 Windows 和 macOS 发行版中的 OpenSSL 二进制文件仅提供给开发者使用。不要在生产环境中部署来自 PubSub+ C API 的 OpenSSL 二进制文件。PubSub+ C API 的 Linux 发行版不捆绑 OpenSSL 二进制文件。对 OpenSSL 的支持如下:

  • 7.12-7.24 版本同时支持 OpenSSL 1.0 和 OpenSSL 1.1 二进制文件。

  • 7.25 及更高版本支持 OpenSSL 3.0(推荐)。可以使用 OpenSSL 1.0 和 1.1,但 OpenSSL 不支持这些版本。请参阅您的操作系统文档,以确定旧版本是否安全并受支持。

  • 7.12 及更高版本支持 TLS SNI(服务器名称指示)。

PubSub+ Go API

有关 PubSub+ Go 消息 API 支持环境的更多信息,请参阅 PubSub+ Go API 开发者指南中的支持环境。

PubSub+ .NET API

PubSub+ .NET 消息 API 与任何处于活跃支持状态且具有安全更新支持的 .NET 框架版本兼容并受支持。有关支持的 .NET 版本的信息,请参阅 https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core。PubSub+ .NET API,版本 10.27 与以下平台兼容:

  • 处于活跃支持状态且具有安全更新支持的 Windows(32 位和 64 位版本)。
    • 支持 TLS/SSL 连接
  • .NET Core 支持如下:
    • Windows
    • macOS [x86_64 版本和 ARM(M-Series 处理器)]
    • 处于活跃支持状态且具有安全更新支持的 Linux(x86/x86_64)变体。
      • 兼容 glibc 2.17 及更高版本(桌面/服务器)和 musl-c 1.2(Alpine Linux)
    • 处于活跃支持状态且具有安全更新支持的 Linux(ARM)变体。
      • 兼容 glibc 2.17 及更高版本(桌面/服务器)

PubSub+ .NET 消息 API 支持:

  • .NET Framework 4.6.2 及更高版本
  • .NET 6.0
  • .NET 8.0
  • .NET Standard 2.0 及更高版本

PubSub+ .NET 消息 API 支持以下 Visual Studio 版本:

  • Windows
    • Visual Studio 2022
    • Visual Studio 2019
    • Visual Studio 2017,版本 15.3 及更高版本
    • Visual Studio 2015,需要 NuGet 3.6 及更高版本
  • macOS
    • Visual Studio for Mac,版本 7.1 及更高版本

PubSub+ .NET API 仅为开发者便利捆绑 OpenSSL 库,这些库不适合生产环境。OpenSSL 二进制文件捆绑在以下版本中:

  • 对于 macOS 和 Windows,所有版本的 PubSub+ .NET API
  • 对于 Linux,PubSub+ .NET API 的 10.24 及更早版本

PubSub+ Javascript API

PubSub+ Javascript 消息 API,版本 10.17,已在最新版本的现代网络浏览器中进行了测试,如 Google Chrome、Safari、Firefox、Edge 和 Internet Explorer。其他网络和移动浏览器也可能正常工作,但未经验证。它们也未经验证与特定 JavaScript 框架一起使用,然而,它们应该完全兼容并且可以与这些框架一起使用而不会出现问题。

并非所有 Web 浏览器都支持一些 API 功能。例如,并非所有版本的 Internet Explorer 都支持 WebSocket(在这种情况下,API 会回退到浏览器支持的传输协议)。

PubSub+ Javascript 消息 API 不支持 Internet Explorer 11 的企业模式——一种以修改后的浏览器配置呈现网站的兼容性模式,以模拟 Internet Explorer 7 或 8。要在 Internet Explorer 11 中使用使用 JavaScript 消息 API 开发的应用程序,必须禁用企业模式。

PubSub+ Node.js API

PubSub+ Node.js 消息 API,版本 10.17 及更高版本,支持处于活跃维护状态的 Node.js LTS 发行版。

PubSub+ Python API

有关 PubSub+ Python 消息 API 支持环境的更多信息,请参阅 PubSub+ Python API 开发者指南中的 PubSub+ Python API 支持环境。