Talk Buddy - Chat Application

Multithreaded Proxy Web Server

  • Tech Stack: C, Multithreading, Networking
  • Github URL: Project Link

Designed a multithreaded proxy server using C to handle multiple client requests concurrently, with or without caching the responses. Implemented a flexible system for parallel processing on multiprocessor systems.

Utilized semaphores, locks, and an HTTP parser to manage requests efficiently. Implemented an LRU (Least Recently Used) Cache and linked lists to handle request caching and memory management.

Achieved high performance by ensuring concurrent and parallel processing of client requests, optimizing system throughput on multiprocessor systems.