[
https://issues.apache.org/jira/browse/MESOS-10057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17050993#comment-17050993
]
Andrei Sekretenko edited comment on MESOS-10057 at 3/4/20, 8:32 AM:
--------------------------------------------------------------------
{noformat}
commit 54227a33b68d83b97ef1a7c14283351d45322317
Author: Andrei Sekretenko <[email protected]>
Date: Fri Feb 28 22:39:54 2020 +0100
Got rid of passing Shared<> into `Subscribers::Subscriber::send(...)`.
Now that operator API events are authorized synchronously,
`Subscribers::Subscriber::send(...)` is no longer deferred,
and copying arguments of `Subscribers::send()` into `Shared`
becomes unnecessary.
Review: https://reviews.apache.org/r/72179
commit f2a0eace106692860d1df3c282481f9855d3d629
Author: Andrei Sekretenko <[email protected]>
Date: Thu Feb 27 21:06:21 2020 +0100
Converted sending operator API events to synchronous authorization.
Now that `ObjectApprovers` are indefinitely valid, we can store
them in each Subscriber for its whole lifetime, instead of creating
them for each event sent to each subscriber.
Review: https://reviews.apache.org/r/72178
{noformat}
was (Author: asekretenko):
{noformat}
commit 54227a33b68d83b97ef1a7c14283351d45322317 (HEAD -> master, origin/master,
origin/HEAD, mesos-write-through-github/master, ci/ci/asekretenko/MESOS-10057,
ci/asekretenko/MESOS-10057)
Author: Andrei Sekretenko <[email protected]>
Date: Fri Feb 28 22:39:54 2020 +0100
Got rid of passing Shared<> into `Subscribers::Subscriber::send(...)`.
Now that operator API events are authorized synchronously,
`Subscribers::Subscriber::send(...)` is no longer deferred,
and copying arguments of `Subscribers::send()` into `Shared`
becomes unnecessary.
Review: https://reviews.apache.org/r/72179
commit f2a0eace106692860d1df3c282481f9855d3d629
Author: Andrei Sekretenko <[email protected]>
Date: Thu Feb 27 21:06:21 2020 +0100
Converted sending operator API events to synchronous authorization.
Now that `ObjectApprovers` are indefinitely valid, we can store
them in each Subscriber for its whole lifetime, instead of creating
them for each event sent to each subscriber.
Review: https://reviews.apache.org/r/72178
{noformat}
> Perform synchronous authorization for outgoing events on event stream.
> ----------------------------------------------------------------------
>
> Key: MESOS-10057
> URL: https://issues.apache.org/jira/browse/MESOS-10057
> Project: Mesos
> Issue Type: Improvement
> Components: master
> Reporter: Benjamin Mahler
> Assignee: Andrei Sekretenko
> Priority: Major
> Fix For: 1.10.0
>
>
> The master event stream outgoing message authorization becomes very expensive
> for a large number of subscribers (cc [~greggomann]).
> Instead of asynchronously obtaining object approvers for every event
> multiplied by every subscriber, we can instead always hold on to valid object
> approvers so that we could synchronously (and cheaply) authorize the outgoing
> events. These object approvers would be kept up to date in the background,
> and if authorization fails to keep them up to date, we would treat that the
> same as an authorization failure is currently treated.
> This should improve the performance dramatically.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)