При использовании MyISAM Вы не будете делать никакой транзакции в час, если Вы не будете полагать, что каждый оператор DML транзакция (который в любом случае, не будет длительным или атомарным в случае катастрофического отказа).
Поэтому я думаю, что необходимо использовать InnoDB.
300 транзакций в секунду походит на довольно много. Если Вам абсолютно нужны эти транзакции, чтобы быть длительными через сбой питания, удостоверяются, что Ваша подсистема ввода-вывода может обработать это много записей в секунду легко. Вам будет нужен, по крайней мере, RAID-контроллер с кэшем с аварийным батарейным питанием.
, Если можно получить маленький удар длительности, Вы могли бы использовать InnoDB с набором innodb_flush_log_at_trx_commit к 0 или 2 (см. документы для деталей), можно улучшить производительность.
существует много патчей, которые могут увеличить параллелизм с Google и других - они могут представлять интерес, если Вы все еще не можете получить достаточно производительности без них.
Я обычно использую -able
суффикс. Есть много хороших примеров этого соглашения об именах также в библиотеке Java, например:
Например, то, что имеет теги , будет называться Taggable
в соответствии с этим соглашением об именах, то, что имеет метку времени, будет Loggable
с :
Метки времени обычно используются для регистрации событий, в этом случае каждое событие в журнале помечается меткой времени. В файловых системах метка времени может означать сохраненную дату / время создания или изменения файла.
Хороший вопрос. Я пытаюсь называть все свои интерфейсы и классы существительными. Так что я бы, вероятно, получил такие имена, как ITrackingTarget, IObservee. Метка времени интересная. Может быть, сам ITimestamp?
Как бы вы, используя шаблон Visitor, назвали интерфейс, обозначающий объект, который принимает IVisitor?
Я тоже использую существительные.
Для объекта, который можно открывать / закрывать, вы всегда можете использовать подробный OpenableObject или OpenableInterface : в итоге получается существительное, даже если оно составлено.
Как оно есть. многословен (и немного глуп). Я предпочитаю использовать Openable вместо OpenableObject . Я использую OpenableInterface , если хочу подчеркнуть тот факт, что это интерфейс.
Для объектов, использующих шаблон инверсии зависимостей, я иногда использую суффикс «Пользователь»: ImageUser, LoggerUser, ServiceXUser, .. .
Лучше использовать существительные,