You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicecomb.apache.org by wjm wjm <zz...@gmail.com> on 2019/01/24 01:30:27 UTC

[discuss] change default value of verticle instance count

currently, we created four type verticle for net send/receive and reactive
business logic:

   - rest client verticle
   - rest server verticle
   - highway client verticle
   - highway server verticle

instances of them controlled by configurations:

   - servicecomb.rest.server.thread-count
   - servicecomb.rest.client.thread-count
   - servicecomb.highway.server.thread-count
   - servicecomb. highway.client.thread-count

default value of the configurations are set to 1 all, because framework can
not know what's the best value for them, so we set the conservative value

these default values makes almost all customers need to optimize
the configuration, it's not so good.
so suggest the default values to be:

   - if cpu count less than 8, then thread-count set to cpu count
   - if cpu count equals or big than 8, then thread-count set to 8

Re: [discuss] change default value of verticle instance count

Posted by wjm wjm <zz...@gmail.com>.
https://github.com/apache/servicecomb-java-chassis/pull/1074

wjm wjm <zz...@gmail.com> 于2019年1月25日周五 下午6:20写道:

> oh. sorry, you are right
>
> 在 2019年1月25日星期五,Yang Bo <oa...@gmail.com> 写道:
>
>> Is vertical-count a typo? Think it should be verticle-count.
>>
>> On Fri, Jan 25, 2019 at 5:36 PM wjm wjm <zz...@gmail.com> wrote:
>>
>> > new change:
>> >   all thread-count rename to vertical-count
>> >   still allow use old key, but when use old key will print warning log,
>> > notice it's ambiguous and deprecated, suggest to use new name
>> >
>> > 在 2019年1月24日星期四,wjm wjm <zz...@gmail.com> 写道:
>> >
>> > > eventloop will not eat all cpus, OS will schedule all the threads.
>> > >
>> > > yhs0092 <yh...@163.com> 于2019年1月24日周四 上午9:49写道:
>> > >
>> > >> Hi, wjm. Thank you for your sharing.
>> > >> As you say that if CPU count is less than 8, it's suggested that the
>> > >> thread-count is set to the CPU count. There is still a doubt for me.
>> In
>> > the
>> > >> synchronous mode, since the business logic runs in business thread
>> pool,
>> > >> i.e. the executor, don't we need to leave some CPU cores for the
>> > business ?
>> > >>
>> > >>
>> > >> Yours sincerely
>> > >>
>> > >>
>> > >> Yao Haishi
>> > >> yhs0092@163.com
>> > >>
>> > >>
>> > >> On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
>> > >> +1
>> > >>
>> > >>
>> > >>
>> > >>
>> > >> ------------------ 原始邮件 ------------------
>> > >> 发件人: "zzzwjm"<zz...@gmail.com>;
>> > >> 发送时间: 2019年1月24日(星期四) 上午9:30
>> > >> 收件人: "dev"<de...@servicecomb.apache.org>;
>> > >>
>> > >> 主题: [discuss] change default value of verticle instance count
>> > >>
>> > >>
>> > >>
>> > >> currently, we created four type verticle for net send/receive and
>> > reactive
>> > >> business logic:
>> > >>
>> > >> - rest client verticle
>> > >> - rest server verticle
>> > >> - highway client verticle
>> > >> - highway server verticle
>> > >>
>> > >> instances of them controlled by configurations:
>> > >>
>> > >> - servicecomb.rest.server.thread-count
>> > >> - servicecomb.rest.client.thread-count
>> > >> - servicecomb.highway.server.thread-count
>> > >> - servicecomb. highway.client.thread-count
>> > >>
>> > >> default value of the configurations are set to 1 all, because
>> framework
>> > >> can
>> > >> not know what's the best value for them, so we set the conservative
>> > value
>> > >>
>> > >> these default values makes almost all customers need to optimize
>> > >> the configuration, it's not so good.
>> > >> so suggest the default values to be:
>> > >>
>> > >> - if cpu count less than 8, then thread-count set to cpu count
>> > >> - if cpu count equals or big than 8, then thread-count set to 8
>> > >
>> > >
>> >
>>
>>
>> --
>> Best Regards,
>> Yang.
>>
>

