Стандартная таблица `memory`
MEMORY2
child bonds:
Часто в веб-приложениях, требуется некоторая память в БД, для которой не требуется выделять целую таблицу, а достаточно одного ряда в таблице. Такая таблица имеется в SKY Framework, как составляющая ядра, имеет имя "memory" и в ней предопределены некоторые ряды. Определение таблицы:
Описание рядов с ID равным:
1 - X трассировка, сохраняется в колонке tmemo
2 - логирование CRON запусков (колонка tmemo). В SKY Framework имеется предопределенный функционал для такого логирования, который чаще всего необходим для любого приложения.
3 - системная конфигурация веб-приложения (колонка tmemo), смотрите дочерний узел. Часть переменных при этом определены в ядре, а часть дописывается уникально, для каждого приложения отдельно.
4 - логирование ошибок на production (колонка tmemo). В SKY Framework имеется возможность либо полностью отключать error handler, либо в режиме DEBUG=0 (отключен), все таки собирать ошибки PHP, MySQL и другие в эту ячейку. Во втором случае трассировка будет отключена, но если будут возникать ошибки, они будут записываться в эту ячейку. Это несколько уменьшает потенциал кода по быстродействию, но позволяет собирать ошибки на production инсталляции. Визуализация таких ошибок, как и логирование CRON запусков производится стандартным кодом для админ. части.
5,6 - init/reset мета код, выполняющийся только при инсталляции приложений или абстрактного сброса приложений. Например у вас есть много папок куда вы хотите поместить файл .htaccess с одной строчкой "deny from all". Совершенно "уныло" и некрасиво помещать такие файлы в код Codebase, вместо этого удобно перечислить такие папки в одном месте, а при первом же запуске (в режиме DEBUG), такие файлы автоматически сгенерируются, а в ячейке imemo произойдет пометка, что инсталляция приложения прошла успешно и при повторных запусках генерация уже не будет происходить.
7 - кеш инкрементальной системы SKY Backup.
8 - конфигурация админ раздела.
9 - конфигурация консольных запусков (cron).
10 - тестовая ячейка поможет при отладке приложений
11 - CRASH лог. Рассчитывается, что этот лог должен быть пуст как и memory.4. Сюда попадает информация при возникновении фатальных ошибок в приложении.
Весь вышеперечисленный функционал полезен и нужен большинству возможных веб-приложений. Каждое приложение также может использовать эту таблицу как память с уникальным функционалом. При этом рекомендуется использовать ряды c ID большим 100, а меньшие останутся как зарезервированные для возможного расширения CORE функционала SKY Framework.
001
002
003
004
005
006
007
008
009
010
011
CREATE TABLE `memory` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`code` varchar(100) DEFAULT NULL,
`imemo` int(11) NOT NULL DEFAULT '0',
`cmemo` varchar(255) DEFAULT NULL,
`tmemo` mediumtext,
`dt` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
Описание рядов с ID равным:
1 - X трассировка, сохраняется в колонке tmemo
2 - логирование CRON запусков (колонка tmemo). В SKY Framework имеется предопределенный функционал для такого логирования, который чаще всего необходим для любого приложения.
3 - системная конфигурация веб-приложения (колонка tmemo), смотрите дочерний узел. Часть переменных при этом определены в ядре, а часть дописывается уникально, для каждого приложения отдельно.
4 - логирование ошибок на production (колонка tmemo). В SKY Framework имеется возможность либо полностью отключать error handler, либо в режиме DEBUG=0 (отключен), все таки собирать ошибки PHP, MySQL и другие в эту ячейку. Во втором случае трассировка будет отключена, но если будут возникать ошибки, они будут записываться в эту ячейку. Это несколько уменьшает потенциал кода по быстродействию, но позволяет собирать ошибки на production инсталляции. Визуализация таких ошибок, как и логирование CRON запусков производится стандартным кодом для админ. части.
5,6 - init/reset мета код, выполняющийся только при инсталляции приложений или абстрактного сброса приложений. Например у вас есть много папок куда вы хотите поместить файл .htaccess с одной строчкой "deny from all". Совершенно "уныло" и некрасиво помещать такие файлы в код Codebase, вместо этого удобно перечислить такие папки в одном месте, а при первом же запуске (в режиме DEBUG), такие файлы автоматически сгенерируются, а в ячейке imemo произойдет пометка, что инсталляция приложения прошла успешно и при повторных запусках генерация уже не будет происходить.
7 - кеш инкрементальной системы SKY Backup.
8 - конфигурация админ раздела.
9 - конфигурация консольных запусков (cron).
10 - тестовая ячейка поможет при отладке приложений
11 - CRASH лог. Рассчитывается, что этот лог должен быть пуст как и memory.4. Сюда попадает информация при возникновении фатальных ошибок в приложении.
Весь вышеперечисленный функционал полезен и нужен большинству возможных веб-приложений. Каждое приложение также может использовать эту таблицу как память с уникальным функционалом. При этом рекомендуется использовать ряды c ID большим 100, а меньшие останутся как зарезервированные для возможного расширения CORE функционала SKY Framework.