web applications architecture Flashcards

1
Q

what is web applications architecture

A

a framework that defines interactions between different components of a web application

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

what are the 3 components of a web application

A

front end; client side
back end; server side
database

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

front end

A

handles user interface and experience

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

back end

A

processes business logic, handles data storage and interacts with the db

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

database

A

stores and manages application data

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

what is the primary function of web servers

A

deliver web pages to networked clients

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

what do webservers do

A

they are software that take a request in http format for a resource over a network then serves it back to the client as a payload to a http response

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

request response cycle

A

client request, the server processing and the response delivery

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

how does the client server model work

A

client requests data and services from the server
server processes requests and returns the appropriate response

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

what is the role of http in the client server model

A

protocols the facilitate the interaction

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

what are the four main types of web application architecture

A

monolothic
micro services
single and multi page applications

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

monolithic architecture

A

a single indivisible unit with all components interconnected
the backend front end and db are tightly coupled

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

how does the server and client interact in a monolithic architecture

A

the server sends complete html pages to the client for every user request

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

+ monolithic architecture

A

simpler to develop and deploy
easier debugging

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

– monolithic architecture

A

scalability issues; harder to update and maintain

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

microservices architecture

A

small independent services that communicate via apis

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

+ microservices architecture

A

scalability and flexibility in using different technologies

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

– microservices architecture

A

complexity in management and deployment

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

single page applications

A

the entire front end is uploaded initially and subsequent interactions happen without full page reloads

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

how is content updated in single page applications

A

by making api calls to the backend

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

+ single page applications

A

faster user experience and reduces server load

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

– single page api

A

search engine optimisation (seo) challenges; initial load time can be high

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

multi page applications

A

multiple pages each loaded separately from the server

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

how do multi page applications work

A

when users navigate to different pages the browser sends a request to the server which returns a new html page for each request

25
Q

– multi page applications

A

more server load
slower navigation compared to single page

26
Q

+ multi page applications

A

better for seo; easier to maintain certain types of applications

27
Q

what is a web page made up of

A

has a base html file including several referenced objects

28
Q

examples of objects in html

A

html file
jpeg image
audio/video file

29
Q

front end technologies

A

html
css
javascript

30
Q

html

A

structures the content on the webpage

31
Q

css

A

styles and visually formats the content

32
Q

javascript

A

adds interactivity and dynamic features

33
Q

modern front end frameworks

A

streamline development and manage complex ui states

34
Q

backend technologies

A

server side languages; e.g. java python
webservers
APIs;RESTful

35
Q

webservers

A

serve webpages to users

36
Q

APIs

A

services that allow communication between the front and backend

37
Q

deployment

A

making an app available for use on a server

38
Q

what are the 3 parts of the deployment environment

A

deployment, production and staging environment

39
Q

deployment environment

A

local machines where developers write and test code

40
Q

production environment

A

the live environment where the product is available to users

41
Q

staging environment

A

a replica of the production environment used for final testing

42
Q

what are the 3 types of deployment models

A

on premises
cloud based
hybrid

43
Q

on premises deployment model

A

hosting the app on physical servers owned and managed by the organisation

44
Q

cloud based deployment model (+ what benefits does it offer)

A

using cloud services to host the app offering scalability and reducing operational overhead

45
Q

hybrid deployment model

A

on premises and cloud based

46
Q

what are the 3 cost considerations in deployment

A

initial cost; setup and deployment (including server and cloud costs)
ongoing costs; maintenance, scaling, monitoring
optimisation; using autoscaling and pay-as-you-go models to optimise costs

47
Q

what are some performance metrics and explain them

A

response time; time for the server to process a request and send a response
latency; delay between client request and servers initial response
throughput; number of requests successfully handled within a given time frame
error rate
availability
security
resource utilisation

48
Q

scalability

A

the ability of an app to handle increasing loads and maintain performance goals

49
Q

horizontal scaling

A

adding more machines to handle load
complicates all scenarios except the simplest

50
Q

vertical scaling

A

increasing the power of existing machines

51
Q

+ vertical scaling

A

more machines can get expensive
nothing changes drastically

52
Q

what are two forms of performance optimisation

A

load bearing
caching

53
Q

load balancing

A

distributing the load evenly across two or more servers

54
Q

caching

A

exploits locality by moving content closer to the user

55
Q

in which places can caching be done

A

in browser network or server

56
Q

why does caching work

A

less hops means less latency
less congestion

57
Q

what is a positive and negative of load balancing and how does it work with hardware

A

higher performance and cost
rewrites headers at layer four and adjusts the dns
there is a tcp connection between the client and server

58
Q

how does load balancing with software work

A

echos http requests to particular servers
tcp connection between the client and balancer