- Home
- LLBLGen Pro
- LLBLGen Pro Runtime Framework
Pet Shop
Joined: 15-Jul-2005
After evaluating several different solutions, we're just about ready to pull the trigger on buying LLBLGen Pro. We're very impressed with what we can do with it. I'll probably have more questions after we purchase, but one I wanted to ask before we do is this...
Have you guys done any benchmark testing with this framework, like a port of the "Pet Shop" app or something similar? Along those lines, is anyone using a framework generated by LLBLGen Pro in an Enterprise line-of-business type app? I'm more concerned with scalability than I am with performance.
TIA,
Todd
Uh, wrote:
After evaluating several different solutions, we're just about ready to pull the trigger on buying LLBLGen Pro. We're very impressed with what we can do with it. I'll probably have more questions after we purchase, but one I wanted to ask before we do is this...
Thanks!
Have you guys done any benchmark testing with this framework, like a port of the "Pet Shop" app or something similar?
We've ported the petshop app, it's available on the demo download page, though we didn't do any benchmarking with that, as the numbers would have been pretty bogus anyway, as benchmarks are only somewhat useful if the hardware used is the same for all tested apps. Furthermore, the petshop app isn't a very useful example for benchmarking, as the MS app has become completely unmaintainable rubbish code due to the farfetched optimization.
We profile our code on a regular basis to eliminate bottlenecks in the framework. At the moment we're pretty confident the code is performing very well and offers more than one way to achieve things. Especially that last point is important for teh developer to choose the right option: subqueries (FieldCompareSetPredicate) or joins (relations in a relation collection), use a prefetch path, or fetch when appropriate ?
Along those lines, is anyone using a framework generated by LLBLGen Pro in an Enterprise line-of-business type app? I'm more concerned with scalability than I am with performance.
Todd
LLBLGen Pro is used by a lot of the fortune 50 companies and in more than 50 countries. The largest application I know it is used in has over 2500 tables, but there might be even bigger applications.
Which type of scalability is your interest in? ('is it able to scale up to more database systems, can it be used in a cluster? what if the db is increased by 1TB a day? what if the middle tier runs on a farm of servers?')
Joined: 15-Jul-2005
We've ported the petshop app, it's available on the demo download page, though we didn't do any benchmarking with that, as the numbers would have been pretty bogus anyway, as benchmarks are only somewhat useful if the hardware used is the same for all tested apps. Furthermore, the petshop app isn't a very useful example for benchmarking, as the MS app has become completely unmaintainable rubbish code due to the farfetched optimization.
Good point about the hardware. I saw another company actually profile their framework by comparing their version of the Pet Shop app versus the MS version, run on the same hardware, which is why I asked. It seemed like it was a huge effort though on their part, and it was comforting enough for me to hear that LLBLGen Pro is used in some big enterprise situations. Perhaps I'm too trusting, but then "cold hard facts" can always be manipulated, so there's always a level of trust happening.
Which type of scalability is your interest in? ('is it able to scale up to more database systems, can it be used in a cluster? what if the db is increased by 1TB a day? what if the middle tier runs on a farm of servers?')
To be honest, I hadn't thought it through to that degree! Although I ask about "the Enterprise", only one of our client's applications runs in the Enterprise, and even then, though it is a global app, there are probably never more than 30 concurrent users. So I really was trying to do due diligence here before we jump on board and make sure we're not investing in a really slick looking framework that will support about 5 concurrent users - competing right there with Microsoft Access.
We didn't bother to do any performance testing ourselves. But we did a decent amount of putting the generated code through its paces to make sure we could handle things like transactions, concurrency, and business rules (data integrity and constraints).
And the bottom line is that I've got the credit card in front of me right now...
Uh, wrote:
We've ported the petshop app, it's available on the demo download page, though we didn't do any benchmarking with that, as the numbers would have been pretty bogus anyway, as benchmarks are only somewhat useful if the hardware used is the same for all tested apps. Furthermore, the petshop app isn't a very useful example for benchmarking, as the MS app has become completely unmaintainable rubbish code due to the farfetched optimization.
Good point about the hardware. I saw another company actually profile their framework by comparing their version of the Pet Shop app versus the MS version, run on the same hardware, which is why I asked. It seemed like it was a huge effort though on their part, and it was comforting enough for me to hear that LLBLGen Pro is used in some big enterprise situations. Perhaps I'm too trusting, but then "cold hard facts" can always be manipulated, so there's always a level of trust happening.
Well, it's hard to win from the MS implementation, as that implementation is solely build for speed. Everything is optimized and only for that small database as well. For example: they pull the complete product catalog into memory (and cache it in asp.net cache) and work from there. That's of course silly if you have a lot of products. Though for this small app, it works. They have pre-fabricated all queries which can take place, and if you extend the app to do something else as well, it falls apart. So I don't think it's that useful to benchmark against the MS app.
Which type of scalability is your interest in? ('is it able to scale up to more database systems, can it be used in a cluster? what if the db is increased by 1TB a day? what if the middle tier runs on a farm of servers?')
To be honest, I hadn't thought it through to that degree! Although I ask about "the Enterprise", only one of our client's applications runs in the Enterprise, and even then, though it is a global app, there are probably never more than 30 concurrent users. So I really was trying to do due diligence here before we jump on board and make sure we're not investing in a really slick looking framework that will support about 5 concurrent users - competing right there with Microsoft Access.
hehe I can imagine
.
We didn't bother to do any performance testing ourselves. But we did a decent amount of putting the generated code through its paces to make sure we could handle things like transactions, concurrency, and business rules (data integrity and constraints). And the bottom line is that I've got the credit card in front of me right now...
Thanks!