Re: [discuss] change default value of verticle instance count

Posted by wjm wjm <zz...@gmail.com>.
oh. sorry, you are right

在 2019年1月25日星期五,Yang Bo <oa...@gmail.com> 写道:

> Is vertical-count a typo? Think it should be verticle-count.
>
> On Fri, Jan 25, 2019 at 5:36 PM wjm wjm <zz...@gmail.com> wrote:
>
> > new change:
> >   all thread-count rename to vertical-count
> >   still allow use old key, but when use old key will print warning log,
> > notice it's ambiguous and deprecated, suggest to use new name
> >
> > 在 2019年1月24日星期四,wjm wjm <zz...@gmail.com> 写道:
> >
> > > eventloop will not eat all cpus, OS will schedule all the threads.
> > >
> > > yhs0092 <yh...@163.com> 于2019年1月24日周四 上午9:49写道:
> > >
> > >> Hi, wjm. Thank you for your sharing.
> > >> As you say that if CPU count is less than 8, it's suggested that the
> > >> thread-count is set to the CPU count. There is still a doubt for me.
> In
> > the
> > >> synchronous mode, since the business logic runs in business thread
> pool,
> > >> i.e. the executor, don't we need to leave some CPU cores for the
> > business ?
> > >>
> > >>
> > >> Yours sincerely
> > >>
> > >>
> > >> Yao Haishi
> > >> yhs0092@163.com
> > >>
> > >>
> > >> On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
> > >> +1
> > >>
> > >>
> > >>
> > >>
> > >> ------------------ 原始邮件 ------------------
> > >> 发件人: "zzzwjm"<zz...@gmail.com>;
> > >> 发送时间: 2019年1月24日(星期四) 上午9:30
> > >> 收件人: "dev"<de...@servicecomb.apache.org>;
> > >>
> > >> 主题: [discuss] change default value of verticle instance count
> > >>
> > >>
> > >>
> > >> currently, we created four type verticle for net send/receive and
> > reactive
> > >> business logic:
> > >>
> > >> - rest client verticle
> > >> - rest server verticle
> > >> - highway client verticle
> > >> - highway server verticle
> > >>
> > >> instances of them controlled by configurations:
> > >>
> > >> - servicecomb.rest.server.thread-count
> > >> - servicecomb.rest.client.thread-count
> > >> - servicecomb.highway.server.thread-count
> > >> - servicecomb. highway.client.thread-count
> > >>
> > >> default value of the configurations are set to 1 all, because
> framework
> > >> can
> > >> not know what's the best value for them, so we set the conservative
> > value
> > >>
> > >> these default values makes almost all customers need to optimize
> > >> the configuration, it's not so good.
> > >> so suggest the default values to be:
> > >>
> > >> - if cpu count less than 8, then thread-count set to cpu count
> > >> - if cpu count equals or big than 8, then thread-count set to 8
> > >
> > >
> >
>
>
> --
> Best Regards,
> Yang.
>

Re: [discuss] change default value of verticle instance count

Posted by Yang Bo <oa...@gmail.com>.
Is vertical-count a typo? Think it should be verticle-count.

On Fri, Jan 25, 2019 at 5:36 PM wjm wjm <zz...@gmail.com> wrote:

