Architecture Flashcards
OSI Layers
7 Application (HTTP,FTP) 6 Presentation (ASCII,JPEG) 5 Session (sockets) 4 Transportation (TCP,UDP, IPSec,ICMP) 3 Network (IPv4, IPv6) 2 Data Link (Ethernet, MPLS) 1 Physical layer
DNS Record
A record CNAME NS MX SRV TXT PRT SOA
How DNS works?
- Browser enter example.com
- check browser’s cache
- check OS cache
- get DNS Recursive resolver from ISP
5 RV check cache
6 RV queries Root name server
7 RV gets TLD from Root NS
8 RV queries TLD
9 RV gets Authoritative NS
10 RV queries Authoritative and gets information back to OS
How SAML works?
Authenticate users
SSO
Markup language (XML) via browser sessions
1. User wants to enter into Service Provider
2. User redirected to Identity Provider with SAML request in browser session
3. User authenticates
4. User redirected to Service Provider with authorised token
How OAuth works?
Authorise users/services
JSON based , works with API
Service Provider = Facebook
Consumer = App
1. User wants grant post permission to an App on Facebook
2. App gets Request token and Secret (to sign future requests) from Facebook and redirect user to facebook
3 User authorise Access with Request token
4 User tells App, access is authorised
5 App gets Access token and make the posts
What is OpenID
Open standard to authenticate users
User can have an OpenID and uses on all service providers that supports OpenID (google)
it uses OAuth 2.0
what are TCP/IP layers and their mapping to OSI?
7,6,5 –> Application
4 –> Transport
3 –> Network
2,1 —> Network interface
What is CIDR?
IP address scheme / bits
What is DDOS?
distributed denial of service attack - flood of TCP and UDP packets
AWS Shield
what is CDN?
Content delivery network - reduce latency - CloudFront
What is a NoSQL DB?
Unstructured item Index base search primary unique key (partition Key) Sort key ( Eventually consistent Read Simple horizontal scaling
What is a SQL DB?
Tables and rows
A = atomicity - multiple statements single transaction
C = consistency - no data curruption
I = isolation - parallel transactions are isoleted
D = durability -one committed , data is not lost
3 type of storage?
Object storage
File storage
Block storage
What is Asymmetric encryption?
Public and private keys
PGP
TLS
What is symmetric encryption?
single key encrypt/decrypt
AES-256
Three tier architecture?
Presentation tier
Application tier
Data tier
Some DB ports ?
MySQL = 3306 DynamoDB = 8000 Postgres = 5432
What is throughput?
Amount of data transferred from source to destination in Mbps
What is latency?
Delay from source to destination, milliseconds
What is XML?
Data separated from language - you can have data validation with XSD
what is TCP?
exchange packets via a connection oriented, with error checking
What is UDP?
exchange packets, with no connection and no error checking , bit it has checksum for data integrity
What is MPLS?
fast routing data between networks , usually used for dedicated lines connectivity
What is RAID 0,1,5?
RAID 0 = min 2 disks distributed data, no parity, no striping
RAID 1 = min 2 disks data mirroring, no parity, striping
RAID 5 =min 3 disks, parity + striping
what is IOPS?
input/output operations per second: Gp2:16k, io1:64k, st1:500, sc1:250
What is bandwidth?
max capacity in Mbps
What is a container?
like a Docker container - it contains an application with all its dependencies + libraries + OS
What is sharding?
distribute data across computers
what is NAS, SAN, DAS?
Network file storage: Ethernet
Storage Area Network: EBS/Fiber cable
Direct Attached Storage: SCSI
What is unicast, multicast, anycast?
Unicast = single destination Multicast = multiple destinations Anycast = best destination (Ex: geo)
what is partitioning?
data segmentation in a single computer
What is RPO?
Recovery Point Objective = amount of time data is lost
What is RTO?
Recovery Time Objective = amount of time to restore normal operations
How to move data into Big Data DB? logical steps
- Collection
- Ingestion
- Discovery and cleansing
- Integration (integrate different sources into one view)
- Analysis
- Delivery
What is a router?
Manages subnets and ip ranges
Connects different networks
Routers guide and direct network data,
prioritizes the data, and chooses the best route to use for each transmission.
What is a switch?
connects devices to a network
What tools for testing?
JUnit JMeter SoapUI Appium = mobile apps Selenium = web UI tests JProfiler = performance
How VPN site to site works?
Over internet Remote IP (public) Local IP IKE 1 e 2 = tipologia di crittografazione e scambio chiavi IPSec tunnels (2) BGP or static routing
Type of performance testing?
- Capacity testing= number of users
- Load Test = increase load to threshold
- Volume Test =large amount t of data
- Strees Testing = load over its capacity
- Endurance Testing = large load over time
- Spike Testing = create spikes of load
how do you work with in SCRUM?
Product Vision Epics Stories Sprint planning (DoD, Story points, Spikes) Sprint (iteration) Daily standups Sprint review (demo) Sprint retrospective
How Git flow works?
Master --------->hot fixes Develop --------> releases (only test e bug fixes) --------> features (real development)
What governance in place for architecture?
Architecture Review Board must approve: --> Architecture Overview Document Solution Review Board then Product architects: --> Solution Definition Document Solution Architects: --> Detailed Solution Architecture Document
How do you manage a process of mass migration?
5 steps:
1. Opportunity evaluation (What is the business case or compelling event that will drive your migration to the cloud?)
2. Portfolio discovery and planning (What’s in your environment, what are the interdependencies, what will you migrate first, and how will you migrate it?)
For each application (choose one of 6 migration strategies):
3. Application Design
4. Migration and validation
5 . Operate (Finally, as applications are migrated, you iterate on your new foundation, turn off old systems, and constantly iterate toward a modern operating model.)
what are the 6 migrations strategies to cloud?
- Rehosting (lift and shift)
- Replatforming (not changing core architecture)
- Repurchansing (move to new cloud service SaaS)
- Refactoring (change the architecture)
- Retire
- Retain