What things are in three points or less. A continually updating brain dump.
MAC address
- Media Access Control
- Unique to device; hard-coded into a network adapter/network interface card
gateway
- A key stopping point for data traveling between networks
- Can be a computer routing traffic (workplace) or router (at home)
- Checks IPs of messages and forwards accordingly
API
- Application Program Interface
- The specification for how a service is to be interacted with
URL
- Uniform Resource Locator, i.e. web address, endpoint
- A reference to a web resource
HTTP
- HyperText Transfer Protocol
- Defines how messages are formatted and transmitted on the web
- Common methods: GET, PUT (idempotent), POST, DELETE, etc.
REST API
- REpresentational State Transfer
- A set of guiding principles, design patterns, architecture for APIs
- Statelessly performs CRUD operations on resources usually through HTTP
CRUD
- Create (POST), Read (GET), Update (PUT), Delete (DELETE)
- Standardized use of HTTP methods in RESTful APIs
IPC
- Inter-Process Communication
- Methods an OS uses to allow processes to manage shared data
TCP/IP
- Transmission Control Protocol/Internet Protocol
- Communication protocols used to connect devices on the web
- TCP does management, IP does routing
Throughput/Latency
- Throughput: number of items transferred per unit time
- Latency: amount of time required for single item
- Queue Size = Throughput * Latency
Stack (Data Structure)
- A Last-In, First-Out (LIFO) structure
- Push (add to stack), pop (remove from stack), math, etc.
Queue (Data Structure)
- A First-In, First-Out (FIFO) structure
- Enqueue, dequeue, etc.
- Can be made thread safe (queue.Queue in Python)
Heap (Data Structure)
- A tree where all nodes are in a specific order
- Min heap has smallest element as root (max v.v.)
- Often used to implement a priority queue
Stack (Memory)
- A fast-access memory region managed by CPU
- Freed upon function completion (local memory)
Heap (Memory)
- A larger but slower access memory region (vs. stack)
- Accessed with addresses, needs intelligent cleanup
Cache
- A fast-access, temporary data store
- Used to avoid rereqeusting or recomputing a resource
Kernel
- The portion of the operating system code that is always resident in memory
- Has complete control over everything in the system
Linux Process
- A running instance of a program, identified by a process ID
- Foreground/interactive and background processes
Daemon
- Background processes that start at system startup and run forever
Proxy
- An intermediary server separating end users from the websites they browse.
Reverse Proxy
- A type of proxy server that retrieves resources on behalf of a client from one or more servers. These resources are then returned to the client, appearing as if they originated from the proxy server itself.