|
Posted by Jerry Stuckle on 08/18/06 12:34
gavino wrote:
> What applications benefit from HAppS?
>
> HTTP requests and SMTP envelopes encapsulate transactions and not vice
> versa.
> Note: doing otherwise with LAMP is considered bad design because it
> implies a requirement to maintain and garbage collect database
> connections arbitrarily. So this should not be a high hurdle.
>
> All operating data fits in memory (store blobs on disk.)
> Note: Although this seems like a high hurdle, COTS servers with 12gb of
> memory are readily accessible and some vendors let you reach up to
> 500gb of RAM. FYI, eBay has around 50M active users. If you maintained
> 1k of queryable data for each of their users, you would need only 50GB.
> (You would also need to recompile your app for 64bits so the math is a
> little more involved but you get my point).
>
> You don't need more CPU power to server your app than you can obtain in
> a single machine.
> Note: I have not benchmarked this code yet, but another Haskell server
> was benchmarked at near 1000 HTTP transactions per second on a Pentium
> 4 in 2000. Modern web servers with similar architecture can serve 10k
> HTTP transactions per second. eBay serves 400M page views per day,
> which comes to an average load of 5000 hps and a peak load of perhaps
> 50k hps. In other words, an OTS 8 CPUs system, could handle all of
> eBay's HTTP traffic.
>
> I am not saying that using HAppS, you could serve all of eBay on a
> single box. I am saying that your application is likely to be well
> within the constraints required for HAppS to make sense for it.
>
Why use PHP? Just read the README for HAppS:
"HAppS is a Haskell library for building industrial strength Internet
applications safely, quickly, and easily. With HAppS you focus entirely
on application functionality implemented in your favorite language and
you don't have to worry about making sure all sorts of server subsystems
are functioning properly."
Note the words "in your favorite language...". It still requires PHP.
Even on Apache and IIS, data will mostly stay in memory if you have
enough memory and have properly allocated your buffers and other memory
blocks.
Your benchmarks are meaningless without details on the implementation of
that benchmark. I can create a "benchmark" which does 1K ops/sec on a
486-33. And I can create one which has 1 transaction every 10 seconds
on a 3GHz Pentium.
And I'd love to see you implement ebay on a single box. They are a very
successful company. I suspect they know what they're doing a lot better
than you do, and if they could implement on a single system they would.
What are you - a troll?
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================
[Back to original message]
|