【问题标题】:Which additional libraries are required for client compression?客户端压缩需要哪些额外的库?
【发布时间】:2015-04-29 23:06:55
【问题描述】:

Datastax Java 驱动程序支持使用snappy and LZ4 的客户端节点连接压缩。启动 Java 驱动程序时会声明

WARN  [2015-04-28 16:13:59,906] com.datastax.driver.core.FrameCompressor: Cannot find LZ4 class, you should make sure the LZ4 library is in the classpath if you intend to use it. LZ4 compression will not be available for the protocol.

两个问题:

  1. 上述日志消息中的驱动程序指的是哪个“LZ4 库”?可能有 Maven 回购吗?
  2. 我注意到驱动程序pom.xml 不依赖于任何 snappy 库。这是编译到库中的吗?或者类加载器中是否需要提供外部库?

【问题讨论】:

标签: datastax-java-driver


【解决方案1】:

压缩库在driver-core POM中定义。

请注意,它们是可选的。这个想法是不需要压缩的用户不必拖动额外的依赖项。如果您使用 LZ4 或 Snappy,则需要在您自己的 POM(或等效项)中声明对相关库的显式依赖。

警告消息只是说明 LZ4 库不在类路径中,如果您不打算使用 LZ4,这完全没问题。事实上,这个警告有点为时过早,我们应该只在有人尝试使用压缩时检查库的存在,而这正是 JAVA-697 的创建目的。它将在驱动程序的下一版本中提供。

【讨论】:

    猜你喜欢
    • 2012-10-26
    • 2011-03-09
    • 2011-05-06
    • 1970-01-01
    • 2020-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-05
    相关资源
    最近更新 更多