Hands-On Serverless Computing


Book Description

Deploy functions efficiently using different cloud-based serverless offerings Key Features Understand the concept of Function-as-a-Service Implement Serverless solutions using AWS Lambda, Azure Functions and Google Cloud Functions Practical approach towards choosing the best tool for your serverless environment Book Description Serverless applications and architectures are gaining momentum and are increasingly being used by companies of all sizes. Serverless software takes care of many problems that developers face when running systems and servers, such as fault tolerance, centralized logging, horizontal scalability, and deployments. You will learn how to harness serverless technology to rapidly reduce production time and minimize your costs, while still having the freedom to customize your code, without hindering functionality. Upon finishing the book, you will have the knowledge and resources to build your own serverless application hosted in AWS, Microsoft Azure, or Google Cloud Platform, and will have experienced the benefits of event-driven technology for yourself. This hands-on guide dives into the basis of serverless architectures and how to build them using Node.js as a programming language, Visual Studio Code for code editing, and Postman for quickly and securely developing applications without the hassle of configuring and maintaining infrastructure on three public cloud platforms. What you will learn Understand the benefts of serverless computing and know when to use it Develop serverless applications on AWS, Azure, and Google Cloud Get to grips with Function as a Service (FaaS) Apply triggers to serverless functions Build event-driven apps using serverless frameworks Use the Node.js programming language to build serverless apps Use code editors, such as Visual Studio Code, as development environments Master the best development practices for creating scalable and practical solutions Who this book is for This book is targeted towards developers, system administrators or any stakeholder working in the Serverless environment and want to understand how functions work. Basic idea of serverless architecture can be an added advantage




Hands-On Serverless Computing with Google Cloud


Book Description

Effectively deploy fully managed workloads using Google Cloud's serverless services Key FeaturesUse real-world use cases to understand the core functionalities of Functions as a ServiceExplore the potential of Cloud Run, Knative, Cloud Build, Google Kubernetes Engine, and Cloud StorageGet to grips with architectural decisions, seamless deployments, containerization, and serverless solutionsBook Description Google Cloud's serverless platform allows organizations to scale fully managed solutions without worrying about the underlying infrastructure. With this book, you will learn how to design, develop, and deploy full stack serverless apps on Google Cloud. The book starts with a quick overview of the Google Cloud console, its features, user interface (UI), and capabilities. After getting to grips with the Google Cloud interface and its features, you will explore the core aspects of serverless products such as Cloud Run, Cloud Functions and App Engine. You will also learn essential features such as version control, containerization, and identity and access management with the help of real-world use cases. Later, you will understand how to incorporate continuous integration and continuous deployment (CI/CD) techniques for serverless applications. Toward the concluding chapters, you will get to grips with how key technologies such as Knative enable Cloud Run to be hosted on multiple platforms including Kubernetes and VMware. By the end of this book, you will have become proficient in confidently developing, managing, and deploying containerized applications on Google Cloud. What you will learnExplore the various options for deploying serverless workloads on Google CloudDetermine the appropriate serverless product for your application use caseIntegrate multiple lightweight functions to build scalable and resilient servicesIncrease productivity through build process automationUnderstand how to secure serverless workloads using service accountsBuild a scalable architecture with Google Cloud Functions and Cloud RunWho this book is for If you are a cloud administrator, architect, or developer who wants to build scalable systems and deploy serverless workloads on Google Cloud, then this book is for you. To get the most out of this book, a basic understanding of the serverless ecosystem and cloud computing will be beneficial.




Hands-On Serverless Applications with Go


Book Description

