You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Benjamin Mahler (JIRA)" <ji...@apache.org> on 2018/01/17 19:10:00 UTC
[jira] [Commented] (MESOS-8344) Improve JSON v1 operator API
performance.
[ https://issues.apache.org/jira/browse/MESOS-8344?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16329232#comment-16329232 ]
Benjamin Mahler commented on MESOS-8344:
----------------------------------------
Improvements were made via MESOS-8455 and the use of jsonify:
{noformat}
commit aded41aecb5aab988313689c2b0664b86d45eb1f
Author: Meng Zhu <mz...@mesosphere.io>
Date: Tue Jan 16 17:08:05 2018 -0800
Used jsonify in http serialization for better performance.
This change avoids building an in-memory JSON::Object in favor
of using jsonify to directly output the serialized JSON from
the protobuf.
Review: https://reviews.apache.org/r/65063/
{noformat}
> Improve JSON v1 operator API performance.
> -----------------------------------------
>
> Key: MESOS-8344
> URL: https://issues.apache.org/jira/browse/MESOS-8344
> Project: Mesos
> Issue Type: Bug
> Components: HTTP API
> Reporter: Benjamin Mahler
> Assignee: Meng Zhu
> Priority: Major
> Labels: performance
>
> According to some user reports, a simple comparison of the v1 operator API (using the "GET_TASKS" call) and the v0 /tasks HTTP endpoint shows that the v1 API suffers from an inefficient implementation:
> {noformat: title=Curl Timing}
> Operator HTTP API (GET_TASKS): 0.02s user 0.08s system 1% cpu 9.883 total
> Old /tasks API: /tasks: 0.00s user 0.00s system 1% cpu 0.222 total
> {noformat}
> Looking over the implementation, it suffers from the same issues we originally had with the JSON endpoints:
> * Excessive copying up the "tree" of state building calls.
> * Building up the state object as opposed to directly serializing it.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)