> new change:
>   all thread-count rename to vertical-count
>   still allow use old key, but when use old key will print warning log,
> notice it's ambiguous and deprecated, suggest to use new name
>
> 在 2019年1月24日星期四,wjm wjm <zz...@gmail.com> 写道:
>
> > eventloop will not eat all cpus, OS will schedule all the threads.
> >
> > yhs0092 <yh...@163.com> 于2019年1月24日周四 上午9:49写道:
> >
> >> Hi, wjm. Thank you for your sharing.
> >> As you say that if CPU count is less than 8, it's suggested that the
> >> thread-count is set to the CPU count. There is still a doubt for me. In
> the
> >> synchronous mode, since the business logic runs in business thread pool,
> >> i.e. the executor, don't we need to leave some CPU cores for the
> business ?
> >>
> >>
> >> Yours sincerely
> >>
> >>
> >> Yao Haishi
> >> yhs0092@163.com
> >>
> >>
> >> On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
> >> +1
> >>
> >>
> >>
> >>
> >> ------------------ 原始邮件 ------------------
> >> 发件人: "zzzwjm"<zz...@gmail.com>;
> >> 发送时间: 2019年1月24日(星期四) 上午9:30
> >> 收件人: "dev"<de...@servicecomb.apache.org>;
> >>
> >> 主题: [discuss] change default value of verticle instance count
> >>
> >>
> >>
> >> currently, we created four type verticle for net send/receive and
> reactive
> >> business logic:
> >>
> >> - rest client verticle
> >> - rest server verticle
> >> - highway client verticle
> >> - highway server verticle
> >>
> >> instances of them controlled by configurations:
> >>
> >> - servicecomb.rest.server.thread-count
> >> - servicecomb.rest.client.thread-count
> >> - servicecomb.highway.server.thread-count
> >> - servicecomb. highway.client.thread-count
> >>
> >> default value of the configurations are set to 1 all, because framework
> >> can
> >> not know what's the best value for them, so we set the conservative
> value
> >>
> >> these default values makes almost all customers need to optimize
> >> the configuration, it's not so good.
> >> so suggest the default values to be:
> >>
> >> - if cpu count less than 8, then thread-count set to cpu count
> >> - if cpu count equals or big than 8, then thread-count set to 8
> >
> >
>


-- 
Best Regards,
Yang.

Re: [discuss] change default value of verticle instance count

Posted by wjm wjm <zz...@gmail.com>.
new change:
  all thread-count rename to vertical-count
  still allow use old key, but when use old key will print warning log,
notice it's ambiguous and deprecated, suggest to use new name

在 2019年1月24日星期四,wjm wjm <zz...@gmail.com> 写道:

> eventloop will not eat all cpus, OS will schedule all the threads.
>
> yhs0092 <yh...@163.com> 于2019年1月24日周四 上午9:49写道:
>
>> Hi, wjm. Thank you for your sharing.
>> As you say that if CPU count is less than 8, it's suggested that the
>> thread-count is set to the CPU count. There is still a doubt for me. In the
>> synchronous mode, since the business logic runs in business thread pool,
>> i.e. the executor, don't we need to leave some CPU cores for the business ?
>>
>>
>> Yours sincerely
>>
>>
>> Yao Haishi
>> yhs0092@163.com
>>
>>
>> On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
>> +1
>>
>>
>>
>>
>> ------------------ 原始邮件 ------------------
>> 发件人: "zzzwjm"<zz...@gmail.com>;
>> 发送时间: 2019年1月24日(星期四) 上午9:30
>> 收件人: "dev"<de...@servicecomb.apache.org>;
>>
>> 主题: [discuss] change default value of verticle instance count
>>
>>
>>
>> currently, we created four type verticle for net send/receive and reactive
>> business logic:
>>
>> - rest client verticle
>> - rest server verticle
>> - highway client verticle
>> - highway server verticle
>>
>> instances of them controlled by configurations:
>>
>> - servicecomb.rest.server.thread-count
>> - servicecomb.rest.client.thread-count
>> - servicecomb.highway.server.thread-count
>> - servicecomb. highway.client.thread-count
>>
>> default value of the configurations are set to 1 all, because framework
>> can
>> not know what's the best value for them, so we set the conservative value
>>
>> these default values makes almost all customers need to optimize
>> the configuration, it's not so good.
>> so suggest the default values to be:
>>
>> - if cpu count less than 8, then thread-count set to cpu count
>> - if cpu count equals or big than 8, then thread-count set to 8
>
>

Re: [discuss] change default value of verticle instance count

Posted by wjm wjm <zz...@gmail.com>.
eventloop will not eat all cpus, OS will schedule all the threads.

yhs0092 <yh...@163.com> 于2019年1月24日周四 上午9:49写道:

