Apache Kafka Streaming Platform

Build real-time streaming applications with Apache Kafka for event-driven architectures

# Apache Kafka

This document provides comprehensive guidelines for apache kafka development and best practices.

---

## Kafka Fundamentals

1. **Distributed**
   - Distributed streaming platform architecture
   - Implement proper distributed streaming platform architecture
   - Follow best practices for optimal results

2. **Topics,**
   - Topics, partitions, and offsets
   - Implement proper topics, partitions, and offsets
   - Follow best practices for optimal results

3. **Producers**
   - Producers and consumers
   - Implement proper producers and consumers
   - Follow best practices for optimal results

4. **Brokers**
   - Brokers and cluster management
   - Implement proper brokers and cluster management
   - Follow best practices for optimal results

5. **Replication**
   - Replication and fault tolerance
   - Implement proper replication and fault tolerance
   - Follow best practices for optimal results

---

## Topic Design

6. **Topic**
   - Topic naming conventions
   - Implement proper topic naming conventions
   - Follow best practices for optimal results

7. **Partition**
   - Partition strategy planning
   - Implement proper partition strategy planning
   - Follow best practices for optimal results

8. **Replication**
   - Replication factor configuration
   - Implement proper replication factor configuration
   - Follow best practices for optimal results

9. **Retention**
   - Retention policies (time/size based)
   - Implement proper retention policies (time/size based)
   - Follow best practices for optimal results

10. **Compaction**
   - Compaction vs deletion strategies
   - Implement proper compaction vs deletion strategies
   - Follow best practices for optimal results

---

## Producer Development

11. **Producer**
   - Producer configuration and tuning
   - Implement proper producer configuration and tuning
   - Follow best practices for optimal results

12. **Message**
   - Message serialization strategies
   - Implement proper message serialization strategies
   - Follow best practices for optimal results

13. **Partitioning**
   - Partitioning strategies
   - Implement proper partitioning strategies
   - Follow best practices for optimal results

14. **Idempotent**
   - Idempotent and transactional producers
   - Implement proper idempotent and transactional producers
   - Follow best practices for optimal results

15. **Error**
   - Error handling and retry mechanisms
   - Implement proper error handling and retry mechanisms
   - Follow best practices for optimal results

---

## Consumer Development

16. **Consumer**
   - Consumer group management
   - Implement proper consumer group management
   - Follow best practices for optimal results

17. **Offset**
   - Offset management strategies
   - Implement proper offset management strategies
   - Follow best practices for optimal results

18. **Consumer**
   - Consumer rebalancing handling
   - Implement proper consumer rebalancing handling
   - Follow best practices for optimal results

19. **Message**
   - Message deserialization
   - Implement proper message deserialization
   - Follow best practices for optimal results

20. **Error**
   - Error handling and dead letter queues
   - Implement proper error handling and dead letter queues
   - Follow best practices for optimal results

---

## Kafka Streams

21. **Stream**
   - Stream processing applications
   - Implement proper stream processing applications
   - Follow best practices for optimal results

22. **Topology**
   - Topology creation and management
   - Implement proper topology creation and management
   - Follow best practices for optimal results

23. **Stateful**
   - Stateful vs stateless processing
   - Implement proper stateful vs stateless processing
   - Follow best practices for optimal results

24. **Windowing**
   - Windowing operations
   - Implement proper windowing operations
   - Follow best practices for optimal results

25. **Join**
   - Join operations between streams
   - Implement proper join operations between streams
   - Follow best practices for optimal results

---

## Kafka Connect

26. **Source**
   - Source and sink connectors
   - Implement proper source and sink connectors
   - Follow best practices for optimal results

27. **Connector**
   - Connector configuration and deployment
   - Implement proper connector configuration and deployment
   - Follow best practices for optimal results

28. **Custom**
   - Custom connector development
   - Implement proper custom connector development
   - Follow best practices for optimal results

29. **Schema**
   - Schema evolution handling
   - Implement proper schema evolution handling
   - Follow best practices for optimal results

30. **Distributed**
   - Distributed mode operations
   - Implement proper distributed mode operations
   - Follow best practices for optimal results

---

## Schema Management

31. **Confluent**
   - Confluent Schema Registry integration
   - Implement proper confluent schema registry integration
   - Follow best practices for optimal results

32. **Avro,**
   - Avro, JSON, and Protobuf schemas
   - Implement proper avro, json, and protobuf schemas
   - Follow best practices for optimal results

33. **Schema**
   - Schema evolution strategies
   - Implement proper schema evolution strategies
   - Follow best practices for optimal results

34. **Compatibility**
   - Compatibility modes
   - Implement proper compatibility modes
   - Follow best practices for optimal results

35. **Schema**
   - Schema validation
   - Implement proper schema validation
   - Follow best practices for optimal results

---

## Performance Optimization

36. **Producer**
   - Producer throughput optimization
   - Implement proper producer throughput optimization
   - Follow best practices for optimal results

37. **Consumer**
   - Consumer lag monitoring
   - Implement proper consumer lag monitoring
   - Follow best practices for optimal results

38. **Batch**
   - Batch processing configurations
   - Implement proper batch processing configurations
   - Follow best practices for optimal results

