Modern Applications Flashcards
What is a monolithic application?
A monolithic application has tightly coupled services in which the user interface and data are combined into a single program from a single platform. It is self-contained and independent from other computer applications.
What is a microservice application?
A microservice application service has the following characteristics:
- tightly scoped
- strongly encapsulated
- loosely coupled
- independently deployable
- scalable
Integration falls into which two categories?
- Synchronous or API-based
2. Asynchronous or event-based
What is serverless computing?
You can build and run applications without considering servers. No need to provision, scale, and manage any servers. Everything required to run and scale your application with high availability is handled for you.
What are the benefits of serverless computing?
- don’t pay for idle, request-based pricing
- no infrastructure to provision, monitor, or manage
- scaling and fault-tolerance are built in
- easier to author, deploy, and secure
- enables best practices (events, stateless functions)
What is the difference between availability and fault-tolerance?
High Availability:
AWS makes it easy to build highly redundant, multi data-center systems, reaching several nines of availability that also support dynamic horizontal availability.
Fault-tolerance:
Load balancing automatically routes traffic in the event of a crash. You cannot have fault-tolerance without high availability.
What is a Step Function?
A serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build apps.
*All work is done by tasks. An activity is a subset of tasks.
All work in a state machine is performed by tasks. True or false?
TRUE
The workflows of the AWS Step Functions can be created/defined in which two ways?
- Using a JSON-based language using Amazon States Language
2. Using the Workflow Studio
With serverless architecture, teams focus on the application, while the cloud service provider manages the infrastructure. True or false?
TRUE
Modern application development is an approach to designing, building, and managing applications in the cloud. True or false?
TRUE
In Step Functions, all work in your state machine is done by AWS Lambda functions. True or false?
FALSE
All work in your state machines is done by tasks, which can invoke Lambda functions or other services.
The state machines of Step Functions support branching, parallel runs, retry/error handling, and initiating tasks. True or false?
TRUE
Microservices are loosely coupled at independent functionality and are event-driven or API-driven.
TRUE
Step Function workflows manage parallelization and service integration, but you have to manage failures and retries.
FALSE
Workflows manage failures, retries, parallelization, service integrations, and observability.