> Hi, wjm. Thank you for your sharing.
> As you say that if CPU count is less than 8, it's suggested that the
> thread-count is set to the CPU count. There is still a doubt for me. In the
> synchronous mode, since the business logic runs in business thread pool,
> i.e. the executor, don't we need to leave some CPU cores for the business ?
>
>
> Yours sincerely
>
>
> Yao Haishi
> yhs0092@163.com
>
>
> On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
> +1
>
>
>
>
> ------------------ 原始邮件 ------------------
> 发件人: "zzzwjm"<zz...@gmail.com>;
> 发送时间: 2019年1月24日(星期四) 上午9:30
> 收件人: "dev"<de...@servicecomb.apache.org>;
>
> 主题: [discuss] change default value of verticle instance count
>
>
>
> currently, we created four type verticle for net send/receive and reactive
> business logic:
>
> - rest client verticle
> - rest server verticle
> - highway client verticle
> - highway server verticle
>
> instances of them controlled by configurations:
>
> - servicecomb.rest.server.thread-count
> - servicecomb.rest.client.thread-count
> - servicecomb.highway.server.thread-count
> - servicecomb. highway.client.thread-count
>
> default value of the configurations are set to 1 all, because framework can
> not know what's the best value for them, so we set the conservative value
>
> these default values makes almost all customers need to optimize
> the configuration, it's not so good.
> so suggest the default values to be:
>
> - if cpu count less than 8, then thread-count set to cpu count
> - if cpu count equals or big than 8, then thread-count set to 8

Re: [discuss] change default value of verticle instance count

Posted by yhs0092 <yh...@163.com>.
Hi, wjm. Thank you for your sharing.
As you say that if CPU count is less than 8, it's suggested that the thread-count is set to the CPU count. There is still a doubt for me. In the synchronous mode, since the business logic runs in business thread pool, i.e. the executor, don't we need to leave some CPU cores for the business ?


Yours sincerely


Yao Haishi
yhs0092@163.com


On 1/24/2019 09:38,bismy<bi...@qq.com> wrote:
+1




------------------ 原始邮件 ------------------
发件人: "zzzwjm"<zz...@gmail.com>;
发送时间: 2019年1月24日(星期四) 上午9:30
收件人: "dev"<de...@servicecomb.apache.org>;

主题: [discuss] change default value of verticle instance count



currently, we created four type verticle for net send/receive and reactive
business logic:

- rest client verticle
- rest server verticle
- highway client verticle
- highway server verticle

instances of them controlled by configurations:

- servicecomb.rest.server.thread-count
- servicecomb.rest.client.thread-count
- servicecomb.highway.server.thread-count
- servicecomb. highway.client.thread-count

default value of the configurations are set to 1 all, because framework can
not know what's the best value for them, so we set the conservative value

these default values makes almost all customers need to optimize
the configuration, it's not so good.
so suggest the default values to be:

- if cpu count less than 8, then thread-count set to cpu count
- if cpu count equals or big than 8, then thread-count set to 8

回复:[discuss] change default value of verticle instance count

Posted by bismy <bi...@qq.com>.
+1




------------------ 原始邮件 ------------------
发件人: "zzzwjm"<zz...@gmail.com>;
发送时间: 2019年1月24日(星期四) 上午9:30
收件人: "dev"<de...@servicecomb.apache.org>;

主题: [discuss] change default value of verticle instance count



currently, we created four type verticle for net send/receive and reactive
business logic:

   - rest client verticle
   - rest server verticle
   - highway client verticle
   - highway server verticle

instances of them controlled by configurations:

   - servicecomb.rest.server.thread-count
   - servicecomb.rest.client.thread-count
   - servicecomb.highway.server.thread-count
   - servicecomb. highway.client.thread-count

default value of the configurations are set to 1 all, because framework can
not know what's the best value for them, so we set the conservative value

these default values makes almost all customers need to optimize
the configuration, it's not so good.
so suggest the default values to be:

   - if cpu count less than 8, then thread-count set to cpu count
   - if cpu count equals or big than 8, then thread-count set to 8