【问题标题】:Does a thread-safe statsd client exist?是否存在线程安全的 statsd 客户端?
【发布时间】:2013-01-23 16:56:16
【问题描述】:

我需要在 Web 应用程序中使用线程安全的statsd 客户端来监视用户线程的统计信息。请提出一个既线程安全又不影响性能的解决方案。

【问题讨论】:

    标签: java multithreading thread-safety graphite statsd


    【解决方案1】:

    examples directory 中的 Java 客户端 StatsdClient.java 怎么样?他们在 Java 客户端实现中使用同步。类注释中有一个用法示例:

    StatsdClient client = new StatsdClient("statsd.example.com", 8125);
    // increment by 1
    client.increment("foo.bar.baz");
    
    1. increment(String) 代表
    2. increment(String, int) 代表
    3. increment(String, int, double) 生成要调用的字符串
    4. send(double, String...) 终于调用了
    5. sendTo(String) 使用修饰符 synchronized

    这也适用于此类中的其他方法。 诚然,将所有相关方法声明为 synchronized 并不构成线程安全类。但我相信 Etsy 在这里考虑到了这一点并做到了这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-02
      • 2012-08-14
      • 2019-03-20
      • 2022-01-16
      • 2011-05-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多