From 8438de5e9d8098927c92e23e076d2f81a6364c54 Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Mon, 10 Jul 2023 18:01:34 +0200 Subject: [PATCH 01/11] updates definitions for FaaS and Serverless Signed-off-by: Johannes Manner --- content/en/function-as-a-service.md | 48 +++++++++++++++++------------ content/en/serverless.md | 45 +++++++++++++++------------ 2 files changed, 55 insertions(+), 38 deletions(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index cffa8bfdbb..17d2f49d4f 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -7,30 +7,40 @@ tags: ["infrastructure", "", ""] ## What it is -Function as a Service (FaaS) is a type of [serverless](/serverless/) [cloud computing](/cloud-computing/) [service](/service/) -that allows executing code in response to events -without maintaining the complex infrastructure -typically associated with building and launching [microservices](/microservices/) applications. -With FaaS, users manage only functions and data while the cloud provider manages the application. -This allows developers to get the functions they need without paying for services when code isn’t running. +"Function as a Service (FaaS) is a compute service model in line with other as a Service offerings. +The core of this concept are event-triggered, single-scoped functions, i.e. cloud functions, which scale up and +down on demand without user interaction. +This [autoscaling](/auto-scaling/) property is one of the unique characteristics of FaaS. +Such platforms conceptually start a single function instance for each request and tear this instance down again +after the function is executed. Therefore, +cloud functions are inherently stateless. +Which means that platform providers are able to offer a genuine pay as-you-go billing model where users are only +charged when the cloud function is running as instances scaled +to zero results in no idling costs. +Other comparable computing models like [Platform as a Service (PaaS)](/platform-as-a-service/) based offerings always +have at least a single instance running to serve requests." [(Manner 2023, p.521)](https://doi.org/10.1109/CLOUD60044.2023.00068) + ## Problem it addresses -In a traditional on-premises scenario, a business manages and maintains its own data center. -The business must invest in servers, storage, software, and other technologies -and potentially hire an IT staff or contractors to purchase, manage, and upgrade all the equipment and licenses. -The data center has to be built to meet peak demand, even when workloads decline and those resources stand idle. -Conversely, if the business grows quickly, the IT department might struggle to keep up. -Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) cloud computing model, -users pre-purchase capacity units, meaning you pay a public cloud provider for always-on server components to run your apps. -It’s the user’s responsibility to scale up server capacity during times of high demand -and scale down when that capacity is no longer needed. +In a traditional on-premise scenario, a business manages and maintains its own data center. +The business must invest in servers, storage, software, and other technologies +and potentially hire IT staff or contractors to purchase, manage, and upgrade all the equipment and licenses. +The data center has to be built to meet peak demand, even when workloads decline and those resources stand idle. +Conversely, if the business grows quickly, the IT department might struggle to keep up. +Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) cloud computing model, +users pre-purchase capacity units, meaning you pay a public cloud provider for always-on server components to run your apps. +It’s the user’s responsibility to scale up server capacity during times of high demand +and scale down when that capacity is no longer needed. The cloud infrastructure necessary to run an app is active even when the app isn’t being used. ## How it helps -FaaS gives developers an [abstraction](/abstraction/) for running web applications in response to events without managing servers. -For example, uploading a file could trigger custom code that transcodes the file into various formats. -FaaS infrastructure will auto-scale the code for heavy use, -and the developer does not have to spend any time or resources building the code for [scalability](/scalability/). +FaaS gives developers an [abstraction](/abstraction/) for running web applications in response to events without managing servers. +For example, uploading a file could trigger custom code that transcodes the file into various formats. +FaaS infrastructure will auto-scale the code for heavy use, +and the developer does not have to spend any time or resources building the code for [scalability](/scalability/). Billing is based on computation time alone, which means businesses do not have to pay when the functions are not in use. + +See also the glossary for [Serverless](/serverless/). +Serverless and FaaS are often used as synonyms, but there is a difference. \ No newline at end of file diff --git a/content/en/serverless.md b/content/en/serverless.md index 7ea7dfa7b1..0a1b9c8dc4 100644 --- a/content/en/serverless.md +++ b/content/en/serverless.md @@ -1,3 +1,4 @@ + --- Title: Serverless Status: Completed @@ -7,29 +8,35 @@ tags: ["architecture", "", ""] ## What it is -Serverless is a cloud native development model that allows developers to -build and run applications without having to manage servers. -There are still servers in serverless, but they are [abstracted](/abstraction/) away from app development. -A cloud provider handles the routine work of provisioning, maintaining, and [scaling](/scalability/) the server infrastructure. -Developers can simply package their code in [containers](/container/) for deployment. -Once deployed, serverless apps respond to demand and automatically scale up and down as needed. -Serverless offerings from public cloud providers are usually metered on-demand through an event-driven execution model. -As a result, when a serverless function is sitting idle, it doesn’t cost anything. +"Serverless Computing is a generic computing approach where servers are [abstracted](/abstraction/) from the user. +All operational aspects like managing physical machines and providing VMs are tasks of the service provider. +A service provider is typically a public cloud provider but also in-house IT departments can act as service providers for their own development teams. +They offer interfaces for service users like SDKs, CLIs or OCI compliant runtimes where the focus is on code, configuration options or deploying/uploading artifacts. +All offerings are pay-per-use. +[Scaling](/scalability/) and provisioning of additional computing, storage or network resources happens without user interference based on the demand of the deployed applications and ecosystem services like data storage. +A provider of a serverless platform pools resources and serves multiple users on the same physical machine. +Tenants are isolated via virtualization approaches in particular [VMs](/virtual-machine/)." [(Manner 2023, p.520)](https://doi.org/10.1109/CLOUD60044.2023.00068) + +Serverless is therefore an umbrella term for all services with these characteristics. +Serverless offerings range from [Platform-as-a-Service (PaaS)](/platform-as-a-service/) until [Software-as-a-Service (SaaS)](/software-as-a-service/). ## Problem it addresses -Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) [cloud computing](/cloud-computing/) model, -users pre-purchase units of capacity, meaning you pay a public cloud provider for always-on server components to run your apps. -It’s the user’s responsibility to scale up server capacity during times of high demand and -to scale down when that capacity is no longer needed. +Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) [cloud computing](/cloud-computing/) model, +users pre-purchase units of capacity, meaning you pay a public cloud provider for always-on server components to run your services. +It’s the user’s responsibility to scale up server capacity during times of high demand and +to scale down when that capacity is no longer needed. The cloud infrastructure necessary to run an app is active even when the app isn’t being used. ## How it helps -With serverless architecture, by contrast, apps are launched only as needed. -When an event triggers app code to run, the public cloud provider dynamically allocates resources for that code. -The user stops paying when the code finishes executing. -In addition to the cost and efficiency benefits, -serverless frees developers from routine and menial tasks associated with app scaling and server provisioning. -With serverless, routine tasks such as managing the operating system and file system, security patches, -load balancing, capacity management, scaling, logging, and monitoring are all offloaded to a cloud services provider. +With serverless architecture, by contrast, services are launched only as needed. +A public cloud provider dynamically allocates resources for these services. +The user does not have to pay when the service does not run. +In addition to the cost and efficiency benefits, +serverless frees developers from routine and menial tasks associated with app scaling and server provisioning. +With serverless, routine tasks such as managing the operating system and file system, security patches, +load balancing, capacity management, scaling, logging, and monitoring are all outsourced to a cloud services provider. + +See also the glossary for [Function-as-a-Service (FaaS)](/function-as-a-service/). +Serverless and FaaS are often used as synonyms, but there is a difference. From d805a25995c657c48857a104f19ee08bd3d4e578 Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Tue, 11 Jul 2023 10:49:36 +0200 Subject: [PATCH 02/11] fix small wording issue Co-authored-by: Jihoon Seo <46767780+jihoon-seo@users.noreply.github.com> Signed-off-by: Johannes Manner --- content/en/function-as-a-service.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index 17d2f49d4f..5489443e9e 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -23,7 +23,7 @@ have at least a single instance running to serve requests." [(Manner 2023, p.521 ## Problem it addresses -In a traditional on-premise scenario, a business manages and maintains its own data center. +In a traditional on-premises scenario, a business manages and maintains its own data center. The business must invest in servers, storage, software, and other technologies and potentially hire IT staff or contractors to purchase, manage, and upgrade all the equipment and licenses. The data center has to be built to meet peak demand, even when workloads decline and those resources stand idle. From ca6add8ae2ace6519d4fb5824821b03aff165d64 Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Thu, 13 Jul 2023 08:40:33 +0200 Subject: [PATCH 03/11] Update serverless.md - removing empty first line Signed-off-by: Johannes Manner --- content/en/serverless.md | 1 - 1 file changed, 1 deletion(-) diff --git a/content/en/serverless.md b/content/en/serverless.md index 0a1b9c8dc4..fa6d3876e5 100644 --- a/content/en/serverless.md +++ b/content/en/serverless.md @@ -1,4 +1,3 @@ - --- Title: Serverless Status: Completed From 2c555e1c7337d52cc2727bfe5ffc95ab2d25bfa4 Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Thu, 13 Jul 2023 09:40:38 +0200 Subject: [PATCH 04/11] add cli and sdk to worklist Signed-off-by: Johannes Manner --- wordlist.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/wordlist.txt b/wordlist.txt index 33778f283f..fdff465f19 100644 --- a/wordlist.txt +++ b/wordlist.txt @@ -221,3 +221,7 @@ TCP TCP/IP UDP HTTP/3 +CLI +CLIs +SDK +SDKs \ No newline at end of file From 025b3224890343084a95d8cda239335f5c538ab4 Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:07 +0000 Subject: [PATCH 05/11] Update content/en/function-as-a-service.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/function-as-a-service.md | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index 5489443e9e..e50240d974 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -7,19 +7,10 @@ tags: ["infrastructure", "", ""] ## What it is -"Function as a Service (FaaS) is a compute service model in line with other as a Service offerings. -The core of this concept are event-triggered, single-scoped functions, i.e. cloud functions, which scale up and -down on demand without user interaction. -This [autoscaling](/auto-scaling/) property is one of the unique characteristics of FaaS. -Such platforms conceptually start a single function instance for each request and tear this instance down again -after the function is executed. Therefore, -cloud functions are inherently stateless. -Which means that platform providers are able to offer a genuine pay as-you-go billing model where users are only -charged when the cloud function is running as instances scaled -to zero results in no idling costs. -Other comparable computing models like [Platform as a Service (PaaS)](/platform-as-a-service/) based offerings always -have at least a single instance running to serve requests." [(Manner 2023, p.521)](https://doi.org/10.1109/CLOUD60044.2023.00068) - +Function as a Service (FaaS) is a cloud computing model that provides a platform for executing event-triggered functions, allowing for automatic scaling without manual intervention. +At its essence, FaaS enables the deployment of individual functions that are activated by specific events, operate on a short-term basis, and then shut down, ensuring resources are not wasted. +This model supports an [autoscaling](/auto-scaling/) feature, enabling a function instance to be initiated per request and terminated post-execution, emphasizing its stateless nature. +Consequently, FaaS platforms can implement a true pay-as-you-go billing approach, eliminating costs when functions are dormant, distinguishing it from other models like [Platform as a Service (PaaS)](/platform-as-a-service/), which require continuous resource availability. ## Problem it addresses From 7f3f0031017ad23a3a350747f9ecddf12d02f86e Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:17 +0000 Subject: [PATCH 06/11] Update content/en/function-as-a-service.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/function-as-a-service.md | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index e50240d974..e22a496d42 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -14,16 +14,10 @@ Consequently, FaaS platforms can implement a true pay-as-you-go billing approach ## Problem it addresses -In a traditional on-premises scenario, a business manages and maintains its own data center. -The business must invest in servers, storage, software, and other technologies -and potentially hire IT staff or contractors to purchase, manage, and upgrade all the equipment and licenses. -The data center has to be built to meet peak demand, even when workloads decline and those resources stand idle. -Conversely, if the business grows quickly, the IT department might struggle to keep up. -Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) cloud computing model, -users pre-purchase capacity units, meaning you pay a public cloud provider for always-on server components to run your apps. -It’s the user’s responsibility to scale up server capacity during times of high demand -and scale down when that capacity is no longer needed. -The cloud infrastructure necessary to run an app is active even when the app isn’t being used. +Traditionally, businesses have relied on maintaining on-premises data centers, necessitating substantial investment in hardware, software, and personnel. +This setup demands resources to be scaled to peak demand, resulting in underutilized assets during downtimes. +Moreover, rapid business growth can overwhelm IT capabilities, leading to operational inefficiencies. +In contrast, [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) models, while offering cloud-based solutions, still place the onus of scaling resources on the user, requiring payment for continuous server availability irrespective of actual usage. ## How it helps From c43a6385e81c75655639c19f6107f3892b661dad Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:25 +0000 Subject: [PATCH 07/11] Update content/en/serverless.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/serverless.md | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/content/en/serverless.md b/content/en/serverless.md index fa6d3876e5..3b0b4ab1ea 100644 --- a/content/en/serverless.md +++ b/content/en/serverless.md @@ -7,17 +7,15 @@ tags: ["architecture", "", ""] ## What it is -"Serverless Computing is a generic computing approach where servers are [abstracted](/abstraction/) from the user. -All operational aspects like managing physical machines and providing VMs are tasks of the service provider. -A service provider is typically a public cloud provider but also in-house IT departments can act as service providers for their own development teams. -They offer interfaces for service users like SDKs, CLIs or OCI compliant runtimes where the focus is on code, configuration options or deploying/uploading artifacts. -All offerings are pay-per-use. -[Scaling](/scalability/) and provisioning of additional computing, storage or network resources happens without user interference based on the demand of the deployed applications and ecosystem services like data storage. -A provider of a serverless platform pools resources and serves multiple users on the same physical machine. -Tenants are isolated via virtualization approaches in particular [VMs](/virtual-machine/)." [(Manner 2023, p.520)](https://doi.org/10.1109/CLOUD60044.2023.00068) - -Serverless is therefore an umbrella term for all services with these characteristics. -Serverless offerings range from [Platform-as-a-Service (PaaS)](/platform-as-a-service/) until [Software-as-a-Service (SaaS)](/software-as-a-service/). +Serverless Computing [abstracts](/abstraction/) servers away from the user. +Operational management falls to the service provider, including handling physical machines and VM provisioning. +Service providers can be public cloud entities or internal IT departments serving their development teams. +These providers offer user interfaces such as SDKs, CLIs, or OCI-compliant runtimes, focusing on code and deployment tasks. +Charges are based on a pay-per-use model. +[Scaling](/scalability/) and resource provisioning for computing, storage, or networking are automatically adjusted based on application demand without user intervention. +A serverless platform provider consolidates resources to serve multiple users on a single physical machine, ensuring isolation through virtualization, especially with [VMs](/virtual-machine/). + +Serverless is a comprehensive term encompassing services with these attributes, extending from [Platform-as-a-Service (PaaS)](/platform-as-a-service/) to [Software-as-a-Service (SaaS)](/software-as-a-service/). ## Problem it addresses From aaa8247cade0529690cc4a73c05d2e29a8b61262 Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:33 +0000 Subject: [PATCH 08/11] Update content/en/serverless.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/serverless.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/content/en/serverless.md b/content/en/serverless.md index 3b0b4ab1ea..aa3792161b 100644 --- a/content/en/serverless.md +++ b/content/en/serverless.md @@ -19,11 +19,8 @@ Serverless is a comprehensive term encompassing services with these attributes, ## Problem it addresses -Under a standard [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) [cloud computing](/cloud-computing/) model, -users pre-purchase units of capacity, meaning you pay a public cloud provider for always-on server components to run your services. -It’s the user’s responsibility to scale up server capacity during times of high demand and -to scale down when that capacity is no longer needed. -The cloud infrastructure necessary to run an app is active even when the app isn’t being used. +In traditional [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) [cloud computing](/cloud-computing/) models, users commit to a predefined capacity, resulting in charges for continuous server availability regardless of actual use. +Responsibility for adjusting server capacity to meet fluctuating demands falls on the user, maintaining active infrastructure even during idle periods. ## How it helps From 51c3fdf9352a0ec1a451845160ad17182840ab4c Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:44 +0000 Subject: [PATCH 09/11] Update content/en/serverless.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/serverless.md | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/content/en/serverless.md b/content/en/serverless.md index aa3792161b..df47fc17ab 100644 --- a/content/en/serverless.md +++ b/content/en/serverless.md @@ -24,13 +24,11 @@ Responsibility for adjusting server capacity to meet fluctuating demands falls o ## How it helps -With serverless architecture, by contrast, services are launched only as needed. -A public cloud provider dynamically allocates resources for these services. -The user does not have to pay when the service does not run. -In addition to the cost and efficiency benefits, -serverless frees developers from routine and menial tasks associated with app scaling and server provisioning. -With serverless, routine tasks such as managing the operating system and file system, security patches, -load balancing, capacity management, scaling, logging, and monitoring are all outsourced to a cloud services provider. - -See also the glossary for [Function-as-a-Service (FaaS)](/function-as-a-service/). -Serverless and FaaS are often used as synonyms, but there is a difference. +Serverless architecture introduces a more efficient approach, activating services solely upon demand. +This model ensures dynamic resource allocation by a cloud provider, eliminating costs for unused services. +Beyond financial and operational efficiencies, serverless technology relieves developers of the burdens of scaling applications and managing server infrastructure. +Tasks such as operating system maintenance, security updates, load balancing, capacity planning, and monitoring are delegated to the cloud provider, streamlining the development process. + +Refer to the [Function-as-a-Service (FaaS)](/function-as-a-service/) glossary entry for more information. +Although "serverless" and "FaaS" are often used as interchangeable terms, they embody distinct concepts. + From 751a9ef9e6495386a9cd43288f5c4d52e8bd9142 Mon Sep 17 00:00:00 2001 From: Noah Ispas Date: Mon, 18 Mar 2024 16:53:53 +0000 Subject: [PATCH 10/11] Update content/en/function-as-a-service.md Co-authored-by: Rolfe Dlugy-Hegwer Signed-off-by: Noah Ispas --- content/en/function-as-a-service.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index e22a496d42..0ee2dab736 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -21,11 +21,10 @@ In contrast, [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) ## How it helps -FaaS gives developers an [abstraction](/abstraction/) for running web applications in response to events without managing servers. -For example, uploading a file could trigger custom code that transcodes the file into various formats. -FaaS infrastructure will auto-scale the code for heavy use, -and the developer does not have to spend any time or resources building the code for [scalability](/scalability/). -Billing is based on computation time alone, which means businesses do not have to pay when the functions are not in use. - -See also the glossary for [Serverless](/serverless/). -Serverless and FaaS are often used as synonyms, but there is a difference. \ No newline at end of file +FaaS gives developers an [abstraction](/abstraction/) for running web applications in response to events, eliminating the need to manage server infrastructure. +For example, an action such as uploading a file could trigger custom code that transcodes the file into various formats. +The FaaS infrastructure automatically adjusts resources to match demand, freeing developers from the complexities of coding for [scalability](/scalability/). +Charges apply solely for the duration of computation, ensuring no costs accrue when functions are inactive. + +For more information, refer to the [Serverless](/serverless/) glossary entry. +Although "serverless" and "FaaS" are often used as interchangeable terms, they embody distinct concepts. \ No newline at end of file From d1c782bdf4495c3981e012d2d81cb601d8c4ce3d Mon Sep 17 00:00:00 2001 From: Nate W Date: Tue, 26 Mar 2024 16:29:53 -0700 Subject: [PATCH 11/11] Update content/en/function-as-a-service.md Correcting spelling. Signed-off-by: Nate W Signed-off-by: Nate W --- content/en/function-as-a-service.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/function-as-a-service.md b/content/en/function-as-a-service.md index 893b89b568..1f998be337 100644 --- a/content/en/function-as-a-service.md +++ b/content/en/function-as-a-service.md @@ -14,7 +14,7 @@ Consequently, FaaS platforms can implement a true pay-as-you-go billing approach ## Problem it addresses Traditionally, businesses have relied on maintaining on-premises data centers, necessitating substantial investment in hardware, software, and personnel. -This setup demands resources to be scaled to peak demand, resulting in underutilized assets during downtimes. +This setup demands resources to be scaled to peak demand, resulting in underutilized assets during downtime. Moreover, rapid business growth can overwhelm IT capabilities, leading to operational inefficiencies. In contrast, [Infrastructure-as-a-Service (IaaS)](/infrastructure-as-a-service/) models, while offering cloud-based solutions, still place the onus of scaling resources on the user, requiring payment for continuous server availability irrespective of actual usage.