Project Description
• Concept: Aggregate logs from multiple C++ microservices to detect errors instantly.
• Architecture:
o Application Services (C++): Produce log events to Kafka topics.
o Kafka: Brokers distribute logs.
o Streaming Analyzer (C++): Consumes logs, identifies errors, and triggers alerts via gRPC to an alerting service.
• Why C++/gRPC/Kafka: Low overhead for log ingestion and high scalability for data processing.
Key Implementation Details
• gRPC/Protobuf: Use .proto files for defining service contracts, allowing efficient binary communication between services (e.g., frontend API gateway to backend).
• Kafka (cppkafka/librdkafka): Use C++ libraries to produce and consume messages.
• Deployment: Use Docker to containerize the C++ services for better portability.
PROJECT 4) TITLE
• Containerized: Kubernetes
• Project tracker: Jira
• Logging system: New Relic
• Messaging & task queuing:
• Programming language: Golang, C++
• Microservice: Apache Kafka, gRPC
• CI/CD pipeline:
• Automation:
• Database: PostgreSQL