On 06/25/2012 10:48 PM, Liu Yuan wrote:
> On 06/25/2012 10:26 PM, levin li wrote:
>>>> How about this, we put the work into a worker thread using queue_work()
>>>>>> and make queue_request() called in the worker_done() function.
>>>>>>
>>>>
>>>> Maybe we can take advantage of sockfd cache, we can use lightweight unix
>>>> domain FD for self-queuing requests. This require smallest code change
>>>> and also doesn't compromise performance as bad as TCP sockfd.
>>>>
>>>> Thanks,
>>>> Yuan
>>>>
>> After further thinking, I think even we use a cached fd, it still not so 
>> efficient,
>> write/read_object() needs transfer about 4M data if we send a gateway 
>> request,
>> which I think is inefficient.
> 
> Then I suggest register a dedicated handler for process self-queuing and
> use eventfd for notification. It looks better than use current work queue.
> 
> Thanks,
> Yuan
> 

Yes, it's the best way to solve this problem, I'm writing the new patch.

thanks,

levin
-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to