Event-driven ArchitectureSprint 1SuccessOverall ObjectivesCompiled Learning ObjectivesQueuesList advantages of using queues.List examples of systems where queues are helpful.Explain how a queue helps to avoid system overload.Explain how a queue can help reduce service provisioning and costs.Identify draw-backs to queue-based systems.Kafka in a NutshellList the components of the Kafka architecture.Explain the purpose of a producer, consumer, and broker.Defined a record.Define a topic.Define a partition.Explain the relationship (and differences) between topics and partitions.Explain how Kafka knows when a consumer has successfully handled a record.Contrast at-most-once and at-least-once delivery.Explain why exactly-once delivery is very hard to achieve.Kafka PaperDescribe how Kakfa stores data internally.Calculate how many partitions are needed to serve a given number of consumers on a topic.Contrast push-based and pull-based queueing systems.Describe what delivery ordering constraints are and aren’t guaranteed by Kafka.Explain limitations of Kafka compared to systems with acknowledgements or two-phase commits.Project: Kafka Cron SchedulerExplain the objectives of the module project.CronDescribe the purpose of cron.Write a crontab to run a job every minute, or at fixed times.Write a program to parse files containing crontabs and schedule jobs.