Version: 0.7.4

Жизненный цикл Claptrap (Claptrap Lifetime Scope)

Жизненный цикл Claptrap разделен на две основные категории в соответствии с мнением автора:жизненный цикл среды выполнения и жизненный цикл времени проектирования.

Жизненный цикл среды выполнения#

Жизненный цикл среды выполнения — это поведение системы Claptrap в памяти отдельных объектов во время выполнения.Например:в веб-системе каждому веб-запросу обычно назначается жизненный цикл, а система Claptrap имеет аналогичную конструкцию жизненного цикла.Эти жизненные циклы имеют определенное влияние на расширение компонентов или развитие бизнеса разработчика.Жизненный цикл среды выполнения платформы Claptrap делится на:уровне процесса (Process), уровне Claptrap и уровне обработчика событий (Event Handler).

Уровень процесса.Объект, разработанный как жизненный цикл на уровне процесса, является одностоловым объектом в обычном смысле этого слова.Каждый запущенный процесс Claptrap имеет свой собственный однокавный объект.Как правило, например, в платформе Claptrap для повышения скорости записи событий на постоянный уровень каждый целевой объект постоянного уровня соответствует пакетным процессорам.Они имеют только один экземпляр на протяжении всего жизненного цикла процесса, соответствующий соответствующему постоянному слою, что позволяет объединять события на постоянный уровень, повышая производительность записи.Как правило, объекты, разработанные как жизненный цикл на уровне процесса, имеют одну или несколько из следующих характеристик:

  1. Логика или код, которые должны выполняться только один раз на протяжении всего жизненного цикла процесса.Обычно это может быть достигнуто с помощью Lazy и односмейных способов.
  2. На протяжении всего жизненного цикла процесса требуется только один объект.Примерами могут быть Claptrap Design Store, Claptrap Options и многое другое.
  3. На протяжении всего жизненного цикла процесса может быть только один объект.Например, Orleans Client.

Класс Claptrap.Объекты жизненного цикла уровня Claptrap создаются с активацией Claptrap и освобождаются вместе с инактивированным Claptrap.Эти объекты обычно имеют сильную связь с Claptrap Identity.Например, Claptrap Design, Event Saver, Event Loader, State Saver и State Loader, связанные с этим Claptrap Identity и т.д.

Уровень обработчика событий (Event Handler).Объекты жизненного цикла на уровне обработчика событий создаются по мере создания обработчика событий и освобождаются по мере выпуска обработчика событий.Для веб-аналогов этот уровень жизненного цикла аналогичен жизненному циклу веб-запроса.Как правило, единица работы (Unit of Work) для унифицированных транзакций базы данных относится к этому уровню.

Жизненный цикл времени проектирования#

Жизненный цикл времени проектирования относится к жизненному циклу бизнес-объекта, соответствующего Claptrap.Это не имеет ничего общего с тем, работает ли программа или нет, даже с тем, используется ли программа.Возьмем, к примеру, заказы в обычной системе электронной коммерции.Бизнес-лимит для одного заказа, как правило, не превышает трех-шести месяцев.По мере превышения этого предела данные заказа больше не могут быть изменены.Этот "трех-шестимесячный" предел времени здесь называется жизненным циклом времени проектирования заказа.В системе Claptrap, если объект превысил жизненный цикл времени проектирования, он проявляется как "бизнес больше не нуждается в активации этого Claptrap".Из этого можно сделать следующие выводы:

  1. События, которые Claptrap уже хранит, теряют смысл, и удаление этих событий может освободить свободное место.
  2. Бизнес-код, соответствующий Claptrap, больше не нуждается в обслуживании, и можно удалить ссылку или удалить код.

Таким образом, чем короче жизненный цикл времени разработки Claptrap, тем лучше уменьшить использование ресурсов и затраты на обслуживание кода, что, в свою очередь, увеличивает затраты на хранение и сложность обслуживания.Таким образом, при проектировании системы Claptrap, как правило, используются более короткие жизненные циклы времени проектирования.И это существительное, но и непосредственно реагировать на самом деле полностью определяется "дизайн". Далее мы перечислим некоторые распространенные методы разделения жизненного цикла времени проектирования.

Метод разделения границ бизнеса#

Это наиболее распространенный метод деления.Разделение бизнес-объектов на основе требований моделирования полей.И эти бизнес-объекты обычно имеют фиксированный жизненный цикл.Как и предыдущие "заказы", это распространенный пример разделения жизненного цикла по границам бизнеса.При разделении с помощью этого метода достаточно обратить внимание на то, что Claptrap удовлетворяет базовым требованиям ,которые "больше или равны минимальному диапазону конкурирующих ресурсов".Разработчики могут испытать это разделение с примером системы продажи билетов на поезд.

