当前位置: 首页 > 软件库 > Web应用开发 > 网站API >

hbc

Streaming API 的 Java 客户端
授权协议 Apache
开发语言 Java
所属分类 Web应用开发、 网站API
软件类型 开源软件
地区 不详
投 递 者 公冶俊达
操作系统 跨平台
开源组织 Twitter
适用人群 未知
 软件概览

hbc (Hosebird Client)是Twitter Streaming API 的 Java 客户端开发包。

主要特性:

  • 支持GZip、OAuth和分块(partitioning);

  • 自动重新连接,并进行适当的backfill计数;

  • 访问原始字节的有效负载;

  • 适时重新分配,并进行相关统计。

包含了2个主要模块:

  • hbc-core:该模块使用了一个简单的消息队列,用户可以轮询消息。

  • hbc-twitter4j:该模块允许开发者在消息队列中使用Twitter4J项目和它的数据模型,以提供一个分析层。

示例代码:

ClientBuilder builder = new ClientBuilder()
  .name("Hosebird-Client-01")                              // optional: mainly for the logs
  .hosts(hosebirdHosts)
  .authentication(hosebirdAuth)
  .endpoint(hosebirdEndpoint)
  .processor(new StringDelimitedProcessor(msgQueue))
  .eventMessageQueue(eventQueue);                          // optional: use this if you want to process client events

Client hosebirdClient = builder.build();
// Attempts to establish a connection.
hosebirdClient.connect();

// on a different thread, or multiple different threads....
while (!client.isDone()) {
  String msg = msgQueue.take();
  something(msg);
  profit();
}

hosebirdClient.shutdown();

 

 

 相关资料
  • 我想在一些计算机之间建立点对点连接,这样用户就可以在没有外部服务器的情况下聊天和交换文件。我最初的想法如下: 我在服务器上制作了一个中央服务器插座,所有应用程序都可以连接到该插座。此ServerSocket跟踪已连接的套接字(客户端),并将新连接的客户端的IP和端口提供给所有其他客户端。每个客户端都会创建一个新的ServerSocket,所有客户端都可以连接到它。 换句话说:每个客户端都有一个Se

  • 我正在尝试重建一个与elasticsearch 2.4对话的插件,以便与elasticsearch 5配合使用。 代码来自:https://github.com/pentaho/pentaho-kettle/blob/master/plugins/elasticsearch-bulk-insert/src/org/pentaho/di/trans/steps/elasticsearchbulk/E

  • 问题内容: 我最近开始使用Cassandra数据库。现在,我正在评估我们应该前进的方向。 我看到过很多关于使用哪个客户端作为Cassandra的文章,但没有一个有明确的答案。 我的团队已要求我对此进行一些研究,并针对Java中的每个问题提出一些建议。 正如我提到的那样,我最近参与其中的原因还不是很清楚,为什么某些人选择,为什么某些人与其他客户一起去。 我了解每个Cassandra客户端的简要信息,

  • 问题内容: 是否有适用于Java的Socket.IO客户端?到目前为止,我只找到了仅适用于JavaScript的官方Socket.IO客户端和仅作为服务器的socket.io- java。 问题答案: 目前的选项有限: http://code.google.com/p/weberknecht/ https://github.com/TooTallNate/Java-WebSocket https:

  • 问题内容: 哪个是最好的Java Memcached客户端,为什么? 问题答案: 作为spymemcached的作者,我有些偏颇,但是我说这是我的,原因如下: 从头开始设计,以尽可能地不受阻碍。 当您请求数据,发布数据集等时,会有一个微小的并发队列插入,并且您会得到一个Future来阻止结果(使用一些便捷方法来处理诸如get之类的常见情况)。 积极优化 您可以在我的优化页面上阅读更多信息,但是我会

  • 我正在尝试使用RMI客户机-服务器通信。我编写了以下类/接口: > 接口远程接口扩展远程 类HelloStub扩展UnicastRemoteObject实现远程接口 类服务器,我绑定了远程obj 将客户端分类如下: 我不明白为什么我必须使用interface RemoteInterface进行查找?我不能使用HelloSub类吗,它是真正的远程obj? 谢谢,再见。

  • 问题内容: 有了JSR 311及其实现,我们有了一个强大的标准,可以通过REST公开Java对象。但是,在客户端,似乎缺少与SOAP的Apache Axis类似的东西-隐藏了Web服务并将数据透明地封送回Java对象的东西。 您如何创建Java RESTful客户端?使用HTTPConnection和手动解析结果?还是专业客户(例如Jersey或Apache CXR)? 问题答案: 这是一个古老的

  • 在尝试设置一个简单的AndroidDriver时,我得到了一个。 所需的代码如下- Appium Java客户机版本是6.1.0。 我得到的异常如下所示- 在io.appium.java_client.android.androiddriver.getcapabilities(androiddriver.java:209)在org.openqa.selenium.remote.remoteWebd