Best of CloudSeptember 2024

  1. 1
    Article
    Avatar of communityCommunity Picks·2y

    Top 50 System Design Terminologies You Must Know

    Master key system design terminologies essential for acing interviews with practical examples and additional learning resources. Concepts covered include scalability, load balancing, microservices, CAP theorem, sharding, latency, throughput, and many more crucial for building efficient and scalable systems.

  2. 2
    Article
    Avatar of technodudeTechnoDude·2y

    You don't have to pay for web hosting if you know where to look.

    Discover top-notch resources for hosting your website for free, including Netlify, GitHub Pages, Heroku, Firebase, AwardSpace, InfinityFree, and TasteWP. These platforms offer a range of features from powerful serverless platforms to easy WordPress site creation, ideal for beginners and small projects.

  3. 3
    Article
    Avatar of freecodecampfreeCodeCamp·2y

    Skills You Need to Become a Backend Developer – A Roadmap for Beginners

    This guide outlines the essential skills needed to become a backend developer, providing a step-by-step roadmap for beginners. Key areas covered include understanding the role of a backend developer, mastering databases and server-side programming languages, building and integrating APIs, and deploying applications to the cloud. The guide also recommends tools and software commonly used in backend development, such as SQL databases, frameworks, web servers, and security protocols.

  4. 4
    Video
    Avatar of beabetterdevBe A Better Dev·2y

    The BEST Project Idea to Learn AWS

    This post shares an engaging project idea to learn AWS hands-on, focusing on essential services like EC2, RDS, S3, IAM, VPC, and CloudWatch. The project involves building a web scraper to extract data from websites, providing practical skills that are valuable for a career in cloud engineering. The author emphasizes the importance of hands-on experience over certifications for solidifying AWS concepts.

  5. 5
    Article
    Avatar of newstackThe New Stack·2y

    Learning Linux? Start Here

    Learning Linux has never been easier, thanks to numerous resources and user-friendly distributions. The key areas to focus on include mastering the command line, learning access control methods, managing hardware and services, selecting and deploying a distribution, system maintenance, and configuring networking. Hands-on experience with virtual machines and using tools like Vim, Nano, systemctl, and ssh is essential. Efficient user and permission management, along with understanding package managers and firewalls, are crucial skills for Linux administration. Start with a structured learning plan to become proficient in this versatile operating system.

  6. 6
    Article
    Avatar of francofernandoThe Polymathic Engineer·2y

    How to design a system for scale

    Scalability is essential for software engineers as applications grow. Three key techniques for scaling systems are adding server clones, functional partitioning, and data partitioning. Adding server clones involves creating interchangeable copies of existing servers to distribute loads. Functional partitioning breaks down the system into smaller, independent components each handling specific tasks. Data partitioning divides datasets across multiple machines to speed up processing and storage. Each technique has its pros and cons and requires careful consideration for effective implementation.

  7. 7
    Article
    Avatar of devtronDevtron·2y

    Kubernetes Architecture: The Ultimate Guide

    Kubernetes is an open-source container orchestration tool used by millions of companies to manage and scale applications across multiple clusters worldwide. It consists of various core components such as the API Server, ETCD, Scheduler, Controller Manager, and Cloud Controller Manager. Worker nodes, kubelets, kube-proxy, and container runtimes are essential for the functioning of Kubernetes. The system is highly extensible, supporting add-ons like CNI, CoreDNS, Metrics Server, and Kubernetes Dashboard to enhance its capabilities.

  8. 8
    Article
    Avatar of bytebytegoByteByteGo·2y

    EP131: How Uber Served 40 Million Reads with Integrated Redis Cache?

    Uber uses an integrated caching solution named CacheFront with Redis, Docstore, and MySQL for efficient data handling. The system fetches data from Redis for cache hits and uses MySQL for cache misses, leveraging a CDC service for invalidation. Multi-region cache warming with Redis streaming handles potential database overloads during region fail-overs, while strategic sharding ensures even load distribution across instances.

  9. 9
    Article
    Avatar of techworld-with-milanTech World With Milan·2y

    What are the main Cloud Design Patterns?

    Cloud Design Patterns offer practical solutions to address the common fallacies associated with distributed computing, such as network reliability, latency, and security concerns. These patterns are essential for building dependable, scalable, and secure cloud systems. Key groups of patterns include data management, design and implementation, messaging, security, and reliability. Learn about implementing these patterns to improve system performance and resilience, as well as the various load-balancing options available in Azure for enhanced system availability and performance.

  10. 10
    Article
    Avatar of communityCommunity Picks·2y

    Kubernetes and Docker Container Management Software

    Portainer is a versatile container management software designed for fast, secure, and user-friendly deployment of Docker and Kubernetes environments. It supports multi-cluster and multi-device management, provides centralized access and policy management, and offers a unified user experience. Being self-hosted, Portainer keeps operations secure within your network.

  11. 11
    Article
    Avatar of bytebytegoByteByteGo·2y

    How Shopify Manages its Petabyte Scale MySQL Database

    Shopify handles its petabyte-scale MySQL database using innovative techniques to ensure zero downtime, maintain read consistency, and implement efficient backup and restore processes. Shard balancing is used to distribute traffic loads efficiently across database instances. Ghostferry, an in-house tool, assists in database migration with minimal disruption. Data replication is managed to minimize lag, ensuring time-sensitive reads are accurate. Finally, Shopify leverages Google Cloud Platform's persistent disk snapshots for fast and reliable database backups and restores.

  12. 12
    Article
    Avatar of golangGo·2y

    Building LLM-powered applications in Go

    As Large Language Models (LLMs) and embedding models improve, more developers are integrating LLMs into their applications. Go excels in building LLM-powered applications due to its support for REST/RPC protocols, concurrency, and performance. This post demonstrates creating a Retrieval Augmented Generation (RAG) server in Go, which uses HTTP endpoints to add documents to a knowledge base and answer user questions. It explores implementing this with tools like Google Gemini API, Weaviate, LangChainGo, and Genkit for Go, highlighting Go's strengths in cloud-native application development.

  13. 13
    Article
    Avatar of bytebytegoByteByteGo·2y

    Millions of Requests Per Hour: SoundCloud’s Microservices Evolution

    SoundCloud evolved from a monolithic architecture to a sophisticated multi-tier microservices setup to handle millions of requests per hour. By implementing Backends-for-Frontends (BFF), Value-Added Services (VAS), and Domain Gateways, SoundCloud optimized its system for better client-specific responses, reduced operational risk, and improved development speed. BFFs provide tailored API gateways for different clients, while VAS centralize business logic to minimize code duplication. Domain Gateways further segregate business concerns, enhancing scalability and autonomy within the system.

  14. 14
    Video
    Avatar of fireshipFireship·2y

    How To Make AWS Not Suck

    Explore how to optimize your use of big cloud platforms like AWS with open-source tools such as Palumi, SST, Docker Build Cloud, and LocalStack. Learn how these tools can help manage infrastructure efficiently, reduce costs, and avoid vendor lock-in. Also, discover Encore, a tool that integrates infrastructure as code directly into your application code for a seamless development experience.

  15. 15
    Article
    Avatar of medium_jsMedium·2y

    Building a Developer Platform in 2025

    Internal Developer Platforms (IDPs) are now essential for handling the complexity of modern software development. They provide centralized hubs for orchestrating the entire software lifecycle, facilitating faster delivery, standardization, and scalability. IDPs ensure developers can build, test, and ship features efficiently. Critical elements include reusable components, automated versioning, CI/CD pipelines, and AI-driven tools for improved collaboration and automation. Solutions like Bit demonstrate how composable platforms support these needs, enabling organizations to reduce costs and boost innovation.

  16. 16
    Article
    Avatar of communityCommunity Picks·2y

    Linux Containers

    Incus is a next-generation system container and virtual machine manager offering a user experience similar to a public cloud. It supports a variety of Linux distributions, multiple storage backends, and diverse network types. Key features include a secure and intuitive API, scalability, event-based logging, and comprehensive backup and recovery options. Incus runs on any recent Linux distribution, with the client also available for Windows and macOS. The current LTS release is Incus 6.0, supported until June 2029.

  17. 17
    Article
    Avatar of javarevisitedJavarevisited·2y

    The 2024 Database Admin RoadMap

    This guide outlines the roadmap to becoming a Database Administrator in 2024, covering essential skills like SQL, database systems, advanced SQL topics, database administration, and cloud databases. Recommended learning resources include courses for SQL, Linux, Oracle, and PostgreSQL. The role is highly in-demand and offers robust career prospects.

  18. 18
    Video
    Avatar of youtubeYouTube·2y

    Mastering AWS : Complete Course with Real-Time Tasks in 15 Hours | PART - 1

    The post covers the basics of IP addressing, types of IP addresses (IPv4 and IPv6), their ranges, and the concept of private versus public IPs. It also delves into setting up a Virtual Private Cloud (VPC) in AWS, including subnets, Internet Gateways, Network Address Translation (NAT), and VPC peering to allow communication across different VPCs. The tutorial is aimed at enhancing understanding of networking within cloud environments, particularly AWS.

  19. 19
    Article
    Avatar of communityCommunity Picks·2y

    Upload File in Laravel

    Learn how to upload files in Laravel using its unified API for various storage systems, including local disk and remote storage like AWS S3. The Storage Facade allows seamless interaction with different storage drivers via configurable 'disks'. The public disk setup is explained, along with example code for both request-based and Storage facade-based file uploads.

  20. 20
    Article
    Avatar of quastorQuastor Daily·2y

    Introduction to Chaos Engineering

    Chaos Engineering involves applying the scientific method to distributed systems to discover potential failure modes by intentionally introducing disruptions. This practice helps increase confidence in system reliability. Key principles include running experiments in production, minimizing the blast radius, and automating experiments. Chaos Engineering differs from Fault Injection Testing by uncovering unknown unknowns rather than testing specific conditions. Examples from companies like Facebook, LinkedIn, Audible, Twitch, and Target illustrate varied implementations and benefits.

  21. 21
    Video
    Avatar of youtubeYouTube·2y

    Proxy vs Reverse Proxy vs Load Balancer | Simply Explained

    Understand the differences between proxies, reverse proxies, and load balancers, and their importance in managing web traffic and security. Real-life analogies help explain their functions and why both cloud load balancers and reverse proxies are often used together for optimal performance and security. The key functionalities such as caching and SSL termination are discussed, alongside practical implementation in environments like Kubernetes.

  22. 22
    Article
    Avatar of javarevisitedJavarevisited·2y

    Top 10 Resources to Master Kubernetes in 2024

    Mastering Kubernetes is crucial for IT professionals as it is the leading container orchestration platform. This post shares the top 10 resources for learning Kubernetes in 2024, including official tutorials, online courses from platforms like Coursera and Udemy, and essential books such as 'Kubernetes — Up and Running'. These materials cater to beginners and intermediate users, offering hands-on labs, interactive content, practical examples, and comprehensive guides for a well-rounded understanding of Kubernetes.

  23. 23
    Video
    Avatar of dreamsofcodeDreams of Code·2y

    Setting up a production ready VPS is a lot easier than I thought.

    Deploying applications to the cloud has become much easier with numerous platforms as a service, but VPS offers more consistent billing and better suitability for long-running tasks. The author shares their experience and challenges in setting up a production-ready VPS, including configuring DNS, enhancing security, setting up automated deployments, and using traffic for load balancing and TLS certificates. Tools like Watchtower and traffic simplify these tasks, making it easier to attain a reliable and secure production environment.

  24. 24
    Article
    Avatar of last9Last9·2y

    Top 10 Platform Engineering Tools in 2024

    Platform engineering is revolutionizing software development and operations by providing robust, scalable, and user-friendly platforms. This guide outlines 10 top tools in 2024, such as Kubernetes, Terraform, and Argo CD, which simplify workflows, improve collaboration, and increase efficiency. Distinguishing platform engineering from DevOps and SRE, it focuses on building technical foundations for efficient development. Key tools include infrastructure provisioning, CI/CD pipelines, and monitoring solutions that enhance developer productivity and system reliability.

  25. 25
    Article
    Avatar of communityCommunity Picks·2y

    Interning in Go

    Go 1.23 introduces a new package, unique, for interning objects to reduce memory usage by re-using objects of equal value rather than keeping duplicates in memory. Examples include handling large strings and slicing them to create smaller substrings for efficient memory management. Interning helps in various environments like stateful web servers and batch jobs where memory resources are limited.