Looking over the code, it's probably possible, I'm just not sure what the performance impact is for that style. From what I can see every metric update has to read and write quite a bit of data to disk.
On Mon, Jan 23, 2017 at 2:21 PM, Brian Brazil <brian.brazil@robustperception.io> wrote:On 23 January 2017 at 13:19, Ben Kochie <sup...@gmail.com> wrote:Julius and I have been working on ideas for dealing with Ruby/Rails apps that run in a multi-process mode. For example Passenger[0] or Unicorn[1].These worker processes can track metrics, but there's no good way to expose those metrics because they live behind a round-robin http proxy.The solutions I've seen so far has been to use statsd or influxdb push metrics to a local aggregation proxy exporter.Has anyone though about how to deal with Ruby multi-process?Any reason you can't take the same approach Python does?--Brian Brazil
Would this work on Windows?
Given the lock contention, what is the upper limit on throughput of a single machine?
--
You received this message because you are subscribed to the Google Groups "Prometheus Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to prometheus-devel...@googlegroups.com.
To post to this group, send email to prometheus...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/CABbyFmoVyyzBn3DuKw3%2BnM0tpwtJuYiG4w%3D5%2BbC-7SOYg%3D%3DWHA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Would this work on Windows?
Given the lock contention, what is the upper limit on throughput of a single machine?
On Mon, Jan 23, 2017, 14:43 Ben Kochie <sup...@gmail.com> wrote:
Yea, it's always going to be slower than a proper threaded implementation. But if it can be implemented similarly I think that would work.Of course, I'm no ruby expert. :)
On Mon, Jan 23, 2017 at 2:31 PM, Brian Brazil <brian.brazil@robustperception.io> wrote:On 23 January 2017 at 13:28, Ben Kochie <sup...@gmail.com> wrote:Looking over the code, it's probably possible, I'm just not sure what the performance impact is for that style. From what I can see every metric update has to read and write quite a bit of data to disk.It's mmaped with no fsync, so basically the same as RAM accesses. The primary cost in Python turn out to be the mutexes.BrianOn Mon, Jan 23, 2017 at 2:21 PM, Brian Brazil <brian.brazil@robustperception.io> wrote:On 23 January 2017 at 13:19, Ben Kochie <sup...@gmail.com> wrote:Julius and I have been working on ideas for dealing with Ruby/Rails apps that run in a multi-process mode. For example Passenger[0] or Unicorn[1].These worker processes can track metrics, but there's no good way to expose those metrics because they live behind a round-robin http proxy.The solutions I've seen so far has been to use statsd or influxdb push metrics to a local aggregation proxy exporter.Has anyone though about how to deal with Ruby multi-process?Any reason you can't take the same approach Python does?--Brian Brazil--Brian Brazil
--
You received this message because you are subscribed to the Google Groups "Prometheus Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to prometheus-developers+unsub...@googlegroups.com.
To post to this group, send email to prometheus-developers@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/CABbyFmoVyyzBn3DuKw3%2BnM0tpwtJuYiG4w%3D5%2BbC-7SOYg%3D%3DWHA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
On 24 January 2017 at 08:51, Matthias Rampke <m...@soundcloud.com> wrote:Would this work on Windows?
Why wouldn't it?Given the lock contention, what is the upper limit on throughput of a single machine?
For Python anyway, mutexes are relatively slow so you're limited to a few hundred thousand operations a second. If this were a problem I don't think you'd be using either Ruby or Python.
Brian
On Mon, Jan 23, 2017, 14:43 Ben Kochie <sup...@gmail.com> wrote:
Yea, it's always going to be slower than a proper threaded implementation. But if it can be implemented similarly I think that would work.Of course, I'm no ruby expert. :)
On Mon, Jan 23, 2017 at 2:31 PM, Brian Brazil <brian....@robustperception.io> wrote:On 23 January 2017 at 13:28, Ben Kochie <sup...@gmail.com> wrote:Looking over the code, it's probably possible, I'm just not sure what the performance impact is for that style. From what I can see every metric update has to read and write quite a bit of data to disk.It's mmaped with no fsync, so basically the same as RAM accesses. The primary cost in Python turn out to be the mutexes.BrianOn Mon, Jan 23, 2017 at 2:21 PM, Brian Brazil <brian....@robustperception.io> wrote:On 23 January 2017 at 13:19, Ben Kochie <sup...@gmail.com> wrote:Julius and I have been working on ideas for dealing with Ruby/Rails apps that run in a multi-process mode. For example Passenger[0] or Unicorn[1].These worker processes can track metrics, but there's no good way to expose those metrics because they live behind a round-robin http proxy.The solutions I've seen so far has been to use statsd or influxdb push metrics to a local aggregation proxy exporter.Has anyone though about how to deal with Ruby multi-process?Any reason you can't take the same approach Python does?--Brian Brazil--Brian Brazil
--
You received this message because you are subscribed to the Google Groups "Prometheus Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to prometheus-devel...@googlegroups.com.
To post to this group, send email to prometheus...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/CABbyFmoVyyzBn3DuKw3%2BnM0tpwtJuYiG4w%3D5%2BbC-7SOYg%3D%3DWHA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Prometheus Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to prometheus-devel...@googlegroups.com.
To post to this group, send email to prometheus...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/CAHJKeLrHpUBT%2B6cRS8e%2BBf7i0AUqh6nkQSc4OhL5S5Etc36a7g%40mail.gmail.com.