【发布时间】:2009-04-09 17:42:12
【问题描述】:
我正在创建一个显示一个月内事件时间表的日历。每天都有几个参数决定是否可以为这一天安排更多活动(有多少工作人员,有多少时间等)。
我的数据库是使用三个表设置的:
- 定期时间表 - 用于为一周中的每一天创建一个数组,其中概述了有多少员工可用,他们可用的时间等
- 日程变化 - 如果某个日期有变化,这会覆盖常规日程数组中的信息。
- 事件 - 现有事件,按日期引用。
在这个阶段,代码会遍历一个月中的每一天,每天检查两到三件事。
- 日程安排是否有任何变化(公共假期、工作时间缩短等)?
- 今天有多少小时/多少员工?
- (如果有工作人员)今天已经安排了多少活动?
第 1 步和第 3 步需要数据库查询 - 假设每月有 30 天,即每次页面浏览有 60 次查询。
我担心这会如何扩展,对于少数用户来说,我认为这不会有太大问题,但如果 20 个人尝试同时加载页面,那么它会跳到 1200查询...
任何关于如何更有效地做到这一点的想法或建议将不胜感激!
谢谢!
【问题讨论】: