It should not be so short that the time is out by the time the employee swallows the first morsel of food, and at the same time, not long enough to make him go for a sleep and wake up. In many factories, the lunch canteen will be half a kilometer away from other buildings. I have seen it and experienced it. In such cases, the management should take into account various factors, including the size of the canteen, the number of employees working, and how many rush in during peak hours. In many places, to avoid overcrowding, they have staggered lunch breaks. Further, if the organization is strict about using personal mobile phones, email, etc., management should provide a genuine break along with the lunch break for catching up with phone calls. As our friend has opined above, 45 minutes is neither too short nor too long!
Best wishes