Your new post is loading...
Your new post is loading...
Jamstack’s core ideas are not something new. If you go back to the origins of the web, you’ll recap how developers used to create static HTML content manually, page by page, to serve the clients. The whole cycle from development to deployment was simpler for everyone involved. Obviously, with the complexities required for the systems nowadays, we can not go back to the way it used to be. However, Jamstack’s not focused on simply serving manually-created static HTML contents to gain in page load speed. It’s goal is on extracting the best out of these experiences to improve performance, productivity, and flexibility while keeping maintenance simpler. Aside from that, there’s a famous article from AWS known as The 5 Pillars of the AWS Well-Architected Framework, which the company wrote to share with the community their extensive experience in making great architectures. They are: Operational Excellence Security Reliability Efficiency (in terms of performance) Optimization (in terms of costs) When looking at a Jamstack architecture, you can spot each one of these pillars well implemented through: Reducing the number of internal architectural pieces that move within the systems to decrease the need for Ops people and, therefore, have better operational excellence. Making sure the app follows the consolidated best practices for security means which increases the overall security. Providing endless scalability to the various nodes in which your app may be running so that it’s reliable. Delivering the fastest experience possible due to the static nature of all website resources, including CDN. Decreasing costs since there are only static resources to host .
From web threats over IAM principles to auditing and monitoring, learn more about securing serverless architectures in this 2-parter infographic.
The AWS Well-Architected Framework helps cloud architects build the most secure, high-performing, resilient, and efficient infrastructure possible for their applications. The framework provides a consistent approach for customers and AWS Partner Network (APN) Partners to evaluate architectures, and provides guidance to implement designs that scale with your application needs over time. In this post, we provide an overview of the Well-Architected Framework’s five pillars and explore design principles and best practices. You can find more details—including definitions, FAQs, and resources—in each pillar’s whitepaper we link to below. Read the full Well-Architected whitepaper >> 1. Operational Excellence
Ce premier article de notre série consacrée au serverless analysera les principaux enjeux des objets connectés. Puis il abordera les promesses liées aux plateformes Serverless. Enfin il finira par s’interroger sur les écueils à éviter. Les solutions à ces questions seront l’objet des prochains articles de cette série.
Même si les plateformes dites Serverless ont la capacité de réduire à la fois la complexité de l’infrastructure et les coûts, elles ne constituent la meilleure option pour certaines applications, comme celles exploitant les mécanismes du multi-cloud.
|
I had my fair share in designing and building large systems. I've taken part in rewriting Uber's distributed payment systems, designing and shipping Skype on Xbox One and open-sourcing RIBs, Uber's mobile architecture framework. All of these systems had thorough designs, going through multiple iterations and had lots of whiteboarding and discussion. The designs then boiled down to a design document that was circulated for more feedback before we started building. All of these systems were large at scale: hundreds of developers build them - or on top of them - and they power systems used by millions of people per day. They were also not just greenfield projects. The payments system rewrite had to replace two, existing payments systems, used by tens of systems and dozens of teams, all without having any business impact. Rewriting the Uber app was a project that a few hundred engineers worked simultaneously on, porting existing functionality to a new architecture. Let me start with a few things that might sound surprising. First, none of these designs used any of the standard software architecture planning tools. We did not use UML, nor the 4+1 model, nor ADR, nor C4, nor dependency diagrams. We created plenty of diagrams, but none of them followed any strict rules. Just plain old boxes and arrows, similar this one describing information flow or this one outlining class structure and relationships between components. Two diagrams within the same design document often had a different layout and were often added and modified by different engineers. Second, there were no architects on the teams that owned the design. No IT architects or enterprise architects. True, neither Uber nor Skype/Microsoft have hands-off software architect positions. Engineers at higher levels, like staff engineers, are expected to still regularly code. For all the projects, we did have experienced engineers involved. However, no one person owned the architecture or design. While these experienced developers drove the design process, even the most junior team members were involved, often challenging decisions and offering other alternatives to discuss. Third, we had practically no references to the common architecture patterns and other jargon referenced in common software architecture literature, such as Martin Fowler's architecture guide. No mentions of microservices, serverless architecture, application boundaries, event-driven architecture, and the lot. Some of these did come up during brainstormings. However, there was no need to reference them in the design documents themselves.
Key Takeaways We can define different categories of design patterns, including OOP design patterns, organizational patterns, and so on. A number of design patterns are specifically suited to the serverless paradigm. The Pipes and Filters design pattern can be used to decouple a serveless system into simple functional units interconnected in a chain.
Serverless functions are the "A" in JAMstack. However, traditional serverless functions from public clouds have poor performance, limited language and framework selections, and are generally not well suited for complex tasks such as AI inference. In this talk, we will present a new type of serverless functions, based on WebAssembly, that supports Domain Specific Languages (DSLs) specifically designed for application tasks. The WebAssembly functions are low code, very fast, and can be deployed on edge network nodes.
With a bucket of Legos, you can tell any story. You can build an airplane or a dragon or a pirate ship—it’s whatever you can imagine. Christopher Miller One of the hallmarks of any digital transformation is increased speed and agility. Decisions need to be made more quickly using data and algorithms. Digital services need to be created rapidly to capture new revenue streams and increase customer experience. You might have heard your CTO or Chief Architect (or AWS) talk excitedly about a new software architecture that is going to save your business, make it more agile, innovative, and solve world hunger called microservices. Much has been written about the technical aspects of microservices architecture, but the non-technical aspects (business, organization, etc.) of microservices I find are not covered with the same frequency or energy. But before I cover the non-technical aspects of microservices, I think it’s worth trying to explain it in layman’s terms and the connection to business value.
Ne nous laissons pas distraire par les gadgets présentés à Vegas, la vraie innovation est du côté de l'architecture logicielle.
|