ENTERPRISE JOB SCHEDULER SAJEEV RAMAKRISHNAN 29 AUG 2014.

Slides:



Advertisements
Similar presentations
Implementing Tableau Server in an Enterprise Environment
Advertisements

Tableau Software Australia
Attie Naude 14 May 2013 Windows Azure Mobile Services.
New Release Announcements and Product Roadmap Chris DiPierro, Director of Software Development April 9-11, 2014
SSRS 2008 Architecture Improvements Scale-out SSRS 2008 Report Engine Scalability Improvements.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Next Generation Node (NGN) Technical Overview April 2007.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Web 2.0 with AJAX Students : LASC Ioana KELEMEN Csilla POP Dan Adrian CIOBANU Dumitru Daniel Project leader : Ahmed RHIAT.
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
Understanding and Managing WebSphere V5
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
Creation of hybrid portlet application for file download using IBM Worklight and IBM Rational Application Developer v9 Gaurav Bhattacharjee Lakshmi Priya.
PHP Web Development, PHP Programming
Włodzimierz Funika, Filip Szura Automation of decision making for monitoring systems.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
“This presentation is for informational purposes only and may not be incorporated into a contract or agreement.”
Simship.com LRC, September 22, 2004 Dr. Stephen Flinter Connect Global Solutions.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Christopher Jeffers August 2012
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Enterprise Java Beans Part I Kyungmin Cho 2001/04/10.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
WITSML Service Platform - Enterprise Drilling Information
CHEF II / Sakai Architecture. CHEF II Changes uPortal replaces Jetspeed –jsr 168 portlet, servlet compliant Spring replaces Turbine component framework.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Computer Emergency Notification System (CENS)
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
Dudok de Wit David.  Documents management in a deskless company  SharePoint Online as a solution  Redesigning the documentary organization  Interoperability.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
Running Kuali: A Technical Perspective Ailish Byrne (Indiana University) Jonathan Keller (University of California, Davis)
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
Interstage BPM v11.2 1Copyright © 2010 FUJITSU LIMITED INTERSTAGE BPM ARCHITECTURE BPMS.
CS520 Web Programming Bits and Pieces of Web Programming (II) Chengyu Sun California State University, Los Angeles.
CGS 3066: Web Programming and Design Spring 2016 Introduction to Server-Side Programming.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
J-guar Customization Tool Devanshu Bawa Customization Specialist SOLUTION PARTNERS TRAINING 2016.
Open Software Integrators, LLC 1 Spring Roo - IDE Research ● Basics of Spring Roo (Installation and Roo shell) ● Spring Roo, Maven, Tomcat works! ● Front.
Jenkins 2.x Chris Vogel. Agenda O Jenkins background O Installation O Jenkins 2.x highlights O Build pipelines O Pipeline DSL O Multibranch plugin.
The Holmes Platform and Applications
CGS 3066: Web Programming and Design Spring 2017
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Continuous Integration (CI)
Netscape Application Server
Shared Services with Spotfire
N-Tier Architecture.
Web Development Web Servers.
Understanding SOAP and REST calls The types of web service requests
Consulting Services JobScheduler Architecture Decision Template
Network Load Balancing
Multitier Architecture, MySQL & PHP
Lecture 1: Multi-tier Architecture Overview
Cloud Web Filtering Platform
Technical Capabilities
AIMS Equipment & Automation monitoring solution
UFCEUS-20-2 Web Programming
DBOS DecisionBrain Optimization Server
Web Application Development Using PHP
Presentation transcript:

ENTERPRISE JOB SCHEDULER SAJEEV RAMAKRISHNAN 29 AUG 2014

AGENDA Enterprise Job Scheduler  Background  CRON vs. Enterprise Job Scheduler  Quartz concepts Deployment Architecture  Scheduler features  Hardware/software  Technologies Used Enterprise Job Scheduler Use Cases Conclusion References

BACKGROUND  Enterprise job scheduling is an approach for fulfilling various jobs in an enterprise ranging from workflow automation, system maintenance and providing reminder services  The basic job scheduling solution in most of the UNIX environments rely on CRON jobs. This is a simple program to configure scheduled jobs using a command line interface.  The CRON based solution is not reliable and has a single point of failure in the form of a UNIX node.  Enterprises aim for 99.9 % availability of their services which the current CRON jobs cannot provide.  Highly available systems can improve customer satisfaction and repeated business for an organization.  The requirement of an enterprise job scheduler arise in order to provide highly available fault tolerant scheduling system which can run on multiple nodes in a cluster.  The rich web interface comes as part of this scheduler helps the application support group to respond to their day to day activities as quickly as possible.

