My Laravel Queue has 1 Million Job. Each job takes 5-6 Seconds to execute. ( I am fetching web page as html. Storing html data in database and also mailing this data). So it would take around 50-60 days to execute. How can I optimize it? I am using database as queue_driver.
Push you jobs to several queues with their own workers. You also can add extra workers for every queue.
You want to set up several queues that will serve as buckets and additionally each queue should have several workers on them. I would also explore using something like AWS SQS. You can read more about using workers here.