【发布时间】:2019-12-06 22:32:08
【问题描述】:
我有自己的 TensorFlow 服务服务器,用于多个神经网络。现在我想估计它的负载。有人知道如何在 TensorFlow 服务中获取当前队列中的请求数吗?我尝试使用 Prometheus,但没有这样的选项。
【问题讨论】:
标签: python-3.x tensorflow prometheus tensorflow-serving
我有自己的 TensorFlow 服务服务器,用于多个神经网络。现在我想估计它的负载。有人知道如何在 TensorFlow 服务中获取当前队列中的请求数吗?我尝试使用 Prometheus,但没有这样的选项。
【问题讨论】:
标签: python-3.x tensorflow prometheus tensorflow-serving
实际上,tf serving 没有 requests queue ,这意味着如果请求太多,tf serving 不会对请求进行排序。
tf serving 唯一能做的就是在服务器初始化时分配一个线程池。
当请求到来时,tf serving 将使用一个未使用的线程来处理该请求,如果没有空闲线程,tf serving 将返回一个不可用的错误。客户端应该稍后重试。
你可以在 tensorflow_serving/batching/streaming_batch_schedulor.h 的 cmets 中找到这些信息
【讨论】:
更重要的是,你可以通过--rest_api_num_threads分配线程数或者让它为空并由tf serivng自动配置
【讨论】: