re different path: that's because Master know the detail of Slave, e.g.
hostname & port; but when Executor send it to Scheduler, Slave has
Scheduler's info to send message.

re FrameworkToExeutorMessage reliability: yes, framework developer need to
guarantee its reliability, e.g. in Master/Slave failover case.

----
Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
Platform Symphony/DCOS Development & Support, STG, IBM GCG
+86-10-8245 4084 | [email protected] | http://k82.me

On Tue, Jan 5, 2016 at 10:47 PM, sujz.buaa <[email protected]> wrote:

> Hi, all:
>
>
> I am using mesos-0.22.0, I noticed that FrameworkToExecutorMessage is sent 
> along path:
> Scheduler->Master->Slave->Executor,
> while ExecutorToFrameworkMessage is sent along path:
> Executor->Slave->Scheduler,
>
>
> So is there some reason or benefit for bypassing master while transmitting 
> ExecutorToFrameworkMessage?
>
> One more question, FrameworkToExecutorMessage and ExecutorToFrameworkMessage 
> are instantiated
> in function SendFrameworkMessage,
> declaration of SendFrameworkMessage in include/mesos/scheduler.hpp and 
> include/mesos/executor.hpp:
>   // Sends a message from the framework to one of its executors. These
>   // messages are *best effort*; do not expect a framework message to be
>   // retransmitted in any reliable fashion.
>   virtual Status sendFrameworkMessage(
>       const ExecutorID& executorId,
>       const SlaveID& slaveId,
>       const std::string& data) = 0;
>
>
> I guess that protobuf message are transmitted with TCP, so does this comment 
> mean I have to guarantee reliability by myself even with TCP? What's special 
> for these
>
> two messages compared with other protobuf messages, If no, do we have to 
> guarantee reliability all by ourselves?
>
> Thank you very much and best regards !
>

Reply via email to