what are those

A continually updating brain dump. What things are in three points or less.

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