button{
margin-top:5%;
/*letter-spacing: 1px;*/
line-height: 25px;
font-size: 16px;
background-color: transparent;
border:none;
text-transform: uppercase;
}
button:hover{
color:red;
cursor: pointer;
}
<div class="col-md-12">
<div class="col-md-6 col-xs-12 career">
<button>
<strong>Student Exploring careers</strong>
</button>
</div>
</div>
Можно использовать Кварц и создать бетон Job
адаптер, который делегирует к a Runnable
или Callable
. Кварц' Job
интерфейс добавляет способность поддержать некоторое состояние между вызовами задачи. При желании Кварц может сохранить задания и их состояние длительно в реляционной базе данных, и выполнить их на масштабируемом кластере хостов.
Можно хотеть посмотреть на Кварц.
Кварц является полнофункциональной, системой планирования задания с открытым исходным кодом, с которой можно интегрировать или использовать вдоль стороны фактически любой J2EE или приложение J2SE - от наименьшего автономного приложения до самой большой системы электронной коммерции. Кварц может использоваться для создания простых или сложных расписаний для выполнения десятков, сотен или даже десятков тысяч заданий; задания, задачи которых определяются как стандартные компоненты Java или EJBs. Кварцевый Планировщик включает много функций промышленного класса, таких как транзакции JTA и кластеризация.
Смотрите на http://www.opensymphony.com/quartz/wikidocs/Features.html и посмотрите, имеет ли это уже что-то для Вас.
От той страницы:
С использованием включенного JDBCJobStore весь Jobs и Триггеры, настроенные как "энергонезависимые", хранятся в реляционной базе данных через JDBC
Другое направление могло бы быть чем-то как использование Терракоты, которая имеет способность кластеризировать "кучу" в Вашей JVM и сохранить ее для доступности. Терракота поддерживает интеграцию с Кварцем, если это полезно с точки зрения планирования. Кроме того, существует основной рабочий и передающий модуль интеграции, который мог бы быть полезным также. Терракота является открытым исходным кодом.
Для следования точке Alex Терракотовое решение не сохранило бы задания к Базе данных, они будут персистентными в Терракотовом хранилище распределенной памяти.
Так как Терракота сохраняет хранилище памяти к диску, это - более эффективная версия помещения тех заданий в базу данных.
В то же время это дает Вам чистую модель программирования POJO, таким образом, Вы не должны даже иметь дело с DB txns, ORM и т.п. - если Ваша особая рабочая нагрузка, оказывается, не говорит с DB (в этом случае, Терракота не помогает или причинить Вам боль здесь, это просто помогает распределить работу).
Шаблон MasterWorker поможет, Вы распределить удаетесь на сетке, и можно очень легко начать использовать DistributedExecutorService, утверждая, что работа похожа на это:
CompletionService executor = new DistributedCompletionService(new DistributedExecutorService("myTopologyName"));
executor.submit(new MyRunnable(), null);
...
Future f = executor.take();
Вот ссылка на Руководство по быстрому началу работы в реализации основного рабочего на Терракотовом Штамповочном прессе.
Что более - Терракота не требует, чтобы Вы реализовали сериализуемый - хотя Вы можете, если Вы хотите :)