Internets
The best thing about the internet is how it puts you in contact with people smarter than you.
The worst thing about the internet is how it puts you in contact with people smarter than you.
InternetsThe best thing about the internet is how it puts you in contact with people smarter than you. The worst thing about the internet is how it puts you in contact with people smarter than you.
"I haven’t taken risks, because I’m content. I haven’t pushed myself […], because I’m making enough to live on."
Have I mentioned how much I hate PHP this week? Comet with Bayeux: node.js vs Jetty and cometdI’ve been looking at the relative performance of cometD-jetty and node.js for a Bayeux based publish/subscribe server. I had high hopes for node.js. Apps being written in Javascript should mean pretty big maintainability wins for a normal web development house, versus the rather huge Java codebase that is Jetty. Unfortunately node.js got thoroughly trounced by Jetty in the not-terribly-scientific benchmarks I conducted. I used the Jetty load test tool described here to do the load testing. The faye node.js Bayeux library was used as the node.js app. Both benchmarks were run on the same machine, a 4 core i7 920 @ 2.67GHz (hyperthreading turned on) with 6Gb of RAM. The final results were as follows: jetty 6.1.22 (512mb)
100 rooms, 5 rooms per client, 900 clients
---
Messages - Success/Expected = 442758/449601
Messages - Elapsed/Rate = 12192 ms / 36313 messages/s
Messages - Latency Distribution Curve (X axis: Frequency, Y axis: Latency):
@ _ 155 ms (117638)
@ _ 309 ms (256939)
@ _ 462 ms (42652)
@ _ 615 ms (7851)
@ _ 769 ms (3172)
@ _ 922 ms (2961)
@ _ 1076 ms (2885)
@ _ 1229 ms (2028)
@ _ 1382 ms (1381)
@ _ 1536 ms (1576)
@ _ 1689 ms (986)
@ _ 1843 ms (564)
@ _ 1996 ms (410)
@ _ 2149 ms (679)
@ _ 2303 ms (409)
@ _ 2456 ms (220)
@ _ 2610 ms (179)
@ _ 2763 ms (133)
@ _ 2916 ms (42)
@ _ 3070 ms (53)
Messages - Latency Min/Ave/Max = 2/250/3070 ms
node.js
100 rooms, 5 rooms per client, 900 clients
---
Messages - Success/Expected = 440234/449428
Messages - Elapsed/Rate = 12254 ms / 35924 messages/s
Messages - Latency Distribution Curve (X axis: Frequency, Y axis: Latency):
@ _ 123 ms (1901)
@ _ 239 ms (9046)
@ _ 356 ms (22316)
@ _ 472 ms (33240)
@ _ 589 ms (36656)
@ _ 705 ms (37025)
@ _ 822 ms (37323)
@ _ 938 ms (37489)
@ _ 1055 ms (37680)
@ _ 1171 ms (37415)
@ _ 1288 ms (37516)
@ _ 1404 ms (34069)
@ _ 1521 ms (29466)
@ _ 1637 ms (24187)
@ _ 1753 ms (15184)
@ _ 1870 ms (7240)
@ _ 1986 ms (1828)
@ _ 2103 ms (460)
@ _ 2219 ms (127)
@ _ 2336 ms (66)
Messages - Latency Min/Ave/Max = 7/961/2336 ms
As we can see, node.js just didn’t have the same low latency as Jetty, which is a pretty major problem for pub/sub. Demo Driven _Another addition to the “Demo Driven _” family, to live alongside Demo Driven Development:
Otherwise known as, “oh shit, our seriously over provisioned development servers are going make it look like the software we’re demoing is horribly slow!”. What the hell, PHPI know this won’t come as a surprise to anyone, but damn does PHP do some dumb shit: $string = 'a string of text';
if (isset($string['test'])) {
echo "What the hell!?";
}
"In summary, the two opinions about your abilities that you should never trust are your own opinions, and the majority’s opinions."
Everyone starts somewhere.
"… I think it’s important, for anyone who cares about their web sites, to understand just what you’re getting into when you decide to host your own WordPress site."
"One of the most important concepts here is that to store or retrieve data with a Backblaze Storage Pod, it is always through HTTPS. There is no iSCSI, no NFS, no SQL, no Fibre Channel. None of those technologies scales as cheaply, reliably, goes as big, nor can be managed as easily as stand-alone pods with their own IP address waiting for requests on HTTPS."
Petabytes on a budget: How to build cheap cloud storage | Backblaze Blog At a certain point, commidity scales best
1 of 2
Older Posts »
|