Development, Messaging and deployment Flashcards

1
Q

What is CI/CD?

A

It’s a software development best practice.
It’s automating everything like:
- code integration
- building
- testing
- deploying

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the benefits of CI/CD?

A

Makes changing easy, this helps delivering new features quickly.
So it’s:
- fast repeatable and automated

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Example workflow of a CI/CD pipeline:

A
  • merge: to master repository
  • prepare: code is built, tested and packaged
  • Deploy: automatically deployed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does Continous Integration (CI) mean?

A

Integrating or merging small code changes frequently, at least once a day

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What does continuous deployment (CD) mean?

A

Automating the build, test and deployment functions - bugs are caught early, make it easier to fix them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the AWS Development Tools to implement CI/CD?

A
  • AWS codeCommit
  • AWS CodeBuild
    -Code depoly
  • CodePipeline
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is AWS CodeCommit?

A

A private Git repository

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is CodeBuild?

A

Fully managed build and test service
like packages or docker image

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is CodeDeploy?

A

It’s an automated Deployment Service that deploys to EC2, on premise or Lamda’s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is CodePipeline?

A

Automated CI/CD pipeline. It manages the pipeline for example executing codeCommit, codeBuild, CodeDeploy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is AWS CodeArtifact?

A

It’s an artifact Repo where you can safely store packages like Maven, NPM, Python

this artifact repo make is easy for developers to find the software packages they need.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are Artifacts?

A

Documentation
Compiled applications
Deployable Packages
Libraries

Makes it easier that everyone uses approved packages (instead of searching a package yourself on the internet)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is Tight Coupling?

A

Coupling is the dependency between components.
A Monolitic Application is tight coupled.

downsides:
- systems gets easier over loaded
- one failed component brings whole system down

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is Loose Coupling?

A

An example of loose coupling is building app with Micro service application.

Benefits:
- a component doesn’t need to wait till another component completed his task
- Data and messages are moved between components of the application
- a slow or failed component doesn’t affect the whole system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are things to achieve the Application Integration Approach ?

A
  • Queues (SQS - Simple Queue Service)
  • Notifications (SNS - Simple Notification Service)
  • Events (EventBride)

aws offers all service to achieve Application Integration Approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is SNS (Simple Notification Service)?

A

a service that:
- Set ups, operates and sends Notifications
- sms / email
- Messages can be send to subscribers or other applications

17
Q

SNS uses a Pub-sub model. What does this mean?

A

Applications publish or push messages to a topic.

  • topic = an access point
18
Q

What is Simple Queue Service (SQS)?

A

A service that creates a queue of things (like orders needed to be handled in a restaurant). It’s a distributed message queueing system that helps decoupling.

  • SQS is pull based (user pulls next message when they are ready to process it
  • Multiple components can add and consume messages
  • Messages are processes asynchronously
19
Q

What is a short polling?

A

A response is returned immediately even if no messages in the que. You also pay for an empty response

20
Q

What is long polling?

A

a user periodically polls the que and only returns a message when there is something the queue.

21
Q

What is Simple Email Service (SES)?

A

Email service to send HTML formatted mails (eg. order confirmation)
you can track open rates etc.

22
Q

What is EventBridge?

A

EventBridge is all about Event Driven Architecture.
Events trigger actions

23
Q

What are StepFunctions?

A

StepFunctions gives a visualization of all small functions/lamda’s that happen in an application. For example a checkout process.

it :
- visualizes all steps
- Automates triggering an tracking all steps that need to happen
- Logg all step functions

24
Q

What is Infrastructure as Code (IaC)?

A

IaC helps to make sure that a production, development and testing environment are identical.

CloudFormation is the tool that create an Infrastructure as Code

25
Q

What is AWS Cloud Formation?

A

It Manages, configures and provisions your AWS Infrastructure as code.

  • Resourced defined in a CloudFormation Yaml / JSON file
  • Cloud formation interprets the template
  • makes the right API calls to created the defined rersources
26
Q

What does AWS Elastic BeanStalk do?

A

helps developer focus on their code and not to worry about the infrastructure needed.

it:
- Deploys and scales your web applications
- provides the AWS resourced for ypu (like EC2, RDS, S3 etc)

27
Q
A