Callaghan's law : a given row can't be modified more than once per RTT
Josh Haberman : I had an epiphany one day when I realized that the kernel is nothing but a library with an expensive calling convention.
fread2281 : Insane speed calls for insane measures.
Luke Gorrie : hardware really wants to run fast and you only need to avoid getting in the way -- not too hard if you write the whole stack to match your application, but very hard if you …
…once. But what will actually happen to the clients who try to update the same row within the same RTT? This depends on which node in the cluster the writes are coming from:
From the same node: This will behave just like standard Innodb. The first transaction will acquire the necessary row locks while it commits (which will take the 1 RTT). The other transactions will lock wait until the lock(s) they need are available. The application just waits in those cases.
From other nodes: First …
80ms for TCP handshake (one RTT)
160ms for SSL handshake (two RTT's)
40ms for request to server
100ms for server processing
40ms for response from the server
That's 470 milliseconds for a single request, which translates to over 80% of network latency overhead as compared to the actual server processing time to fulfill the request - we have some work to do here! In fact, even 470 milliseconds may be an optimistic estimate:
If the server response does not fit into …
…resources, which require many connections, and TCP performance of each is closely tied to RTT."
Australia is a long way away from Singapore, Japan and the West Coast of America. It's a minimum 8 hours of flight from Australia to any one of those locations. For a humble Internet packet, the minimum latency is a 200ms. From Ilya's math, that means effective web performance is 10 times slower than a 20ms request.
At Engine Yard we have many Australian customers, …
…roundtrip of latency on top of the SSL negotiation. If you're counting, that is one RTT for the TCP handshake, two for SSL negotiation, and one for WebSocket upgrade - four RTT's before any application data can be exchanged!
Support for NPN was added in OpenSSL ( 1.0.0d+), NSS, and TLSLite. Chrome, Firefox, and Opera support SPDY (and hence NPN also), as well as many of the popular servers: Apache , nginx , Jetty , and node.js …
Fully Synchronous replication with a write latency increase equivalent to a ping RTT to the furthest node
Automatic cluster synchronization, both incremental and full restores
The ability to read and write on every node without needing to worry about replication delay
However, good engineers know there is always a trade-off . If someone tries to sell you on a technology that sounds amazing without telling you the tradeoffs, be careful.
One of the tradeoffs in Galera is how multi-node …
…120ms. This creates a 100-200ms of latency before a request can be sent because of th full round-trip ( RTT) to perform the TCP handshake.
Slow mobile experiences are largely due to the much higher RTT's (200-1000ms) on wireless networks. Reducing the number of outbound connections and the total byte size of your pages is the single best optimization you can make for mobile today.
Chrome reduces apparent latency using a host of clever anticipatory mechanisms:
For users with high latency, pulls and pushes to github can start quite slow. For example, with a RTT to github.com of 250ms, `git pull/push` usually takes a minimum of 4.5s to tell you ‘Already up-to-date'. This is largely due to the fact that git is using ssh and the startup time of an ssh connection requires many round trips. How many round trips exactly? We could read the RFC and OpenSSH implementation details... or we could just check what actually happens.
`ssh -v` shows …
…connection, without waiting for the server to respond. Doing so practically eliminates the round-trip time ( RTT) overhead of all but the first request, especially if the server responds quickly.
Lively delegates The Difference Between jQuery's .bind(), .live(), and .delegate() .
AmEx, TextMate and Git The tools
startups use , and not just SoMA startups (via @ mperham ).
Change change change I wholeheartedly agree with Mike Perham, please …
Radius: km / mi, RTT in vacuum: ms, RTT in fiber: ms.
Latency is constrained by the speed of light. Hence, 20ms RTT is equivalent to ~3000km, or a 1860 mile radius for light traveling in vacuum. We can't do any better without changing the laws of physics. Our data packets travel through fiber, which slows us down by a factor of ~1.52 , which translates to 2027 km, or a 1260 mile radius. What is remarkable is that we are already within a small constant factor …