java - 是否存在线程安全的 statsd 客户端?

标签 java multithreading thread-safety graphite statsd

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

最佳答案

Java 客户端呢 StatsdClient.javaexamples directory ?他们在 Java 客户端实现中使用同步。在类评论中有一个用法示例:

StatsdClient client = new StatsdClient("statsd.example.com", 8125);
// increment by 1
client.increment("foo.bar.baz");
  1. increment(String) 委托(delegate)给
  2. increment(String, int) 委托(delegate)给
  3. increment(String, int, double) 生成要调用的字符串
  4. send(double, String...) 最后调用
  5. sendTo(String) 使用修饰符 synchronized

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

关于java - 是否存在线程安全的 statsd 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14485105/

相关文章:

java - 外键作为主键注释

java - 如何通过 Package.getPackage(...) 访问包?

c - 访问/更新共享内存位置的线程

multithreading - 在 QThread 中的 run() 方法内部声明与在 QThread 中声明为局部变量

java - 为什么我们要写Synchronized(ClassName.class)

java - 在Oracle SQL函数中将LocalDate.toEpochDay转换为 "yyyy-MM-dd"?

java - 获取 Google Drive API 的 OAuth 凭据

C++ IO/多路复用 TCP 服务器和 POSIX 线程

c# - IronPython/C# 脚本运行后无法重新打开串行端口

concurrency - Rust 中的进程隔离