tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <rmannibu...@gmail.com>
Subject Re: JPA vs DBUtils
Date Tue, 20 Jun 2017 14:21:17 GMT
not really, @Stateful vs @Stateful + extended persistence context. This is
quite particular more particular. However overhead is really in the way jpa
does way more for you, compare your updates for instance.


Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<https://blog-rmannibucau.rhcloud.com> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | JavaEE Factory
<https://javaeefactory-rmannibucau.rhcloud.com>

2017-06-20 16:16 GMT+02:00 Steve Goldsmith <sgjava@gmail.com>:

> @Stateful was used in both examples, so the impact would have been the
> same? The real way to find the latency is to profile the code which I will
> do as well.
>
> On Tue, Jun 20, 2017 at 10:03 AM, Romain Manni-Bucau <
> rmannibucau@gmail.com>
> wrote:
>
> > not sure what you reference by "string" but JPA needs more round trip to
> be
> > "hot" (optimized) than dbutils which doesnt pretty much nothing. The
> state
> > management etc is also an overhead.
> >
> > If you update your example to have a @Version for instance you will start
> > to realize it, then add a small layer to not have to build yourself the
> > update query and you will see another part etc.
> >
> > I would probably recommand you to maybe evaluate this: try with mysql to
> > have some real db latency and compare the db latency to jpa overhead -
> > and/or try with N threads with hsqldb ;).
> >
> > Generally the overhead once tuned is acceptable compared to the DB
> latency
> > and you are often in the IO layer and not the runtime layer.
> >
> > Side note about the example: i think the goal was to show how to use a
> > stateful, name is probably not that great :s
> >
> >
> >
> > Romain Manni-Bucau
> > @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> > <https://blog-rmannibucau.rhcloud.com> | Old Blog
> > <http://rmannibucau.wordpress.com> | Github <https://github.com/
> > rmannibucau> |
> > LinkedIn <https://www.linkedin.com/in/rmannibucau> | JavaEE Factory
> > <https://javaeefactory-rmannibucau.rhcloud.com>
> >
> > 2017-06-20 15:58 GMT+02:00 Steve Goldsmith <sgjava@gmail.com>:
> >
> > > I copied the JPA stuff from the TomEE examples, so if it is not
> > optimized,
> > > using the wrong state, scope, etc. then perhaps the example should be
> > > updated to reflect that. I will try what you recommend and post new
> > times.
> > > The data is exactly the same size, so are you saying because the
> strings
> > > are not identical there may be a difference? Just trying to understand
> > that
> > > perspective. I'll just roll both tests into one to use the same data.
> > >
> > > On Tue, Jun 20, 2017 at 2:53 AM, Andy Gumbrecht <
> > agumbrecht@tomitribe.com>
> > > wrote:
> > >
> > > > So just at a super quick glance - Before we start to anything else.
> > > >
> > > > You should modify the code to use the same (identical) random data
> for
> > > both
> > > > tests.
> > > > Add hibernate.jdbc.batch_size = 25 to your persistence.xml properties
> > > > Never use @Stateful unless you really understand why you should, i.e.
> > use
> > > > @Stateless for your JpaMovies
> > > > Use entityManager#find rather than a query
> > > >
> > > > Hope this is a quick insight, but I'd also be interested to see the
> > > results
> > > > on just these few changes.
> > > >
> > > > Andy.
> > > >
> > > > On 20 June 2017 at 05:31, Laird Nelson <ljnelson@gmail.com> wrote:
> > > >
> > > > > Have you sat down for a good long reading session with
> > > > > http://java-persistence-performance.blogspot.com/?  I found that
> > site
> > > > > invaluable.
> > > > >
> > > > > Best,
> > > > > Laird
> > > > > --
> > > > > http://about.me/lairdnelson
> > > > >
> > > > > On Mon, Jun 19, 2017 at 8:22 PM sgjava <sgjava@gmail.com> wrote:
> > > > >
> > > > > > I just built a project to compare JPA+Hibernate to a DBUtils
> > > > > > implementation.
> > > > > > DBUtils is a lot faster by a large margin. Can anyone tell me
if
> > they
> > > > > have
> > > > > > tuned JPA to perform better? I used TomEE 7.0.4-SNAPSHOT. I
could
> > > live
> > > > > with
> > > > > > maybe a 10% difference, but I'm talking about 10 to 10 times
> > slower!
> > > > > >
> > > > > > https://github.com/sgjava/jpavsdbutils
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > View this message in context:
> > > > > > http://tomee-openejb.979440.n4.nabble.com/JPA-vs-DBUtils-
> > > > tp4681918.html
> > > > > > Sent from the TomEE Users mailing list archive at Nabble.com.
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > >   Andy Gumbrecht
> > > >   https://twitter.com/AndyGeeDe
> > > >   http://www.tomitribe.com
> > > >
> > >
> > >
> > >
> > > --
> > > Steven P. Goldsmith
> > >
> >
>
>
>
> --
> Steven P. Goldsmith
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message