Условное разделение границ#

Как правило, разумный жизненный цикл может быть разделен на основе методов разделения границ бизнеса.Однако при разделении только по бизнес-границам могут возникнуть объекты с постоянным жизненным циклом времени разработки.Предположим, что эти объекты снова имеют очень интенсивные операции с событиями.Таким образом, количество создаваемых событий будет необычайно большим.Для этого мы вводим искусственный контроль для сокращения жизненного цикла времени проектирования.Это разделение основано на конкретных условиях.Таким образом, это называется условным методом разгравлиния границ.Наиболее классическим из них является использование "временных ограничений" для разделения.

Здесь мы иллюстрировать это разделение с помощью объекта корзины покупок в примере краткого доступа.Во-первых, корзина является объектом, связанным с пользователем, который может быть активирован до тех пор, пока пользователь всегда присутствует в этой системе, т.е. его жизненный цикл времени проектирования является "постоянным".Таким образом, связанные события не могут быть удалены, и они должны быть сохранены навсегда, чтобы убедиться, что данные корзины являются правильными.Но если мы больше не заботимся о событиях, которые были в корзине год назад.Мы можем вручную разделить корзины отдельных пользователей по годам.В то же время, мы можем сделать "статус копии" в корзине в течение двух соседних лет.Это продолжает данные о состоянии за предыдущий год, что приводит к более короткому жизненному циклу среды разработки корзины пользователя и не влияет на бизнес.Мы можем понять этот метод разделения жизненного цикла времени проектирования на основе времени с помощью классической китайской легендарной истории, "Глупые горы".В истории, дурак является смертным, хотя и не может быть долгой жизни (более короткий жизненный цикл времени проектирования), но дух дурака (более длительный жизненный цикл времени проектирования) может продолжаться с будущими поколениями, и, следовательно, может завершить великое развитие горы.Когда каждое поколение "дураков" меняется, происходит "копия состояния" (духовное продолжение), упомянутое выше.Таким образом, более длительные или даже постоянные требования к жизненному циклу времени проектирования достигались с помощью более короткого жизненного цикла времени проектирования.

"Глупый общественный сдвиг горы Тайхуа, Ван Цзя две горы, квадратные семьсот миль, 78000 миль в высоту, первоначально к югу от Цзичжоу, к северу от северного берега Желтой реки. Под Северной горой находится человек по имени Дурак, которому почти 90 лет, и он живет напротив горы.Он боролся с затором в северной части горы, вышел и вошел, чтобы обойти, созвал всю семью, чтобы обсудить и сказать::"Я стараюсь изо всех сил, чтобы выкопать крутые горы с вами, так что дорога ведет к югу от Юйчжоу, к южному берегу Ханьшуй, хорошо?" Все согласились.Его жена задает вопросы:"С вашей силой, даже квай-отец этот холм не может быть выровняно, может сделать слишком хорошо, как насчет королевского дома?"Кроме того, где земля и камни, которые были вырыты? "Люди говорят:"Бросьте его на край Бохайского моря, к северу от укрытия". Таким образом, дурак во главе с детьми и внуками может нести бремя трех человек в горы, вырезать камни, копать землю, 畚 бохайском море.Вдова соседа Киото, сирота, только что семь или восемь лет, подпрыгивая, чтобы помочь ему.Смена сезона зимой и летом, чтобы добраться туда и обратно один раз. Мудрый старик Хеку насмехается над дураком, не позволяет ему делать это,:"Ты просто глуп!"С оставшимися годами, оставшейся силой, даже трава в горах не может двигаться, и может поставить почву и камень, как это? "Ваш ум упрямый,:упрямый, даже сирота вдовы не могут быть сравняли", вздохнул президент Бэйшань.Даже если я умру, есть сын в, сын имеет внука, внук имеет сына, сын имеет сына, сын имеет внука, дети и внуки бесконечны, но горы не будут расти выше, но и боятся копать неравнодухно? "Реке Ку Чжи-старику нечего ответить. Горный бог, держась за змею, услышал об этом, опасаясь, что он вырыт бесконечно, и сообщил об этом Императору.Император был тронут искренностью дурака и приказал двум сыновьям Геркулеса Куао ходить по этим двум горам, один к востоку от Шофана и один к югу от Юнчжоу.С тех пор, к югу от Цзичжоу до южного берега Ханьшуй, не было никаких высоких горных барьеров.