[geeklog-devtalk] [Fwd: Re: [propel] Performance Benchmarks]
Blaine Lang
geeklog at langfamily.ca
Thu Dec 16 01:33:24 EST 2004
A very nice detailed reply that is very re-assuring :)
Blaine
----- Original Message -----
From: "Tony Bibbs" <tony at tonybibbs.com>
To: <geeklog-devtalk at lists.geeklog.net>
Sent: Wednesday, December 15, 2004 11:46 PM
Subject: [geeklog-devtalk] [Fwd: Re: [propel] Performance Benchmarks]
Here is the response on performance I got.
--Tony
-------- Original Message --------
Subject: Re: [propel] Performance Benchmarks
Date: Wed, 15 Dec 2004 23:22:12 -0500
From: Hans Lellelid <hans at velum.net>
Reply-To: users at propel.tigris.org
To: users at propel.tigris.org
References: <41BEFBAA.3080602 at tonybibbs.com>
Tony Bibbs wrote:
> This has probably already come up but I was wondering if anybody has
> done performance benchmarks on Creole. Specifically with respects to
> how it compares to PEAR::DB and/or ADODB. I put together some framework
> code based on Propel/Creole and all the developers like what we have but
> the big concerns at this point are the preformance of Creole and the
> support plans of both Propel/Creole long term. Obviously we'd hate to
> commit to using Propel/Creole and find in a year or two it fizzles out
> puts us in a place where we have to help maintain that code as well.
Yeah, I haven't done any benchmarks. I'm curious to see them too :)
I can assure you that Creole is not going to be faster than ADOdb. It
will probably be around the same speed as PEAR::[M]DB, perhaps a bit
faster (it used to be faster, but it depends a lot on how you use it).
I think there's a bigger picture to look at, though. Creole uses
interfaces and a rather structured architecture. Creole's use of
interfaces makes it easy for people to write custom drivers. Creole is
a commented body of code with, I think (thanks to JDBC and some
enhancements by folks like Dave Lawson), a fairly intuitive and simple API.
I used to use ADOdb extensively, and I generally respect John Lim's
rather different approach to PHP apps. ADOdb is about speed above all
else, and that's simply not what Creole is.
Of course, if you're after raw speed, use PHP native functions; they're
the fastest :)
As for the long-term support plans of Creole & Propel. I am very
optimistic for the next versions of these projects. In all honesty, I
would say that Propel's future will probably be more expansive. I like
Creole, but I would really like to see this level of API abstraction
happen in the PHP engine, and I'm hoping that as PDO stabalizes that
will be able to take on much of what Creole provides. Perhaps next
versions of Creole can be built on top of PDO, to provide the additional
metadata & similar features. Or perhaps this stuff will move into
Propel, or some in-between layer.
Propel will be changing a lot in verison 2, I hope. Definitely the
query-building features of Criteria will be improved, and it will become
smarter in handling many-to-many relationships and other complex things
we all deal with. And consistency of the object graph will be enforced
in Propel 2 by having maps of currently loaded rows (so 1 row can only
be 1 object per request). I'd also like to see ability to upgrade data
models in Propel 2. ... And perhaps a more complex ORM inheritance
model, although that is not a top priority.
Like all things, this project development happens in cycles. I'm
pleased to see that others on the mailing lists are increasingly able to
help answer questions. It would be good if the user community grew to a
point where I would spend less time on support issues (and better docs
will help). Not that I mind, but just that I only have so much time.
I'm also greatly appreciateive of all the contributions to the project.
I'm hopeful that at some point I'll have written a minority of the
code :) It's very inspiring (& complimenting) to have others contribute
to this project.
So, that's what I'm thinking in terms of future. I'm curious to learn
more about what features others would like to see in future versions.
Also, others on the list may be able to tell you more about real-world
performance. I use Propel at work in a very complex private messaging
system; it's certainly fast for our project, but we also have extremely
extensive javascript and do almost everything via XMLRPC -- so it's not
a very traditional PHP webapp.
Anyway, hope that addresses at least the second question. :)
Cheers,
Hans
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe at propel.tigris.org
For additional commands, e-mail: users-help at propel.tigris.org
_______________________________________________
geeklog-devtalk mailing list
geeklog-devtalk at lists.geeklog.net
http://lists.geeklog.net/listinfo/geeklog-devtalk
More information about the geeklog-devtalk
mailing list