Apache ActiveMQ Artemis 分发了一个原生库,作为其快速日志在 Apache ActiveMQ Artemis 和 Linux libaio 之间的桥梁。
libaio
是一个库,作为 Linux 内核项目的一部分开发。使用 libaio
,我们将写入提交到操作系统,在那里它们被异步处理。一段时间后,操作系统将在它们完成处理时调用我们的代码。
如果配置为这样做,我们在我们的高性能日志中使用它,请参见 持久性。
这些是 Apache ActiveMQ Artemis 分发的原生库
-
libartemis-native-64.so - x86 64 位
-
我们在 2017 年初之前发布了 32 位版本。虽然它不再在发行版中提供,但如果需要,仍然可以编译到 32 位环境。
当使用 libaio 时,Apache ActiveMQ Artemis 将始终尝试加载这些文件,只要它们在 库路径 中。
1. 运行时依赖
如果你只想使用提供的原生二进制文件,你需要安装所需的 libaio 依赖。
你可以使用以下步骤以 root 用户身份安装 libaio
使用 yum,(例如,在 Fedora 或 Red Hat Enterprise Linux 上)
yum install libaio
使用 aptitude,(例如,在 Ubuntu 或 Debian 系统上)
apt-get install libaio1
2. 编译原生库
如果你在除了 x86_32 或 x86_64 之外的平台上使用 Linux(例如 Itanium 64 位或 IBM Power),你可能需要编译原生库,因为我们没有为那些平台发行二进制文件。
3. 编译依赖
原生层仅在 Linux 上可用。如果你在除了 Linux 之外的平台上,原生编译将无法工作 |
这些是在 Linux 上编译所需的软件包
-
gcc - C 编译器
-
gcc-c++ 或 g++ - gcc 的扩展,支持 C++
-
libtool - 用于链接编辑原生库的工具
-
libaio - 用于磁盘异步 IO 内核函数的库
-
libaio-dev - 用于 libaio 的编译支持
-
cmake
-
已安装的完整 JDK,并将环境变量 JAVA_HOME 设置为其位置
要在 RHEL 或 Fedora 上执行此安装,你只需在命令行中键入以下内容
sudo yum install libtool gcc-c++ gcc libaio libaio-devel cmake
或者在 Debian 系统上
sudo apt-get install libtool gcc-g++ gcc libaio libaio- cmake
根据版本和 Linux 发行版,你可能会发现软件包名称略有不同。(例如,Fedora 上的 gcc-c++ 与 Debian 系统上的 g++) |