Skip to content
Hyfrankl edited this page Mar 12, 2024 · 2 revisions

Welcome to the react-chatgpt Wiki! On this Wiki page, I would like to include some related computer science concepts here so that it can serve as a project-based learning path.

Here is a list that remains to be finished (with the help of LLM):

  1. Docker and Virtualization
  • Virtualization concepts: Virtual machines, containers, and their differences
    • Each virtual machine runs a full-fledged operating system (OS) on top of a hypervisor or virtual machine monitor (VMM). The hypervisor acts as a layer between the host machine's hardware and the virtual machines, managing the allocation of physical resources to the VMs.
    • Containers allow you to run multiple isolated applications or processes on a single host operating system. Containers share the host's kernel and do not require a separate operating system for each container.
  • Docker architecture: Docker Engine, Docker Daemon, Docker Client
    • namespace + cgroup + UnionFS
  • Containerization benefits: Portability, resource isolation, and scalability
  1. Redis, MongoDB, and Database
  • In-memory data stores and their advantages (low latency, high throughput)
  • Introduction to NoSQL databases and their use cases
  • Redis data structures (strings, hashes, lists, sets, sorted sets, etc.)
  • Redis messaging and event-driven architectures
  • MongoDB replication and sharding for scalability and high availability
  1. Distributed System and High Availability
  • Basic Distributed System
  • Redis persistence options (RDB and AOF) for data durability
  • Redis replication and clustering for high availability and scalability
  1. Concurrency and Parallelism
  • Basic OS Knowledge
  • Concurrency vs. parallelism: Definitions and differences
  • Multithreading and multiprocessing
  • Synchronization primitives (locks, semaphores, barriers, etc.)
  • Concurrent programming models (thread-based, event-driven, etc.)
  • Distributed task queues (Celery)
  1. Nginx and Network
  2. React Features
Clone this wiki locally