Unit 2: Evolution of Cloud Microservices - Practice Quiz

INT363 — Cloud Microservices 50 Questions
0 Correct 0 Wrong 50 Left
0/50

1 Which of the following best describes a Monolithic Architecture?

A. An architecture where the application is built as a collection of small independent services
B. An architecture relying solely on serverless functions
C. An architecture where the entire application is built as a single, unified unit
D. An architecture that distributes data across peer-to-peer networks

2 What is a primary characteristic of Microservices Architecture?

A. Single shared database for all modules
B. Tightly coupled components
C. Centralized deployment of the entire system
D. Loose coupling and high cohesion

3 In the context of Domain-Driven Design (DDD), what is 'Ubiquitous Language'?

A. A common language shared by developers and domain experts to describe the system
B. A translation layer between different microservices
C. A programming language like Java or Python
D. The standardized API documentation language

4 What is the primary role of an API Gateway in a microservices architecture?

A. To store all application data
B. To act as a single entry point for all client requests
C. To execute the core business logic of the application
D. To directly manage database schemas

5 Which of the following is a significant challenge in Distributed Architectures compared to Monoliths?

A. Network latency and partial failures
B. Inability to scale
C. Simplicity of debugging
D. Lack of modularity

6 In DDD, what is a 'Bounded Context'?

A. A logical boundary within which a particular domain model is defined and applicable
B. The physical network boundary of the cloud provider
C. The maximum memory limit of a service
D. The limit of database connections allowed

7 How does scaling typically differ between Monolithic and Microservices architectures?

A. Monoliths require scaling the entire application; Microservices allow scaling individual services
B. There is no difference in scaling strategies
C. Microservices cannot be scaled horizontally
D. Monoliths scale horizontally by function; Microservices scale vertically

8 What is the 'Database per Service' pattern?

A. Each microservice manages its own database data exclusively
B. Services connect to a database based on the user's location
C. All services share a single massive database
D. Databases are forbidden in microservices

9 Which principle suggests that organizations design systems that mirror their communication structures?

A. The CAP Theorem
B. Conway's Law
C. Moore's Law
D. Murphy's Law

10 What is a 'BFF' in the context of API Gateways?

A. Basic Failover Function
B. Binary File Format
C. Best Friends Forever
D. Backend for Frontend

11 Which of the following is an advantage of Monolithic architecture over Microservices?

A. Independent scaling of components
B. Simpler to test and debug initially
C. Easier to implement continuous deployment
D. Better fault isolation

12 What is 'Polyglot Persistence'?

A. Using different data storage technologies for different services based on needs
B. Writing code in multiple languages within one file
C. Translating database queries into different languages
D. Persisting data only in memory

13 What is an 'Aggregate' in Domain-Driven Design?

A. A backup of the database
B. The total sum of all data transactions
C. A collection of all microservices
D. A cluster of domain objects that can be treated as a single unit

14 Which mechanism is commonly used for communication between Microservices?

A. Global Variables
B. Direct Database Links
C. Lightweight protocols like HTTP/REST or gRPC
D. Shared Memory

15 What is the function of the 'Anti-Corruption Layer' in DDD?

A. To encrypt database traffic
B. To clean up unused code
C. To prevent viruses
D. To translate between two different domain models to prevent concepts from one leaking into the other

16 When defining Service Boundaries, which approach is recommended?

A. Decomposition by Business Capability
B. Decomposition by hardware availability
C. Decomposition by codebase size
D. Decomposition by alphabetical order

17 What is a 'Sidecar' pattern in microservices?

A. A backup server
B. A monitoring dashboard
C. A helper component that runs alongside the main service container
D. A secondary database

18 Which of the following creates a 'Single Point of Failure' if not properly managed?

A. Microservice Container
B. API Gateway
C. Local Logging
D. CI/CD Pipeline

19 What is 'Service Discovery'?

A. A marketing tool for services
B. A mechanism for services to find the network locations of other services
C. A security scan for vulnerabilities
D. A method to discover new business opportunities

20 In DDD, what defines the identity of an 'Entity'?

A. Its attributes and properties
B. Its JSON representation
C. The table name it is stored in
D. A unique identifier (ID) that persists over time

21 Unlike Entities, 'Value Objects' in DDD are defined by:

A. Their relationship to the database
B. Their unique ID
C. Their attributes and immutability
D. Their creation date

22 What is the 'Strangler Fig' pattern used for?

A. Compressing data traffic
B. Strangling process threads that hang
C. Securing API keys
D. Migrating a Monolithic application to Microservices gradually

23 Which feature is NOT typically handled by an API Gateway?

A. Request Routing
B. Business Logic implementation
C. Protocol Translation
D. Rate Limiting

24 What is 'Eventual Consistency' in distributed microservices?

A. Consistency is handled manually by the user
B. The system guarantees that if no new updates are made, eventually all accesses will return the last updated value
C. Data is never consistent
D. Data is always instantly consistent across all nodes