CRON VS. ENTERPRISE JOB SCHEDULER FeaturesEnterprise Job SchedulerCRON Load balancingYesNo High AvailabilityYesNo FailoverYesNo ClusteringYesNo ScalabilityYesNo Different types of Jobs (Shell, Java, HTTP, other scripting)YesNo Extensibility using JAVAYesNo One-stop Admin Web GUIYesNo Notification mechanism via YesNo Single point of failureNoYes Inbuilt view of execution historyYesNo Operational efficiencyYesNo Separation of concerns (scheduled jobs)YesNo Remote job executionYesNo Jobs can be stored in DBYesNo Grouping of JobsYesNo Easy to manage application maintenance slotsYesNo Auditing and AccountabilityYesNo

QUARTZ CONCEPTS Jobs And Triggers  A Job is a JAVA class that implement the Job interface, which has only one execute(--) method.  When a job is invoked (triggered), the execute method is invoked by one of the scheduler’s worker threads.  Trigger objects are used to trigger (invoke) the execution (or ‘firing’) of jobs.  Suppose we have an HTTP GET job, which means we have written a JAVA class with an execute(--) method and this method will have the required code to make an HTTP GET call to a given URL with associated properties.  In order to run this HTTP GET job, we need to create a trigger with the scheduling information as well as the various properties required for running this job, say HTTP GET URL, time outs, content- Type etc.  Suppose We are create a trigger to run this job every Saturday with a set of properties, We can call it as trigger1 and if We want to run the same job with different set of properties every Monday, then we can call it as trigger2.  Here we have configured two triggers, trigger1 and trigger2 for the same HTTP GET Job, of a given Job.

DEPLOYMENT ARCHITECTURE Site1 Domain Scheduler(MS1) Site1 DB (Active) Site2 DB (Passive) Dotted arrow = Passive Scheduler(MS2) Site2 Domain Scheduler(MS1) Scheduler(MS2) Web GUI

SCHEDULER FEATURES  Job CRUD Support  Trigger CRUD support  Scheduler control  REST support  Monitoring support  Alerting support ( )  Load balancing & Failover  Platform independent

HARDWARE/SOFTWARE Requirements Operating SystemsLinux / Windows Disk space2 GB JEE ServersWeblogic 10.3.x, Apache Tomcat 6.x, 7.x JDK versions1.6, 1.7 Quartz version2.x DatabaseOracle 10g/11g/ MySQL Deployable.war file or exploded war file folder

TECHNOLOGIES USED Frameworks & Libraries Spring web MVC 3.2 Spring ROO Spring Jackson API Quartz jQuery jqGrid DOJO 1.6 Server Side TechnologiesJSP/JSPX Apache Tiles Client Side TechnologiesHTML JavaScript CSS DatabaseOracle 10g/11g Development ToolsSpring Tool Suite (STS), Maven Version ControlSVN

ENTERPRISE JOB SCHEDULER USE CASES # Use Cases 1Configure any CRON based triggers and invoke any application urls. 2Application support group can group triggers and control them based on the same 3Run local shell / batch scripts or commands 4Reminder services for reminding password reset, certificate renewal etc. 5Control scheduler, jobs and triggers using web GUI or REST services 6Remote shell script execution 7Any new jobs can be added by simply writing a JAVA class which inherits the Quartz Job interface 8Custom Adapter Job for receiving for products where adapter cannot work from more than one site. Eg. OSB 9Monitoring services for monitoring application servers.

CONCLUSION  The scheduler will be able to address the problems of load balancing and fail over in a clustered production environment  It has the ability to schedule jobs much easier and can improve the efficiency and effectiveness of application support group  It will enable the application development team to concentrate on the business logic rather than in scheduling logics  This product ultimately supports and delivers high availability of various enterprise services by increasing the uptime of services.

FUTURE WORK  Workflow support by chaining of multiple triggers  Multi scheduler support. As of now, it can support only single scheduler  More interactive web GUI  Selenium test cases for webpage testing  Flexible alert list for different kinds of trigger failures

REFERENCES   Clarence Ho. Pro Spring 3. Apress, 2012  Ken Rimple, Srini Penchikala. Spring Roo in Action. Manning Publications, 2012  Ashish Sarin. Spring Roo 1.1 Cookbook. Packt Publishing     

Any Questions?

Thank You