You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Andrei Sekretenko (Jira)" <ji...@apache.org> on 2020/03/04 08:33:00 UTC

[jira] [Comment Edited] (MESOS-10057) Perform synchronous authorization for outgoing events on event stream.

    [ 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 <as...@apache.org>
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 <as...@apache.org>
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 <as...@apache.org>
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 <as...@apache.org>
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)