如何通过 Clojure 使用 JClouds 和 Rackspace 启用 CDN?

Posted

技术标签:

【中文标题】如何通过 Clojure 使用 JClouds 和 Rackspace 启用 CDN?【英文标题】:How to enable CDN with JClouds and Rackspace via Clojure? 【发布时间】:2013-09-09 10:22:10 【问题描述】:

我正在尝试通过 Clojure 使用 JCLouds,并希望使用 blobstore 抽象来创建容器,然后在这些容器上启用 CDN 服务。到目前为止,我还没有取得太大的成功。

我不是 Java 程序员,所以我不太确定如何处理这个问题,但看起来 there is a method 确实可以满足我的需要。也就是说,我不确定如何将其与 org.jclouds.blobstore2 一起使用。

在 Clojure 中实现这一目标的最佳方法是什么?

【问题讨论】:

希望对您有所帮助clojure.org/java_interop 我可能应该提到我熟悉并在我的程序中使用 Java 互操作。但是我不清楚在blobstore2 的上下文中在哪里使用链接方法。 【参考方案1】:

事实证明,通过一个 Java 示例,我能够在 Clojure 中找出正确的代码路径:

(defn- enable-cdn [bs container]
  (->
    (blobstore/blobstore-context bs)
    .unwrap
    .getApi
    (.enableCDN container)))

这将为提供有效 blobstore 实例的给定容器启用 CDN。也许这会在一段时间后拯救其他人。

【讨论】:

以上是关于如何通过 Clojure 使用 JClouds 和 Rackspace 启用 CDN?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Jclouds 1.7 访问本机提供程序 API

如何使用 Apache jclouds 访问 HP Helion

如何在 jclouds 中启用 s3 路径样式访问

jclouds:如何更新现有 blob 的元数据?

Rackspace 云文件(使用 jclouds) - 如何获取容器位置

如何使用 JClouds-Chef 指定客户端版本?