39. **Memory**
   - Memory and disk optimization
   - Implement proper memory and disk optimization
   - Follow best practices for optimal results

40. **Network**
   - Network and compression tuning
   - Implement proper network and compression tuning
   - Follow best practices for optimal results

---

## Monitoring & Operations

41. **JMX**
   - JMX metrics collection
   - Implement proper jmx metrics collection
   - Follow best practices for optimal results

42. **Cluster**
   - Cluster health monitoring
   - Implement proper cluster health monitoring
   - Follow best practices for optimal results

43. **Consumer**
   - Consumer lag monitoring
   - Implement proper consumer lag monitoring
   - Follow best practices for optimal results

44. **Broker**
   - Broker performance metrics
   - Implement proper broker performance metrics
   - Follow best practices for optimal results

45. **Alert**
   - Alert configuration
   - Implement proper alert configuration
   - Follow best practices for optimal results

---

## Security

46. **SASL**
   - SASL authentication mechanisms
   - Implement proper sasl authentication mechanisms
   - Follow best practices for optimal results

47. **SSL/TLS**
   - SSL/TLS encryption
   - Implement proper ssl/tls encryption
   - Follow best practices for optimal results

48. **ACL**
   - ACL (Access Control List) configuration
   - Implement proper acl (access control list) configuration
   - Follow best practices for optimal results

49. **RBAC**
   - RBAC (Role-Based Access Control)
   - Implement proper rbac (role-based access control)
   - Follow best practices for optimal results

50. **Audit**
   - Audit logging
   - Implement proper audit logging
   - Follow best practices for optimal results

---

## High Availability

51. **Multi-region**
   - Multi-region deployment strategies
   - Implement proper multi-region deployment strategies
   - Follow best practices for optimal results

52. **Disaster**
   - Disaster recovery planning
   - Implement proper disaster recovery planning
   - Follow best practices for optimal results

53. **Backup**
   - Backup and restore procedures
   - Implement proper backup and restore procedures
   - Follow best practices for optimal results

54. **Rolling**
   - Rolling upgrades
   - Implement proper rolling upgrades
   - Follow best practices for optimal results

55. **Capacity**
   - Capacity planning
   - Implement proper capacity planning
   - Follow best practices for optimal results

---

## Event-Driven Architecture

56. **Event**
   - Event sourcing patterns
   - Implement proper event sourcing patterns
   - Follow best practices for optimal results

57. **CQRS**
   - CQRS (Command Query Responsibility Segregation)
   - Implement proper cqrs (command query responsibility segregation)
   - Follow best practices for optimal results

58. **Saga**
   - Saga pattern implementation
   - Implement proper saga pattern implementation
   - Follow best practices for optimal results

59. **Event**
   - Event streaming best practices
   - Implement proper event streaming best practices
   - Follow best practices for optimal results

60. **Microservices**
   - Microservices integration
   - Implement proper microservices integration
   - Follow best practices for optimal results

---

## Development Best Practices

61. **Message**
   - Message design patterns
   - Implement proper message design patterns
   - Follow best practices for optimal results

62. **Error**
   - Error handling strategies
   - Implement proper error handling strategies
   - Follow best practices for optimal results

63. **Testing**
   - Testing streaming applications
   - Implement proper testing streaming applications
   - Follow best practices for optimal results

64. **Local**
   - Local development setup
   - Implement proper local development setup
   - Follow best practices for optimal results

65. **Documentation**
   - Documentation and monitoring
   - Implement proper documentation and monitoring
   - Follow best practices for optimal results

---

## Cloud Integration

66. **Managed**
   - Managed Kafka services (Confluent Cloud, Amazon MSK)
   - Implement proper managed kafka services (confluent cloud, amazon msk)
   - Follow best practices for optimal results

67. **Kubernetes**
   - Kubernetes deployment
   - Implement proper kubernetes deployment
   - Follow best practices for optimal results

68. **Container**
   - Container orchestration
   - Implement proper container orchestration
   - Follow best practices for optimal results

69. **Auto-scaling**
   - Auto-scaling configurations
   - Implement proper auto-scaling configurations
   - Follow best practices for optimal results

70. **Cost**
   - Cost optimization strategies
   - Implement proper cost optimization strategies
   - Follow best practices for optimal results

---

## Use Cases

71. **Real-time**
   - Real-time analytics pipelines
   - Implement proper real-time analytics pipelines
   - Follow best practices for optimal results

72. **Log**
   - Log aggregation systems
   - Implement proper log aggregation systems
   - Follow best practices for optimal results

73. **Event-driven**
   - Event-driven microservices
   - Implement proper event-driven microservices
   - Follow best practices for optimal results

74. **Data**
   - Data integration platforms
   - Implement proper data integration platforms
   - Follow best practices for optimal results

75. **IoT**
   - IoT data processing
   - Implement proper iot data processing
   - Follow best practices for optimal results

---

## Summary Checklist

- [ ] Core principles implemented
- [ ] Best practices followed
- [ ] Performance optimized
- [ ] Security measures in place
- [ ] Testing strategy implemented
- [ ] Documentation completed
- [ ] Monitoring configured
- [ ] Production deployment ready

---

Follow these comprehensive guidelines for successful apache kafka implementation.
Apache Kafka Streaming Platform - Cursor IDE AI Rule