Думаю, что вы и являетесь разработчиком сайта(если нет, ну и ладно), после обзора статистики, я понимаю что этот сайт не стоит 150 тысяч, часть трафика с директа, в SEO тоже есть над чем работать, ссылки закупались через биржу, сейчас ссылки потихоньку удаляются. Да и разработку можно найти дешевле.
В директе да, конкуренция большая оказывается
Проблема в том что расписание будут редактировать часто.
А если делать так:
Вариант 1
Есть таблица с этим расписанием на MySQL
Cron каждую минуту или несколько секунд заглядывает в таблицу и создает задачи на ближайшее выполнение в очередь, у которых подошло время.
Вариант 2
Есть таблица с этим расписанием на MySQL
Cron каждую минуту или несколько секунд заглядывает в таблицу и создает и обновляет задачи на все активные расписания.
там вариант с хранением данных всех компаний в общих таблицах с полями company_id, с целостностью проблем не должно быть.
-------------
Скорей всего так. Архитектура схожа с Интернет магазином.
Будет ли подводные камни в таком подходе(хранить все в общих таблицах)?
@morozovdenis на самом деле сложнее получится, так как записи будут находится в различных блоках, их тоже будет много
То есть пример
Возьмем этот сайт
Пусть 100 000 вопросов
У каждого вопроса есть комментарии (допустим у комментариев есть столбец сортировки)
Вот мне нужно какой то комментарий переместить на несколько позиций выше.
Перед каким индексом комментарий поставить это ясно, но вот если этот номер сортировки занят(или же занят целый рад предыдущих номеров), то возникает сложность какой номер присваивать?
Предполагается, что порядок отображения может меняться каждый день и не по разу.
Может все таки решение от @Cage будет наиболее выгодным. Пусть и затратным при записей более 100 000 тысяч
UPDATE `table_name` SET `sort` = `sort` + 1 WHERE `sort` >1;
UPDATE `table_name` SET `sort` = 2 WHERE `id` = 999;
Можно по идеи cron раз в месяц запускать для перестроение индекса. Вот про разреженный индекс где можно почитать подробнее? Нашел только определения для noSQL
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.