Планирование резервирования (, а не ресторана )с помощью Python

Я пишу приложение на Python, которое использует OpenStack для предоставления студентам доступа к ограниченному количеству виртуальных машин.

Студенты могут бронировать столики сейчас или в будущем.

Мне нужно ограничить количество виртуальных машин, запланированных в любое время, до X, при этом позволяя учащимся резервировать виртуальные машины, если доступны слоты/резервирование.

Объекты резервирования выглядят следующим образом (sqlalchemy ). Я бы знал время начала и продолжительность запрошенного бронирования, после чего мне нужно просмотреть существующие бронирования и посмотреть, не слишком ли много бронирований в запрошенный период времени. Поля задания *_— это имена заданий APScheduler.

class Reservation(Entity):
    student = ManyToOne('Student', required=True)
    class_id = ManyToOne('Class', required=True)
    image = ManyToOne('Image', required=True)
    # openstack image id filled in once the instance is started
    instance_id = Field(UnicodeText)

    # apscheduler jobs
    stop_instance_job = Field(UnicodeText)
    start_instance_job = Field(UnicodeText)
    warn_reservation_ending_job = Field(UnicodeText)
    check_instance_job = Field(UnicodeText)

Любые указатели на то, где искать примеры алгоритмов расписания или что-то в этом роде? Я даже не понимаю, что искать...

Спасибо.

6
задан curtis 29 July 2012 в 01:17
поделиться