Learn to build, secure, deploy, and manage your serverless application in Golang with AWS Lambda Key Features Implement AWS lambda to build scalable and cost-efficient applications in Go Design and set the data flow between cloud services and custom business logic Learn to design Lambda functions using real-world examples and implementation scenarios Book Description Serverless architecture is popular in the tech community due to AWS Lambda. Go is simple to learn, straightforward to work with, and easy to read for other developers; and now it's been heralded as a supported language for AWS Lambda. This book is your optimal guide to designing a Go serverless application and deploying it to Lambda. This book starts with a quick introduction to the world of serverless architecture and its benefits, and then delves into AWS Lambda using practical examples. You'll then learn how to design and build a production-ready application in Go using AWS serverless services with zero upfront infrastructure investment. The book will help you learn how to scale up serverless applications and handle distributed serverless systems in production. You will also learn how to log and test your application. Along the way, you'll also discover how to set up a CI/CD pipeline to automate the deployment process of your Lambda functions. Moreover, you'll learn how to troubleshoot and monitor your apps in near real-time with services such as AWS CloudWatch and X-ray. This book will also teach you how to secure the access with AWS Cognito. By the end of this book, you will have mastered designing, building, and deploying a Go serverless application. What you will learn Understand how AWS Lambda works and use it to create an application Understand how to scaleup serverless applications Design a cost-effective serverless application in AWS Build a highly scalable and fault-tolerant CI/CD pipeline Understand how to troubleshoot and monitor serverless apps in AWS Discover the working of APIs and single page applications Build a production-ready serverless application in Go Who this book is for This book is for Go developers who would like to learn about serverless architecture. Go programming knowledge is assumed. DevOps and Solution Architects who are interested in building serverless applications in Go can also choose this book.




Beginning Serverless Computing


Book Description

Learn the basics of serverless computing and how to develop event-driven architectures with the three major cloud platforms: Amazon Web Services, Microsoft Azure, and Google Cloud. This hands-on guide dives into the foundations of serverless computing, its use cases, and how to apply it using developer tools such as Node.js, Visual Studio Code, Postman, and Serverless Framework. You will apply the fundamentals of serverless technology from the ground up, and come away with a greater understanding of its power and how to make it work for you. This book teaches you how to quickly and securely develop applications without the hassle of configuring and maintaining infrastructure. You will learn how to harness serverless technology to rapidly reduce production time and minimize your costs, while still having the freedom to customize your code, without hindering functionality. Upon completion, you will have the knowledge and resources to build your own serverless application hosted in AWS, Azure, or Google Cloud and will have experienced the benefits of event-driven technology for yourself. What You'll Learn Gain a deeper understanding of serverless computing and when to use it Use development tools such as Node.js, Postman, and VS code to quickly set up your serverless development environment and produce applications Apply triggers to your serverless functions that best suit the architecture for the problem the functions are solving Begin building applications across cloud providers that utilize the power of serverless technology Understand best development practices with serverless computing to maintain scalable and practical solutions Code with an agnostic approach to cloud providers to minimize provider dependency Who This Book Is For Any developer looking to expand current knowledge of serverless computing, its applications, and how to architect serverless solutions, or someone just beginning in these areas




AI as a Service


Book Description

AI as a Service is a practical handbook to building and implementing serverless AI applications, without bogging you down with a lot of theory. Instead, you’ll find easy-to-digest instruction and two complete hands-on serverless AI builds in this must-have guide! Summary Companies everywhere are moving everyday business processes over to the cloud, and AI is increasingly being given the reins in these tasks. As this massive digital transformation continues, the combination of serverless computing and AI promises to become the de facto standard for business-to-consumer platform development—and developers who can design, develop, implement, and maintain these systems will be in high demand! AI as a Service is a practical handbook to building and implementing serverless AI applications, without bogging you down with a lot of theory. Instead, you’ll find easy-to-digest instruction and two complete hands-on serverless AI builds in this must-have guide! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Cloud-based AI services can automate a variety of labor intensive business tasks in areas such as customer service, data analysis, and financial reporting. The secret is taking advantage of pre-built tools like Amazon Rekognition for image analysis or AWS Comprehend for natural language processing. That way, there’s no need to build expensive custom software. Artificial Intelligence (AI), a machine’s ability to learn and make predictions based on patterns it identifies, is already being leveraged by businesses around the world in areas like targeted product recommendations, financial forecasting and resource planning, customer service chatbots, healthcare diagnostics, data security, and more. With the exciting combination of serverless computing and AI, software developers now have enormous power to improve their businesses’ existing systems and rapidly deploy new AI-enabled platforms. And to get on this fast-moving train, you don’t have to invest loads of time and effort in becoming a data scientist or AI expert, thanks to cloud platforms and the readily available off-the-shelf cloud-based AI services! About the book AI as a Service is a fast-paced guide to harnessing the power of cloud-based solutions. You’ll learn to build real-world apps—such as chatbots and text-to-speech services—by stitching together cloud components. Work your way from small projects to large data-intensive applications. What's inside - Apply cloud AI services to existing platforms - Design and build scalable data pipelines - Debug and troubleshoot AI services - Start fast with serverless templates About the reader For software developers familiar with cloud basics. About the author Peter Elger and Eóin Shanaghy are founders and CEO/CTO of fourTheorem, a software solutions company providing expertise on architecture, DevOps, and machine learning. Table of Contents PART 1 - FIRST STEPS 1 A tale of two technologies 2 Building a serverless image recognition system, part 1 3 Building a serverless image recognition system, part 2 PART 2 - TOOLS OF THE TRADE 4 Building and securing a web application the serverless way 5 Adding AI interfaces to a web application 6 How to be effective with AI as a Service 7 Applying AI to existing platforms PART 3 - BRINGING IT ALL TOGETHER 8 Gathering data at scale for real-world AI 9 Extracting value from large data sets with AI




Learning Apache OpenWhisk


Book Description

Serverless computing greatly simplifies software development. Your team can focus solely on your application while the cloud provider manages the servers you need. This practical guide shows you step-by-step how to build and deploy complex applications in a flexible multicloud, multilanguage environment using Apache OpenWhisk. You’ll learn how this platform enables you to pursue a vendor-independent approach using preconfigured containers, microservices, and Kubernetes as your cloud operating system. Michele Sciabarrà demonstrates how to build a serverless application using classical design patterns and the programming language or languages that best fit your task. You’ll start by building a simple serverless application hands-on before diving into the more complex aspects of the OpenWhisk platform. Examine how OpenWhisk’s serverless architecture works, including the use of packages, actions, sequences, triggers, rules, and feeds Learn how OpenWhisk compares to existing architectures, such as Java Enterprise Edition Manipulate OpenWhisk features using the command-line interface or a JavaScript API Design applications using common Gang of Four design patterns Use architectural design patterns such as model-view-controller to combine several OpenWhisk actions Learn how to test and debug your code in a serverless environment




Building Serverless Applications with Google Cloud Run


Book Description

Learn how to build a real-world serverless application in the cloud that's reliable, secure, maintainable, and scalable. If you have experience building web applications on traditional infrastructure, this hands-on guide shows you how to get started with Cloud Run, a container-based serverless product on Google Cloud. Through the course of this book, you'll learn how to deploy several example applications that highlight different parts of the serverless stack on Google Cloud. Combining practical examples with fundamentals, this book will appeal to developers who are early in their learning journey as well as experienced practitioners. Build a serverless application with Google Cloud Run Learn approaches for building containers with (and without) Docker Explore Google Cloud's managed relational database: Cloud SQL Use HTTP sessions to make every user's experience unique Explore identity and access management (IAM) on Cloud Run Provision Google Cloud resources using Terraform Learn how to handle background task scheduling on Cloud Run Move your service from Cloud Run to Knative Serving with little effort




Hands-On Azure for Developers


Book Description

Gain practical skills with Azure and understand how to start developing scalable and easy-to-maintain cloud applications Key FeaturesGet up and running with the development aspects of Azure cloudBuild fault-tolerant and scalable applications on AzureA practical, developer-centric guide for Azure developersBook Description Microsoft Azure is one of the fastest growing public cloud service providers in the market currently, and also holds the second highest market share after AWS. Azure has a sophisticated set of services that will help you build fault-tolerant and scalable cloud-based applications. Hands-On Azure for Developers will take you on a journey through multiple PaaS services available in Azure, including App Services, Functions, and Service Fabric, and explain in detail how to build a complete and reliable system with ease. You will learn about how to maximize your skills when building cloud-based solutions leveraging different SQL/NoSQL databases, serverless and messaging components, and even search engines such as Azure Search. In the concluding chapters, this book covers more advanced scenarios such as scalability best practices, serving static content with Azure CDN, and distributing loads with Azure Traffic Manager. By the end of the book, you will be able to build modern applications on the Azure cloud using the most popular and promising technologies, which will help make your solutions reliable, stable, and efficient. What you will learnImplement serverless components such as Azure functions and logic appsIntegrate applications with available storages and containersUnderstand messaging components, including Azure Event Hubs and Azure Queue StorageGain an understanding of Application Insights and other proper monitoring solutionsStore your data with services such as Azure SQL and Azure Data Lake StorageDevelop fast and scalable cloud applicationsWho this book is for Hands-On Azure for Developers is for developers who want to build highly scalable cloud-based applications on Azure. Prior knowledge of Azure services will be an added advantage.