25 Which of the following is a disadvantage of Microservices?

A. Inability to use different technologies
B. Vendor lock-in
C. Operational complexity
D. Slower development speed for small teams initially

26 In a distributed architecture, what is 'Fault Tolerance'?

A. The prevention of all bugs
B. The logging of all faults
C. The ability of the system to stop working when a fault occurs
D. The ability of the system to continue operating properly in the event of the failure of some of its components

27 What is 'Context Mapping' in DDD?

A. Creating a sitemap for the application
B. Identifying the relationships and integration patterns between different Bounded Contexts
C. Mapping database tables to UI fields
D. Mapping user locations on a map

28 Which is a common method to prevent 'Cascading Failures' in microservices?

A. Monolithic Databases
B. Tight Coupling
C. Infinite Loops
D. Circuit Breaker Pattern

29 The term 'Smart Endpoints and Dumb Pipes' refers to:

A. Using dumb terminals
B. Putting logic in the services and using the network only for transport
C. Using AI in network cables
D. Putting logic in the message bus/ESB

30 What is 'Request Aggregation' in an API Gateway?

A. Blocking all requests
B. Deleting duplicate requests
C. Gathering data from multiple services to return a single response to the client
D. Gathering multiple requests from a client into a single request to the backend

31 Which architecture is known for 'Spaghetti Code' if not managed well?

A. Event-Driven
B. Serverless
C. Monolithic
D. Microservices

32 What is a 'Domain Event'?

A. A server restart
B. A coding error
C. Something that happened in the domain that the experts care about
D. A scheduled meeting

33 Which testing strategy is most complex in Microservices?

A. Manual Testing
B. End-to-End (Integration) Testing
C. Static Analysis
D. Unit Testing

34 Idempotency in API design means:

A. An API call can be made multiple times without changing the result beyond the initial application
B. The API is fast
C. The API is secure
D. An API call is only allowed once

35 What helps ensure 'High Cohesion' in a microservice?

A. Ensuring the service does one thing and does it well
B. Grouping unrelated functions together
C. Connecting to multiple databases
D. Spreading related logic across multiple services

36 In the context of service boundaries, what is 'Decomposition by Subdomain'?

A. Splitting services by developer teams
B. Dividing services by file size
C. Splitting services based on URL subdomains
D. Defining services corresponding to Domain-Driven Design (DDD) subdomains

37 What is the relationship between an API Gateway and Cross-Cutting Concerns?

A. API Gateway offloads concerns like auth, logging, and SSL termination from individual services
B. Cross-cutting concerns are handled by the database
C. API Gateway ignores cross-cutting concerns
D. Microservices must handle all cross-cutting concerns individually

38 Which of the following best describes 'Loose Coupling'?

A. Services must differ in programming languages
B. Services are heavily dependent on each other's internal implementation
C. Services share the same memory space
D. Changes in one service do not require changes in other services

39 What is a 'Shared Kernel' in DDD Context Mapping?

A. A shared operating system
B. A shared database password
C. A shared physical server
D. A subset of the domain model shared by two teams/contexts

40 Which format is most commonly used for Microservices configuration?

A. Binary code
B. HTML
C. C++ Header files
D. YAML or JSON

41 The 'Two-Phase Commit' (2PC) protocol is often avoided in Microservices because:

A. It creates tight coupling and reduces availability (blocking)
B. It is too fast
C. It is only for Monoliths
D. It is not secure

42 Ideally, a Microservice should be:

A. Written in the same language as all other services
B. Large and comprehensive
C. Independently deployable
D. Dependent on a central orchestrator

43 What does 'API Composition' refer to?

A. Encrypting APIs
B. Writing documentation for APIs
C. Querying data from several services and combining it in memory
D. Compiling API code

44 In DDD, a 'Repository' is responsible for:

A. Routing HTTP requests
B. Storing source code (like Git)
C. Encapsulating the logic to access data sources and returning domain objects
D. Managing user sessions

45 What is the risk of 'Chatty' communication between microservices?

A. Increased network latency and reduced performance
B. Too many log files
C. Social engineering attacks
D. Database corruption

46 Which of the following is a symptom of a 'Distributed Monolith'?

A. Each service has its own database
B. Services share high cohesion
C. Services are independently deployable
D. Services must be deployed together in a specific order

47 Domain-Driven Design focuses primarily on:

A. The database schema
B. The user interface design
C. The infrastructure setup
D. The core business logic and domain complexities

48 Rate Limiting in an API Gateway helps to:

A. Increase the speed of the internet
B. Reduce the cost of software licenses
C. Protect services from being overwhelmed by too many requests
D. Limit the number of developers on a project

49 Who coined the term 'Microservices'?

A. Linus Torvalds
B. Steve Jobs
C. Dr. Peter Rogers (or popularized by Martin Fowler/James Lewis)
D. Bill Gates

50 Which technology is most closely associated with containerizing Microservices?

A. Docker
B. VirtualBox
C. MySQL
D. Apache Tomcat