If everyone is thinking the same, someone isn't thinking

Lori MacVittie

Subscribe to Lori MacVittie: eMailAlertsEmail Alerts
Get Lori MacVittie via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Top Stories by Lori MacVittie

If you hadn’t seen (and you might not have, it was a developer kind of thing after all) there was a big uproar caused by the removal of 11 lines of JavaScript from the popular NPM repository. You can read more about it but the TL;DR is this: dude removed some JavaScript that was relied on by thousands of other projects and basically broke them all. Because those projects not only relied on that code, but relied on code stored in an online repository. Now before we go further, I have to say that despite the millions (yes, millions) of projects that rely on JavaScript and CSS stored in web-hosted repositories, this is one of the first incidences of something like this happening. And there’s a lot more to this story than just the ramifications. But as I’m not a lawyer (and don’t play one on the Internet nor did I stay at a Holiday Inn Express last night) I’m just goin... (more)

Orchestration Is the Ultimate Order | @DevOpsSummit #DevOps #Microservices

Remember when you were in school, learning math, and you learned about the importance of the order of operations? You do? Okay, good. Pop quiz: 1 + 1 * 8 = ? The answer is 9, not 16. Why? Because multiplication has precedence. If you want to get to 16 with those numbers, we’ll need to add some parentheses: (1+1) * 8 = 16 Because parentheses have precedence over everything else. Okay, enough math for today. The point of this little exercise was simply to emphasize that order matters. And not just in math, but in just about anything that involves a series of steps. Like operations. ... (more)

Up for Thee But Not for Me. The Struggle Is Real By @LMacVittie | @DevOpsSummit #DevOps

It is an unwritten rule that web/app servers should never, ever pushed to 100% capacity. Never. Ignoring this unwritten rule will invariably result in the phenomenon we’ll call “up for thee but not for me”, which is simply the situation in which a web site or app responds to the guy in the next cube – but not for you. This usually occurs because the connection limit of the resources serving that app have been reached. The guy in the next cube already managed to get a connection before resources ran dry and thus he’s actually part of the problem. He’s got an open connection (or f... (more)

Handy Reference: RegEx in the Network By @LMacVittie | @DevOpsSummit #DevOps

Over the years I've shared a lot of posts on using programmability in the network to do, well, a lot of different things. Like implement A/B testing, and Canary deployments, and proxying requests for memcached. All these patterns can be and are implemented by proxies that offer a platform for taking advantage of data path programmability. One ingredient in the secret sauce that is data path programmability (a.k.a. programmability in the network) is the ability to match data. Usually that data is the URI, but sometimes it's a cookie or the user-agent or even data in the payload. ... (more)

Things Your Proxy Can’t Do | @DevOpsSummit #DevOps #Microservices

Proxies are one of the more interesting (in my no-doubt biased opinion) “devices” in the network. They’re the basis for caching, load balancing, app security, and even app acceleration services. They’re also a bridge between dev and ops and the network, being commonplace to all three groups and environments in most data center architectures. But not all proxies are built on the same architectural principles, which means not all proxies are created equal. A large number of proxies are half-proxies while others are full-proxies, and the differences between them are what mean the d... (more)