dev@glassfish.java.net

Re: Network config questions

From: Kim Haase <Camilla.Haase_at_Sun.COM>
Date: Tue, 28 Jul 2009 16:56:41 -0400

On 07/28/09 16:41, June.Parks_at_Sun.COM wrote:
> On 07/28/09 13:30, Justin Lee wrote:
>>
>>
>> Kim Haase wrote:
>>> Thanks very much, Justin, for clarifying all this.
>>>
>>> I was wondering about thread pools, actually. I see there are by
>>> default 2 created: http-thread-pool with a limit on the number of
>>> threads in the queue and a small max pool size, and thread-pool-1
>>> with no limit on the queue threads and a large max pool size. The 3
>>> default network listeners all use http-thread-pool. Under what
>>> circumstances might a user specify the other one?
>> One I can think of off hand is if you had an app that you knew would
>> keep connections open for long time for something like feeding very
>> large files/streams back to the client. In this case you might want a
>> separate thread pool to handle that kind of load. But I'd profile
>> first to make sure. The grizzly subsystem uses NIO to handle that
>> processing so is fairly efficient at handling a large number of
>> connections.
>>>
>>>>> Also, is it correct that a virtual server is normally associated
>>>>> with one or more network listeners, but that you can create a
>>>>> virtual server that isn't associated with any network listener,
>>>>> then create the network listener, then edit the virtual server to
>>>>> specify that network listener?
>>>> That is correct. Though it'd save you a step to create the
>>>> network-listener first, I'd think.
>>>
>>> Thanks, that may be worth mentioning. I notice the Admin Guide
>>> doesn't cover this area just yet -- probably this kind of information
>>> is worth including there, too.
>>>
>>> So with the Admin Console anyway, you'd want to create a protocol,
>>> create a network listener, then create a virtual server that uses the
>>> network listener.
> Wouldn't you have to create a transport and optionally a thread pool
> too, either before or after you create the protocol?

You don't need to create a transport -- typically you use the default
TCP, though, you could conceivably create a UDP one, I suppose, if you
needed that. And Justin says you typically use one of the existing
thread pools (usually http-thread-pool apparently).

>
> Creating a protocol seems complicated. You have to choose whether it's
> based on HTTP, port unification, or protocol filters and create those
> elements first.

Well, the Admin Console doesn't provide any capability except HTTP, at
least at present. If there are plans to add the others, that would
indeed complicate things. Maybe they have to, though ...

Kim

>
> June
>> Correct.
>>>
>>> Kim
>>>
>>>>>
>>>>> Thanks very much,
>>>>> Kim Haase
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>