Hands-On Cloud-Native Applications with Java and Quarkus


Book Description

Build robust and reliable Java applications that works on modern infrastructure, such as containers and cloud, using the new features in Quarkus 1.0 Key FeaturesBuild apps with faster boot time and low RSS memory using the latest Quarkus 1.0 featuresSeamlessly integrate imperative and reactive programming models to build modern Java applicationsDiscover effective solutions for running Java on serverless apps, microservices, containers, FaaS, and the cloudBook Description Quarkus is a new Kubernetes-native framework that allows Java developers to combine the power of containers, microservices, and cloud-native to build reliable applications. The book is a development guide that will teach you how to build Java-native applications using Quarkus and GraalVM. We start by learning about the basic concepts of a cloud-native application and its advantages over standard enterprise applications. Then we will quickly move on to application development, by installing the tooling required to build our first application on Quarkus. Next, we’ll learn how to create a container-native image of our application and execute it in a Platform-as-a-Service environment such as Minishift. Later, we will build a complete real-world application that will use REST and the Contexts and Dependency injection stack with a web frontend. We will also learn how to add database persistence to our application using PostgreSQL. We will learn how to work with various APIs available to Quarkus such as Camel, Eclipse MicroProfile, and Spring DI. Towards the end, we will learn advanced development techniques such as securing applications, application configuration, and working with non-blocking programming models using Vert.x. By the end of this book, you will be proficient with all the components of Quarkus and develop-blazing fast applications leveraging modern technology infrastructure. What you will learnBuild a native application using Quarkus and GraalVMSecure your applications using Elytron and the MicroProfile JWT extensionManage data persistence with Quarkus using PostgreSQLUse a non-blocking programming model with QuarkusLearn how to get Camel and Infinispan working in native modeDeploy an application in a Kubernetes-native environment using MinishiftDiscover Reactive Programming with Vert.xWho this book is for The book is for Java developers and software architects who are interested in learning a promising microservice architecture for building reliable and robust applications. Knowledge of Java, Spring Framework, and REST APIs is assumed.




Hands-On Serverless Applications with Kotlin


Book Description

Choose the right architecture and design it using design patterns to create a serverless application that cuts costs and is easily scalable Key FeaturesDesign enterprise ready serverless applications that effortlessly meet your customers’ requirementsEffectively deploy, manage, monitor, and orchestrate serverless applications using AWSUse Cloud9 to provision a secured development environment in the cloudBook Description Serverless is a cloud computing execution model where the cloud provider dynamically manages the allocation and provisioning of servers. Many companies have started using serverless architectures to cut costs and improve scalability. Hands-On Serverless Applications with Kotlin is your one-stop guide to designing serverless architectures for your applications with AWS and Kotlin. To start with, you’ll explore the fundamentals of serverless architecture and how AWS Lambda functions work. You will then learn to design, build, secure, and deploy your application to production. In addition to these activities, you’ll understand how to implement non-functional requirements such as auditing and logging. Moving on, you’ll discover how to scale up and orchestrate serverless applications using an open source framework and handle distributed serverless systems in production. By the end of the book, you’ll have gained the knowledge needed to build scalable and cost-efficient Kotlin applications with a serverless framework. What you will learnDesign a serverless architectureUse AWS Lambda to contain your serverless APIExplore the various ways to keep serverless apps safe and secureUnderstand how a serverless API allows you to use huge infrastructure and cut costsDiscover how to handle distributed systems in KotlinDesign the data flow between cloud services and custom business logicSecure your Kotlin AWS serverless applicationMaster Kotlin design patterns for serverless applicationsWho this book is for Hands-On Serverless Applications with Kotlin is for you if you are a Kotlin developer who wants to learn about serverless architectures. It is assumed that you have some knowledge of Kotlin programming and AWS.