harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexei Zakharov" <alexei.zakha...@gmail.com>
Subject Re: [test] Jetty integration progress ? (was Re: [classlib] jetty based tests)
Date Tue, 08 Aug 2006 14:09:31 GMT
Guys,

Does somebody have numbers why Jetty is so light-weighted comparing to
Tomcat? I believe Tomcat can also be executed directly from Java code.
And a lot of stuff can also be removed from Tomcat - connectors,
examples and so on. Am I wrong?

Regards,

2006/8/8, Andrew Zhang <zhanghuangzhu@gmail.com>:
> Hi Filip,
>
> We want to use jetty to eliminate any external dependency, which means we do
> not need to start an external web server when we run Harmony test. Jetty is
> suitable for this job, while tomcat may not work. Furthermore, jetty is
> lightweight, and can be easily integrated to Harmony from source code level,
> say, drop a jetty.jar or such in Harmony, and we can write jetty based http
> tests. Sounds reasonable?
>
> On 8/8/06, Filip Hanik - Dev Lists <devlists@hanik.com> wrote:
> >
> > as a lurker, any reason for not choosing Tomcat, as it already is an ASF
> > project?
> > I'd be happy to help out with that effort,
> >
> > Filip
> >
> > Andrew Zhang wrote:
> > > Alexei, sorry for my late reply.
> > >
> > > It seems a big problem to me. :) I haven't find any solution yet.
> > > Futhurmore, ftp server also needs to be substituted. Do you have any
> > > suggestions?
> > >
> > > Anyway, let's start from http server -- jetty. :) Any committers would
> > > like
> > > to integrate jetty to Harmony? Thanks!
> > >
> > >
> > >
> > > On 8/1/06, Alexei Zakharov <alexei.zakharov@gmail.com> wrote:
> > >>
> > >> Hi Andrew,
> > >>
> > >> > I volunteer to work on excluded tests in luni module, most of which
> > >> are
> > >> > dependent on external servers(http server, socks proxy and etc.).
> > >>
> > >> Great news - go ahead! :)
> > >> What are you going to use as a substitute for the remote socks proxy?
> > >>
> > >> Regards,
> > >>
> > >> 2006/8/1, Andrew Zhang <zhanghuangzhu@gmail.com>:
> > >> > Hi folks,
> > >> >
> > >> > I volunteer to work on excluded tests in luni module, most of which
> > >> are
> > >> > dependent on external servers(http server, socks proxy and etc.).
> > >> >
> > >> > As we discussed some months earlier, we'd integrate Jetty to Harmony
> > >> test
> > >> > framework for eliminating external http server, but seems no more
> > >> progress.
> > >> >
> > >> > Any volunteer to do this job? :-)
> > >> >
> > >> > Thanks!
> > >> >
> > >> >
> > >> > On 5/23/06, Stepan Mishura <stepan.mishura@gmail.com> wrote:
> > >> > >
> > >> > > Hi George, Paulex,
> > >> > >
> > >> > > Thanks for your answers. As a preliminary result - your convinced
> > me
> > >> and
> > >> > > I'm
> > >> > > going to be volunteer to evaluate jetty integration to classlib
> > test
> > >> > > suite.
> > >> > >
> > >> > > Do anybody work on integrating jetty http server to move net
> > >> tests out
> > >> of
> > >> > > exclude list?
> > >> > >
> > >> > > Thanks,
> > >> > > Stepan.
> > >> > >
> > >> > > On 5/23/06, George Harley <george.c.harley@googlemail.com>
wrote:
> > >> > > >
> > >> > > > Stepan Mishura wrote:
> > >> > > > > Hi George, Tim
> > >> > > > >
> > >> > > > > I'd like to clarify the following questions:
> > >> > > > > 1) Configuring
> > >> > > > > As I understood we say that the server is 'embedded'
when we
> > can
> > >> > > > > start/stop
> > >> > > > > it within Ant without additional configuration steps.
And all
> > we
> > >> need
> > >> > > > > to do
> > >> > > > > is just download required jars. Right?
> > >> > > > >
> > >> > > > > What about Eclipse users?
> > >> > > >
> > >> > > > Hi Stepan,
> > >> > > >
> > >> > > > In addition to be being start-able, stop-able and configurable
> > >> from
> > >> Ant
> > >> > > > and XML config files, Jetty can also be embedded into the
Java
> > >> code
> > >> of a
> > >> > > > test case or test suite. Configuration, starting and stopping
are
> > >> all
> > >> > > > possible. Eclipse users should not be disadvantaged.
> > >> > > >
> > >> > > >
> > >> > > > >
> > >> > > > > 2) Time to run test suite
> > >> > > > > May be it is hard to estimate but anyway - will the
test
> > >> suite run
> > >> > > > > slow down
> > >> > > > > if we'll use jetty instead of mock objects? How much?
> > >> > > >
> > >> > > > Depends on configuration. Configure and start the server
in the
> > >> setup()
> > >> > > > of a JUnit TesCase (and stopping the server in the teardown())
> > >> would
> > >> > > > obviously be slower than doing the equivalent in a JUnit
> > TestSetup
> > >> > > > descendent. Start up is a lot less than half a second on
my
> > >> machine.
> > >> > > >
> > >> > > > Is there some performance benchmark for tests that is at
risk
> > >> here ?
> > >> > > >
> > >> > > >
> > >> > > > >
> > >> > > > > 3) Testing
> > >> > > > > Quoting Tim from 'local server thread': "There is no
way to
> > >> force
> > >> a
> > >> > > > > server
> > >> > > > > to send you a chunked response using regular HTTP headers,
so
> > in
> > >> this
> > >> > > > > case
> > >> > > > > the server and client have an understanding that when
the
> > client
> > >> asks
> > >> > > > > for a
> > >> > > > > particular resource the server will send it back in
chunks."
> > >> > > > >
> > >> > > > > With mock objects this can be done with no problems
and
> > >> HARMONY-164
> > >> > > > > demonstrates the possible way. Also are we going to
create
> > >> negative
> > >> > > > > tests,
> > >> > > > > for example, for broken server response? I think yes.
Can jetty
> > >> server
> > >> > > > be
> > >> > > > > used for negative testing?
> > >> > > >
> > >> > > > Yes. You can send back any error.
> > >> > > >
> > >> > > >
> > >> > > > >
> > >> > > > > See other comments below
> > >> > > > >
> > >> > > > > On 5/22/06, George Harley wrote:
> > >> > > > >>
> > >> > > > >> Stepan Mishura wrote:
> > >> > > > >> > On 5/19/06, Tim Ellison wrote:
> > >> > > > >> >>
> > >> > > > >> >> Stepan Mishura wrote:
> > >> > > > >> >> <snip>
> > >> > > > >> >> > I'm OK only if we separate tests
with Jetty from common
> > >> test
> > >> > > suite
> > >> > > > >> >> run.
> > >> > > > >> >>
> > >> > > > >> >> Why?
> > >> > > > >> >
> > >> > > > >> >
> > >> > > > >> > Because each external dependency complicates
'normal' test
> > >> suite
> > >> > > > >> run ( I
> > >> > > > >> > don't want to face with situation when to
run Harmony test
> > >> suite I
> > >> > > > >> > have to
> > >> > > > >> > configure and run 20 different external servers
even they
> > are
> > >> easy
> > >> > > > >> > configurable). As far as I remember we agreed
to use mock
> > >> objects -
> > >> > > > so
> > >> > > > >> > let's
> > >> > > > >> > use them! For example, in this case there
is no need in
> > jetty
> > >> > > server.
> > >> > > > >> >
> > >> > > > >> > I'm not against 'jetty based tests' but I'd
prefer to
> > >> separate
> > >> such
> > >> > > > >> > tests.
> > >> > > > >> >
> > >> > > > >> > Thanks,
> > >> > > > >> > Stepan.
> > >> > > > >> >
> > >> > > > >>
> > >> > > > >> Hi Stepan,
> > >> > > > >>
> > >> > > > >> Just seen this note and think that my previous
append on the
> > >> "Re:
> > >> svn
> > >> > > > >> commit: r407752" thread sums up my thoughts. Allow
me to quote
> > >> > > myself:
> > >> > > > >>
> > >> > > > >> <paste>
> > >> > > > >> Jetty or equivalent is a good basis for such local
server
> > >> stubs.
> > >> It
> > >> > > is
> > >> > > > >> fast, it is lightweight,
> > >> > > > >
> > >> > > > >
> > >> > > > > Fast and lightweight as what?
> > >> > > > > I saw sometimes ago java server that has jar size 4k.
And
> > >> > > > > jetty-6.0.0beta6.jar is 423k size.
> > >> > > > >
> > >> > > >
> > >> > > >
> > >> > > > Not sure of your point here. Is there some test file footprint
> > >> benchmark
> > >> > > > that is at risk here ? If there is a better, faster, more
> > >> lightweight
> > >> > > > server that would suit our purposes then let's hear about
it so
> > >> that
> > >> we
> > >> > > > can investigate whether or not it may be used with our network
> > >> tests.
> > >> > > >
> > >> > > > >
> > >> > > > >> it can be started and stopped very simply from
> > >> > > > >> within Ant (so that it only runs for the duration
of a
> > >> specified
> > >> > > batch
> > >> > > > >> of unit tests) and may also be completely controlled
from Java
> > >> test
> > >> > > > code
> > >> > > > >> so that we can configure its behaviour for any
test case from
> > >> within
> > >> > > > >> that test case.
> > >> > > > >
> > >> > > > >
> > >> > > > > Good.
> > >> > > > >
> > >> > > > > It's architecture means that we do not have to run
it as
> > >> > > > >> a complete web server but can stub out any aspect
of its
> > >> runtime
> > >> > > > >> behaviour we wish in order to suit the purposes
of the
> > test(s).
> > >> > > > >
> > >> > > > >
> > >> > > > > What about 'chunked response'? Can a testcase force
jetty
> > server
> > >> to
> > >> > > > > send it
> > >> > > > > a chunked response?
> > >> > > >
> > >> > > > Yes. The API provides options to do this. Chunks are encoded
as
> > >> per
> > >> > > > RFC2616.
> > >> > > >
> > >> > > >
> > >> > > > Best regards,
> > >> > > > George
> > >> > > >
> > >> > > > >
> > >> > > > > I don't really understand why such network tests making
use of
> > a
> > >> > > small,
> > >> > > > >> embedded server running locally would need to be
considered as
> > >> > > outside
> > >> > > > >> of the "normal test flow".
> > >> > > > >> </paste>
> > >> > > > >
> > >> > > > >
> > >> > > > > Because I consider adding jetty server as precedent
for adding
> > >> other
> > >> > > > > dependencies to the "normal test flow". I believe that
"normal
> > >> test
> > >> > > > flow"
> > >> > > > > should be fast and lightweight as much as possible.
Each
> > >> additional
> > >> > > > > dependency or configuration step adds a brick(even
it light) to
> > >> > > > > developer's
> > >> > > > > large. As the result classlib test suite may become
very slow
> > >> and
> > >> hard
> > >> > > > to
> > >> > > > > configure. All I want is to understand - do we really
need
> > jetty
> > >> > > server
> > >> > > > > inside it.
> > >> > > > >
> > >> > > > > Thanks,
> > >> > > > > Stepan.
> > >> > > > >
> > >> > > > > We are not talking about an external server here and
we are not
> > >> > > talking
> > >> > > > >> about developers having to carry out complex configuration
> > >> manoeuvres
> > >> > > > >> when running the tests. That is something that
nobody wants.
> > >> The
> > >> > > > >> motivation here is purely to get more of the java.net
tests
> > out
> > >> of
> > >> > > the
> > >> > > > >> "excludes" sin bin.
> > >> > > > >>
> > >> > > > >> Best regards,
> > >> > > > >> George
> > >> > > > >>
> > >> > > > >>
> > >> > > > >> > Regards,
> > >> > > > >> >> Tim
> > >> > > > >> >>
> > >> > > > >> >> --
> > >> > > > >> >>
> > >> > > > >> >> Tim Ellison (t.p.ellison@gmail.com)
> > >> > > > >> >> IBM Java technology centre, UK.
> > >> > > > >> >>
> > >> > > > >> >>
> > >> > > >
> > >> ---------------------------------------------------------------------
> > >> > > > >> >> Terms of use :
> > >> http://incubator.apache.org/harmony/mailing.html
> > >> > > > >> >> To unsubscribe, e-mail:
> > >> > > harmony-dev-unsubscribe@incubator.apache.org
> > >> > > > >> >> For additional commands, e-mail:
> > >> > > > >> harmony-dev-help@incubator.apache.org
> > >> > > > >> >>
> > >> > > > >> >>
> > >> > > > >> >
> > >> > > > >> >
> > >> > > > >>
> > >> > > > >>
> > >> > > > >>
> > >> ---------------------------------------------------------------------
> > >> > > > >> Terms of use :
> > http://incubator.apache.org/harmony/mailing.html
> > >> > > > >> To unsubscribe, e-mail:
> > >> harmony-dev-unsubscribe@incubator.apache.org
> > >> > > > >> For additional commands, e-mail:
> > >> > > harmony-dev-help@incubator.apache.org
> > >> > > > >>
> > >> > > > >>
> > >> > > > >
> > >> > > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> ---------------------------------------------------------------------
> > >> > > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > >> > > > To unsubscribe, e-mail:
> > >> harmony-dev-unsubscribe@incubator.apache.org
> > >> > > > For additional commands, e-mail:
> > >> harmony-dev-help@incubator.apache.org
> > >> > > >
> > >> > > >
> > >> > >
> > >> > >
> > >> > > --
> > >> > > Thanks,
> > >> > > Stepan Mishura
> > >> > > Intel Middleware Products Division
> > >> > >
> > >> > > ------------------------------------------------------
> > >> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > >> > > To unsubscribe, e-mail:
> > harmony-dev-unsubscribe@incubator.apache.org
> > >> > > For additional commands, e-mail:
> > >> harmony-dev-help@incubator.apache.org
> > >> > >
> > >> > >
> > >> >
> > >> >
> > >> > --
> > >> > Andrew Zhang
> > >> > China Software Development Lab, IBM
> > >> >
> > >> >
> > >>
> > >>
> > >> --
> > >> Alexei Zakharov,
> > >> Intel Middleware Product Division
> > >>
> > >> ---------------------------------------------------------------------
> > >> Terms of use : http://incubator.apache.org/harmony/mailing.html
> > >> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > >> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > >>
> > >>
> > >
> > >
> > > ------------------------------------------------------------------------
> > >
> > > No virus found in this incoming message.
> > > Checked by AVG Free Edition.
> > > Version: 7.1.394 / Virus Database: 268.10.7/410 - Release Date: 8/5/2006
> > >
> >
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
>
> --
> Andrew Zhang
> China Software Development Lab, IBM
>
>


-- 
Alexei Zakharov,
Intel Middleware Product Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message