Dropwizard. A RESTful Love Story. Ryan Kennedy Core Yammer
|
|
- Bonnie Murphy
- 6 years ago
- Views:
Transcription
1 Dropwizard A RESTful Love Story Ryan Kennedy (@rckenned) Core Yammer
2 Dropwizard A RESTful Love Story Ryan Kennedy (@rckenned) Core Yammer + MicrosoE
3 What on earth is Dropwizard?
4
5 Some bearded jerk in a pointy hat
6 or
7
8 Started at Yammer as three services with largely copy/pasted code
9 By service number three we idenofied and disolled the paqern
10 What was the paqern?
11 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
12 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
13 YAML configuraoon file
14 hqp: port: 8080 adminport: 8081 # a string foo: foo value # a duraoon bar: 60 seconds # a number baz: 10101
15 ConfiguraOon validaoon
16 public class MyAppConfiguraOon extends ConfiguraOon private String private DuraOon bar private long baz = 1; }
17 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
18
19 Gauges Metrics.newGauge(My.class, jobs", new Gauge<Integer>() public Integer value() { return queue.size(); } } );
20 Counters Counter pendingjobs = Metrics.newCounter(My.class, jobs"); public void addjob(job job) { pendingjobs.inc(); queue.offer(job); } public Job takejob() { pendingjobs.dec(); return queue.take(); }
21 Meters Meter requests = Metrics.newMeter( My.class, "requests", "requests", TimeUnit.SECONDS); public void handlerequest(request request, Response response) { requests.mark(); // etc }
22 Histograms Histogram responsesizes = Metrics.newHistogram( My.class, "response- sizes"); public void handlerequest(request request, Response response) { // etc int length = response.getcontent().length; responsesizes.update(length); }
23 Timers Timer responses = Metrics.newTimer(My.class, "responses", TimeUnit.MILLISECONDS, TimeUnit.SECONDS); public String handlerequest(request request, Response response) { final TimerContext context = responses.ome(); try { // etc; return "OK"; } finally { context.stop(); } }
24 Health Checks public class DatabaseHealthCheck extends HealthCheck public Result check() throws ExcepOon { if (database.isconnected()) { return Result.healthy(); } else { return Result.unhealthy("Cannot connect to db ); } } }
25 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
26 JMX ReporOng
27 HTTP ReporOng
28 Metrics hqp://host:adminport/metrics
29
30
31 Metrics reporters can be added to adapt dropwizard metrics to your collecoon system of choice
32 Health Checks hqp://host:adminport/healthcheck
33
34 Thread Dumps hqp://hostname:adminport/threads
35
36 Ping hqp://hostname:adminport/ping
37
38 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
39 Dropwizard provides its own applicaoon logging abstracoon
40 HTTP request logging is supported as well
41 Dropwizard provides log file rotaoon and compression
42 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
43 The unbeatable Jackson
44 Dropwizard has out- of- the- box support for sophisocated configuraoon, applicaoon metrics, logging, operaoonal tools, and much more, allowing you and your team to ship a producoon- quality HTTP +JSON web service
45 Dropwizard embeds JeQy for all your HTTP serving needs
46 JAX- RS (JSR- 311) for all your RESTful needs
47 @Path( /users/{id} ) public class UserResource public User get(@pathparam( id ) long id) { return db.finduserbyid(id); } public User update(@pathparam( id ) long id, User user) { return db.updateuser(id, user); }
48 How Yammer uses Dropwizard
49 Lots of small services 16 and counong
50 Maven is our friend
51 SOck the code in GitHub
52 Shade your JARs
53 Get yourself some cononuous integraoon
54 Write yourself a startup script
55 Have a good deploy story
56 Over Ome, Dropwizard has grown a few appendages
57 Dropwizard Client HQpClient or JerseyClient flavors
58 Dropwizard DB JDBI as a service
59 Dropwizard AuthenOcaOon Abstracted authenocaoon providers for OAuth 2 and Basic Auth
60 An public class MyResource public MyResponse = false) Token token) { if (token!= null) { return new MyResponse(getUser(token)); } else { return new MyResponse(getGuestUser()); } } }
61 Dropwizard Views Full blown applicaoon UIs or just a nice admin interface
62 Dropwizard Scala The original Dropwizard for those who don t know any beqer
63 Dropwizard TesOng Test JSON representaoons and resources
64 I blew through that preqy quickly, fortunately you have hqp://dropwizard.codahale.com/
65 And the sample applicaoon hqps://github.com/codahale/ dropwizard
66 And (hopefully) Ome for quesoons! Also WE RE HIRING!
Microservices To-Go mit Dropwizard
Microservices To-Go mit Dropwizard Mario Goller Software Engineer, Swisscom AG mario.goller@swisscom.com Java Forum Stuttgart 2017 Excursion: Architecture Comparison Monolith: multiple modules in the same
More informationSimple REST-APIs with Dropwizard and Swagger. Bernd Schönbach LeanIX GmbH
Simple REST-APIs with Dropwizard and Swagger Bernd Schönbach LeanIX GmbH Motivation Quickly create REST-APIs Make it testable Deploy with a click Or even better automatically Provide Documentation without
More informationOAuth2 Autoconfig. Copyright
Copyright Table of Contents... iii 1. Downloading... 1 1.1. Source... 1 1.2. Maven... 1 1.3. Gradle... 2 2. Authorization Server... 3 3. Resource Server... 4 I. Token Type in User Info... 5 II. Customizing
More informationRoad to Auto Scaling
Road to Auto Scaling Varun Thacker Lucidworks Apache Lucene/Solr Committer, and PMC member Agenda APIs Metrics Recipes Auto-Scale Triggers SolrCloud Overview ZooKee per Lots Shard 1 Leader Shard 3 Replica
More informationEclipse MicroProfile: Accelerating the adoption of Java Microservices
Eclipse MicroProfile: Accelerating the adoption of Java Microservices Emily Jiang twitter @emilyfhjiang 10 th October 2017 What is Eclipse MicroProfile? Eclipse MicroProfile is an open-source community
More informationMicroservices. Are your Frameworks ready? Martin Eigenbrodt Alexander Heusingfeld
Microservices Are your Frameworks ready? Martin Eigenbrodt martin.eigenbrodt@innoq.com Alexander Heusingfeld alexander.heusingfeld@innoq.com Microservices? Levels of Architecture Domain architecture Macro
More informationMicroservices mit Java, Spring Boot & Spring Cloud. Eberhard Wolff
Microservices mit Java, Spring Boot & Spring Cloud Eberhard Wolff Fellow @ewolff What are Microservices? Micro Service: Definition > Small > Independent deployment units > i.e. processes or VMs > Any technology
More informationRESTEasy. Distributed peace of mind
RESTEasy Distributed peace of mind 1 Agenda Why REST? Writing RESTFul Web Services in Java JAX-RS RESTEasy features RESTEasy Roadmap 2 Speaker s Qualifications RESTEasy project lead Fully certified JAX-RS
More information5 System architecture
5 System architecture This chapter provides an overview of the system architecture. The first section presents a superficial explanation of the entire systems architecture. In section two, architectural
More informationOptimizing Enterprise Java for a Microservices Architecture Otávio
Optimizing Enterprise Java for a Microservices Architecture Otávio Santana @otaviojava otaviojava@apache.org Enterprise Java Standards History J2EE 1.2 2000 Release Cadence J2EE 1.3 J2EE 1.4 2005 Java
More informationJohn Hicks Internet2 - Network Research Engineer perfsonar
perfsonar MoOvaOon Possible SoluOons Finding a soluoon to network performance problems can be broken into two disonct steps: Use of Diagnos(c Tools to locate problems Tools that acovely measure performance
More informationfunctional ErlangVM Parallelism
functional functional ErlangVM functional ErlangVM Parallelism Who wants to go and build a system in Elixir? You shouldn t Elixir, Your Monolith and You Tobias Pfeiffer @PragTob pragtob.info Your Monolith
More informationIn dropwizard metric framework, it use separate thread to scan the metrics map and do flush at a fixed interval.
Runtime statistics As a monitoring system, user may ask question like: Is the system healthy? what's the heat point of the system? How many events is processed per second? Is the data well partitioned
More informationFROM VSTS TO AZURE DEVOPS
#DOH18 FROM VSTS TO AZURE DEVOPS People. Process. Products. Gaetano Paternò @tanopaterno info@gaetanopaterno.it 2 VSTS #DOH18 3 Azure DevOps Azure Boards (ex Work) Deliver value to your users faster using
More informationExceptions and Libraries
Exceptions and Libraries RS 9.3, 6.4 Some slides created by Marty Stepp http://www.cs.washington.edu/143/ Edited by Sarah Heckman 1 Exceptions exception: An object representing an error or unusual condition.
More informationEclipse Incubator. https://projects.eclipse.org/projects/technology.microprofile - ASLv2 License.
Current Status 1 Eclipse Incubator https://projects.eclipse.org/projects/technology.microprofile - ASLv2 License http://microprofile.io/ - Home Page https://github.com/eclipse - Eclipse Foundation GitHub
More informationJenkins: AMPLab s Friendly Butler. He will build your projects so you don t have to!
Jenkins: AMPLab s Friendly Butler He will build your projects so you don t have to! What is Jenkins? Open source CI/CD/Build platform Used to build many, many open source software projects (including Spark
More informationLNE. Vlaamse Milieuoverheid Flemish environmental government. Author: Patrik Uytterhoeven
Zabbix @ LNE Vlaamse Milieuoverheid Flemish environmental government Author: Patrik Uytterhoeven Who Am I Name: Patrik Uytterhoeven Job: Open-source consultant Company: Open-future Zabbix Trainer Author:
More informationLarge Scale MySQL Migration
to PostgreSQL! May 17, 2012 Content 1 Presentation Former Architecture A Wind of Change 2 PostgreSQL Architecture 3 4 In production Any question? Content 1 Presentation Former Architecture A Wind of Change
More informationHigh performance reactive applications with Vert.x
High performance reactive applications with Vert.x Tim Fox Red Hat Bio Employed By Red Hat to lead the Vert.x project Worked in open source exclusively for the past 9 years Some projects I've been involved
More informationGetting Started With Feature Toggle in Java
Guide Getting Started With Feature Toggle in Java INTRO Feature toggles (also known as feature flags) are simple. You want to introduce new behavior in a Java application, but you re not ready to turn
More informationIntroducing Jaeger 1.0
Introducing Jaeger 1.0 Yuri Shkuro (Uber Technologies) CNCF Webinar Series, Jan-16-2018 1 Agenda What is distributed tracing Jaeger in a HotROD Jaeger under the hood Jaeger v1.0 Roadmap Project governance,
More informationConstructors for classes
Constructors for Comp Sci 1570 Introduction to C++ Outline 1 2 3 4 5 6 7 C++ supports several basic ways to initialize i n t nvalue ; // d e c l a r e but not d e f i n e nvalue = 5 ; // a s s i g n i
More informationWriting REST APIs with OpenAPI and Swagger Ada
Writing REST APIs with OpenAPI and Swagger Ada Stéphane Carrez FOSDEM 2018 OpenAPI and Swagger Ada Introduction to OpenAPI and Swagger Writing a REST Ada client Writing a REST Ada server Handling security
More informationGuide - Deploying for Production. apiman Final
Guide - Deploying for Production apiman 1.2.9.Final 1. Deployment Tooling for apiman... 1 2. Architecture Summary... 3 3. Database... 5 4. Elasticsearch... 7 5. Keycloak... 9 6. API Gateway... 11 6.1.
More informationAssigned Date: August 27, 2014 Due Date: September 7, 2015, 11:59 PM
15440: Distributed Systems Fall 2015 Problem Solving Assignment 1 A Java Programming Preparation for Project 1 Assigned Date: August 27, 2014 Due Date: September 7, 2015, 11:59 PM 1. Warm Up with Some
More informationCanonical Identity Provider Documentation
Canonical Identity Provider Documentation Release Canonical Ltd. December 14, 2018 Contents 1 API 3 1.1 General considerations.......................................... 3 1.2 Rate limiting...............................................
More informationMidterm Exam CS 251, Intermediate Programming October 8, 2014
Midterm Exam CS 251, Intermediate Programming October 8, 2014 Name: NetID: Answer all questions in the space provided. Write clearly and legibly, you will not get credit for illegible or incomprehensible
More informationhybris-as-a-service A microservices architecture in action
hybris-as-a-service A microservices architecture in action Andrea Stubbe Klaus Herrmann Product and Technology @ hybris Disclaimer This presentation outlines our general product direction and should not
More informationStateless Microservice Security via JWT, TomEE and MicroProfile
Stateless Microservice Security via JWT, TomEE and MicroProfile Jean-Louis Monteiro Tomitribe Why am I here today? Microservices architecture case Security opeons OAuth2 with JWT HTTP Signatures Demo with
More informationCS111: PROGRAMMING LANGUAGE II
CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1(c): Java Basics (II) Lecture Contents Java basics (part II) Conditions Loops Methods Conditions & Branching Conditional Statements A
More informationBox: Using HBase as a message queue. David MacKenzie Staff So2ware Engineer
/events @ Box: Using HBase as a message queue David MacKenzie Staff So2ware Engineer Share, manage and access your content from any device, anywhere 2 What is the /events API? RealOme stream of all acovity
More informationExtending Flink s Streaming APIs
Extending Flink s Streaming APIs Kostas Kloudas @KLOUBEN_K Flink Forward San Francisco April 11, 2017 1 Original creators of Apache Flink Providers of the da Platform, a supported Flink distribution 2
More informationSunday, May 1,
1 Governing Services, Data, Rules, Processes and more Randall Hauch Project Lead, ModeShape Kurt Stam Project Lead, Guvnor @rhauch @modeshape @guvtalk 2 Scenario 1 Build business processes using existing
More informationJSR 311: JAX-RS: The Java API for RESTful Web Services
JSR 311: JAX-RS: The Java API for RESTful Web Services Marc Hadley, Paul Sandoz, Roderico Cruz Sun Microsystems, Inc. http://jsr311.dev.java.net/ TS-6411 2007 JavaOne SM Conference Session TS-6411 Agenda
More informationArrays. Comp Sci 1570 Introduction to C++ Array basics. arrays. Arrays as parameters to functions. Sorting arrays. Random stuff
and Arrays Comp Sci 1570 Introduction to C++ Outline and 1 2 Multi-dimensional and 3 4 5 Outline and 1 2 Multi-dimensional and 3 4 5 Array declaration and An array is a series of elements of the same type
More informationScriptable Markdown pretty-printing with GraalVM
Scriptable Markdown pretty-printing with GraalVM Pascal Maissen pascal.maissen@unifr.ch 20.11.2018 Seminar Software Composition, University of Bern Motivation Implement a pretty printer for markdown in
More informationLeaving the State: Sessionless (Stateless) Authentication in D8 with Whole Foods Market. BADCamp 2017
Leaving the State: Sessionless (Stateless) Authentication in D8 with Whole Foods Market BADCamp 2017 These Guys Dr J Daverth Technical Lead, Whole Foods Market D.O.: dr-jay BitBucket: drjdaverth LinkedIn:
More informationCoding for OCS. Derek Endres Software Developer Research #OSIsoftUC #PIWorld 2018 OSIsoft, LLC
Coding for OCS Derek Endres Software Developer Research dendres@osisoft.com 1 Planned Agenda Intro (~20 min) Presentation formalities Intro to OCS Detail of what I am going to do Building the app (~55
More informationFall Problem Set 1
15440 - Fall 2017 Problem Set 1 Out: August 24, 2017 Due: September 11, 2017 1 Warm Up [40 Points] Warm up with some critical concepts in Java Object Oriented and Multithreading Programming: Choose the
More informationLightbend Lagom Microservices Just Right. Duncan DeVore Henrik Engström Philly JUG - July 27, 2016
Lightbend Lagom Microservices Just Right Duncan DeVore - @ironfish Henrik Engström - @h3nk3 Philly JUG - July 27, 2016 Lagom - [lah-gome] Adequate, sufficient, just right A great explanation of Lagom:
More informationBENZINGA.COM TCP APIv1.1
BENZINGA.COM TCP APIv1.1 Line Endings All line endings will be in the expected format: =BZEOT\r\n Commands All commands that returns or send data will include a colon (:) and possible whitespace ( ) between
More informationModern app programming
Modern app programming with RxJava and Eclipse Vert.x #QConSP @vertx_project Who am I? Vert.x core team member since 2016 Working at since 2012 Contributing specifically to monitoring and clustering @tsegismont
More informationDeploy Early, Deploy Often, Deploy Safely Andy Lowe
Deploy Early, Deploy Often, Deploy Safely Andy Lowe From User Story to Production Feature Basic Process Write Some Code Commit Automated UAT Deploy Acceptance Prod Tests Deploy Then There s All The Other
More informationEasy Distributed Systems Using Hazelcast. Peter Veentjer
Easy Distributed Systems Using Hazelcast Peter Veentjer Whoami Working for Hazelcast Team Lead Quality & Performance Author of Mastering Hazelcast 3' 14 years Java experience Big love Concurrency control
More informationHuge Codebases Application Monitoring with Hystrix
Huge Codebases Application Monitoring with Hystrix 30 Jan. 2016 Roman Mohr Red Hat FOSDEM 2016 1 About Me Roman Mohr Software Engineer at Red Hat Member of the SLA team in ovirt Mail: rmohr@redhat.com
More informationOpen Java EE and Eclipse MicroProfile - A New Java Landscape for Cloud Native Apps
EclipseCon Europe 2017 Open Java EE and Eclipse MicroProfile - A New Java Landscape for Cloud Native Apps Kevin Sutter MicroProfile and Java EE Architect @kwsutter Emily Jiang MicroProfile Development
More informationCrash Course in Java. Why Java? Java notes for C++ programmers. Network Programming in Java is very different than in C/C++
Crash Course in Java Netprog: Java Intro 1 Why Java? Network Programming in Java is very different than in C/C++ much more language support error handling no pointers! (garbage collection) Threads are
More informationFINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar
FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar www.vuhelp.pk Solved MCQs with reference. inshallah you will found it 100% correct solution. Time: 120 min Marks:
More informationSDN AmLight: One Year Later
SwitchOn Workshop São Paulo/Brazil October 15 th 2015 SDN Testbeds @ AmLight: One Year Later Jeronimo A. Bezerra Florida Interna3onal University Describing AmLight AmLight is a Distributed
More informationvrealize Code Stream Plug-In SDK Development Guide
vrealize Code Stream Plug-In SDK Development Guide vrealize Code Stream 2.2 This document supports the version of each product listed and supports all subsequent versions until the document is replaced
More informationEclipse Scout. Release Notes. Scout Team. Version 7.0
Eclipse Scout Release Notes Scout Team Version 7.0 Table of Contents About This Release.......................................................................... 1 Service Releases..........................................................................
More informationGenesys Mobile Services Deployment Guide. Setting ORS Dependencies
Genesys Mobile Services Deployment Guide Setting ORS Dependencies 4/6/2018 Setting ORS Dependencies Contents 1 Setting ORS Dependencies 1.1 Setting ORS Options 1.2 Deploying DFM Files 1.3 Additional ORS
More informationAbstract. 1. What is an ABSTRACT METHOD? 2. Why you would want to declare a method as abstract? 3. A non-abstract CLASS is called a concrete class
ABSTRACT 2 1. What is an ABSTRACT METHOD? 2 2. Why you would want to declare a method as abstract? 2 3. A non-abstract CLASS is called a concrete class 2 4. Abstract Example 2 5. If you are extending ABSTRACT
More informationEclipse Lyo Overview. Michael Fiedler, Eclipse Lyo committer IBM Corporation
Eclipse Lyo Overview http://eclipse.org/lyo Michael Fiedler, Eclipse Lyo committer 1 Agenda Eclipse Lyo background Content and Plans Test Suites OSLC4J Samples Next Steps 2 OSLC Specifications OSLC Core
More informationUniversity of Palestine. Mid Exam Total Grade: 100
First Question No. of Branches (5) A) Choose the correct answer: 1. If we type: system.out.println( a ); in the main() method, what will be the result? int a=12; //in the global space... void f() { int
More informationDevOps examples on NonStop Tools Overview. Cor Geboers, ATC Consultant
DevOps examples on NonStop Tools Overview Cor Geboers, ATC Consultant About me Cor Geboers Senior Consultant in NonStop ATC, based in Belgium 35+ years in IT development and support 25+ years NonStop experience
More informationBrekeke PBX Version 2 ARS Plug-in Developer s Guide Brekeke Software, Inc.
Brekeke PBX Version 2 ARS Plug-in Developer s Guide Brekeke Software, Inc. Version Brekeke PBX Version 2 ARS Plug-in Developer s Guide Revised February 2010 Copyright This document is copyrighted by Brekeke
More informationCOMP 110/L Lecture 10. Kyle Dewey
COMP 110/L Lecture 10 Kyle Dewey switch Outline switch Problem if is verbose when checking many conditions. Problem if is verbose when checking many conditions. if (x == 5) { return foo ; else if (x ==
More informationcamel.apache.org/eip from neworder choice from neworder choice when iswidget to widget from neworder choice when iswidget to widget otherwise to therest from (neworder) choice when (iswidget) to (widget)
More informationPerformance Monitors Setup Guide
Performance Monitors Setup Guide Version 1.0 2017 EQ-PERF-MON-20170530 Equitrac Performance Monitors Setup Guide Document Revision History Revision Date May 30, 2017 Revision List Initial Release 2017
More informationSiegfried Goeschl. Gatling Tales From A Journey
Siegfried Goeschl Gatling Tales From A Journey George International Turning George Online Banking into a multi-tenant and group-wide platform Single code base Currently targeting four tenants Server-side
More informationTiers (or layers) Separation of concerns
Tiers (or layers) Separation of concerns Hiding the type of storage from the client class Let s say we have a program that needs to fetch objects from a storage. Should the program have to be concerned
More informationCS 520 Theory and Practice of Software Engineering Fall 2018
Logistics CS 520 Theory and Practice of Software Engineering Fall 2018 Best and worst programming practices September 11, 2018 Reminder Recap: software architecture vs. design Class website: https://people.cs.umass.edu/~brun/class/2018fall/cs520/
More informationCS64 Week 5 Lecture 1. Kyle Dewey
CS64 Week 5 Lecture 1 Kyle Dewey Overview More branches in MIPS Memory in MIPS MIPS Calling Convention More Branches in MIPS else_if.asm nested_if.asm nested_else_if.asm Memory in MIPS Accessing Memory
More informationTroubleshooting Guide and FAQs Community release
Troubleshooting Guide and FAQs Community 1.5.1 release This guide details the common problems which might occur during Jumbune execution, help you to diagnose the problem, and provide probable solutions.
More informationGiovanni Stilo, Ph.D. 140 Chars to Fly. Twitter API 1.1 and Twitter4J introduction
Giovanni Stilo, Ph.D. stilo@di.uniroma1.it 140 Chars to Fly Twitter API 1.1 and Twitter4J introduction Twitter (Mandatory) Account General operation REST principles Requirements Give every thing an ID
More informationThe Next Generation. Prabhat Jha Principal Engineer
The Next Generation Prabhat Jha Principal Engineer What do you wish you had in an Open Source JEE Application Server? Faster Startup Time? Lighter Memory Footprint? Easier Administration? 7 Reasons To
More informationAssignment 2 Bootstrap
Assignment 2 Bootstrap The API + Command Line Specification Walking Skeleton Walking Skeleton : http://alistair.cockburn.us/walking+skeleton A Walking Skeleton is a tiny implementation of the system that
More informationComputer Science 1 Honors
Computer Science 1 Honors Will be Most methods are too complex simply to call them and let them do their job. Methods almost always need more information. For example, a method that finds a square root,
More informationAzure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region
Azure DevOps Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region What is DevOps? People. Process. Products. Build & Test Deploy DevOps is the union of people, process, and products to
More informationConfigJSR and Friends. Mark Struberg, RISE GmbH, Apache Software Foundation, INSO TU Wien
ConfigJSR and Friends Mark Struberg, RISE GmbH, Apache Software Foundation, INSO TU Wien About me Mark Struberg 25++ years in the industry Apache Software Foundation member struberg [at] apache.org RISE
More informationCS314 Software Engineering Sprint 5 - Release!
CS314 Software Engineering Sprint 5 - Release! Dave Matthews Sprint 5 Summary Use Level 2 and 3 software engineering processes/tools Clean Code, Coverage, White Box Testing, Code Climate Learn about Inspections
More information301AA - Advanced Programming [AP-2017]
301AA - Advanced Programming [AP-2017] Lecturer: Andrea Corradini andrea@di.unipi.it Tutor: Lillo GalleBa galleba@di.unipi.it Department of Computer Science, Pisa Academic Year 2017/18 AP-2017-07: So%ware
More informationExample rest-xml-json can be browsed at https://github.com/apache/tomee/tree/master/examples/rest-xml-json
Simple REST Example rest-xml-json can be browsed at https://github.com/apache/tomee/tree/master/examples/rest-xml-json Defining a REST service is pretty easy, simply ad @Path annotation to a class then
More informationCS 520 Theory and Practice of Software Engineering Fall 2017
Logistics CS 520 Theory and Practice of Software Engineering Fall 2017 Best and worst programming practices September 12, 2017 Recap: software architecture vs. design Recap: software architecture examples
More informationVersion Control with Git and What is there in Project 1 PALLABI GHOSH COMPUTER NETWORKS RECITATION 1
Version Control with Git and What is there in Project 1 PALLABI GHOSH (PALLABIG@ANDREW.CMU.EDU) 15-441 COMPUTER NETWORKS RECITATION 1 What is version control? Revisit previous code versions Backup projects
More informationCreating RESTful web services with Spring Boot
Creating RESTful web services with Spring Boot The Spring framework Free and open source Inversion of Control Container (IoC) Modules DI / AOP Data /Security Web MVC/ REST So much more +++ What is Spring
More informationCS 520 Theory and Practice of Software Engineering Fall 2017
CS 520 Theory and Practice of Software Engineering Fall 2017 Best and worst programming practices September 12, 2017 Logistics Recap: software architecture vs. design Specification Architecture Development
More informationSaltStack. Orchestration & Application Deployment. Arnold Bechtoldt Oberhausen,
SaltStack Orchestration & Application Deployment Arnold Bechtoldt Oberhausen, 07.11.2015 Arnold Bechtoldt Systems Engineer @ inovex GmbH Platform Engineering System Automation & Development DevOps Support
More informationTishik Int. University / College of Science / IT Dept. This Course based mainly on online sources ADVANCED MOBILE APPLICATIONS / Spring 1
ADVANCED MOBILE APPLICATIONS / 2018-2019 Spring Tishik Int. University / College of Science / IT Dept. Presented By: Mohammad Salim Al-Othman For 4 th Grade Students This Course based mainly on online
More informationTM DevOps Use Case. 2017TechMinfy All Rights Reserved
Document Details Use Case Name TMDevOps Use Case04 First Draft 10 th Dec 2017 Author Reviewed By Amrendra Kumar Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Pre-Conditions/Trigger... 4
More information// initialize array to true. for (i = 0; i < s; i++) f[i] = true; // get rid of known non-primes f[0] = f[1] = false;
Listing 1: GeneratePrimes.java This class Generates prime numbers up to a user specified maximum. The algorithm used is the Sieve of Eratosthenes. Eratosthenes of Cyrene, b. c. 276 BC, Cyrene, Libya
More informationINTRODUCTION. 2
1 INTRODUCTION It is of no secret that Android is loved by millions of people around the world. Created and developed by Google, it would be most developers dream job. That being said, there are a lot
More informationThe Actual Real World at EclipseCon/ALM
Tycho The Actual Real World at EclipseCon/ALM Raise your Hand if you are Sure Addressing the Issues Real World: Tycho Issues World Wide Distributed Teams India, China, Europe, Argentina, United States
More informationAdvanced Programming - JAVA Lecture 4 OOP Concepts in JAVA PART II
Advanced Programming - JAVA Lecture 4 OOP Concepts in JAVA PART II Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Ad hoc-polymorphism Outline Method overloading Sub-type Polymorphism Method overriding Dynamic
More informationCSE 331 Software Design & Implementation
CSE 331 Software Design & Implementation Hal Perkins Spring 2017 GUI Event-Driven Programming 1 The plan User events and callbacks Event objects Event listeners Registering listeners to handle events Anonymous
More informationUnderstanding RESTful APIs and documenting them with Swagger. Presented by: Tanya Perelmuter Date: 06/18/2018
Understanding RESTful APIs and documenting them with Swagger Presented by: Tanya Perelmuter Date: 06/18/2018 1 Part 1 Understanding RESTful APIs API types and definitions REST architecture and RESTful
More informationConnexion Documentation
Connexion Documentation Release 0.5 Zalando SE Nov 16, 2017 Contents 1 Quickstart 3 1.1 Prerequisites............................................... 3 1.2 Installing It................................................
More informationWhat s new in IBM Operational Decision Manager 8.9 Standard Edition
What s new in IBM Operational Decision Manager 8.9 Standard Edition Release themes User empowerment in the Business Console Improved development and operations (DevOps) features Easier integration with
More informationGAVIN KING RED HAT CEYLON SWARM
GAVIN KING RED HAT CEYLON SWARM CEYLON PROJECT A relatively new programming language which features: a powerful and extremely elegant static type system built-in modularity support for multiple virtual
More informationDealing with Bugs. Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 27 04/21/2009
Dealing with Bugs Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 27 04/21/2009 University of Colorado, 2009 1 Goals 2 Review material from Chapter 11 of Pilone & Miles Dealing with
More informationJava EE 8 What s coming? David Delabassee Oracle May 17, 2017
Java EE 8 What s coming? David Delabassee - @delabassee Oracle May 17, 2017 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes
More informationAuthentication CS 4720 Mobile Application Development
Authentication Mobile Application Development System Security Human: social engineering attacks Physical: steal the server itself Network: treat your server like a 2 year old Operating System: the war
More informationAdvanced MEIC. (Lesson #18)
Advanced Programming @ MEIC (Lesson #18) Last class Data races Java Memory Model No out-of-thin-air values Data-race free programs behave as expected Today Finish with the Java Memory Model Introduction
More informationLiberty Right Fit for MicroProfile
IBM _ 1 Liberty Right Fit for MicroProfile Alasdair Nottingham, IBM, STSM, WebSphere Runtime Architect Kevin Sutter, IBM, STSM, Java EE Architect JavaOne Sept 2016 Who Are We? Kevin Sutter WebSphere Java
More informationDatabaseRESTAPI
ORDS DatabaseRESTAPI https://oracle.com/rest Jeff Smith Senior Principal Product Manager Jeff.d.smith@oracle.com @thatjeffsmith Database Tools, Oracle Corp Not just THAT SQLDev Guy I GET ORDS, too! Blogs
More informationBeyond Unit Testing. About Us. Steve Loughran Julio Guijarro HP Laboratories, Bristol, UK. steve.loughran at hpl.hp.com julio.guijarro at hpl.hp.
Beyond Unit Testing Steve Loughran Julio Guijarro HP Laboratories, Bristol, UK steve.loughran at hpl.hp.com julio.guijarro at hpl.hp.com Julio Guijarro About Us Research scientist at HP Laboratories on
More informationJAX-RS and CDI Bike the (ReacIve) Bridge CON2549
JAX-RS and CDI Bike the (ReacIve) Bridge CON2549 David Delabassée (@delabassee) - Oracle José Paumard (@josepaumard) - Consultant October, 2017 2 @delabassee 3 @JosePaumard @JosePaumard https://github.com/josepaumard
More informationDeveloper: Chaithanya Krishna Gogineni Graduate Teaching Assistant Software Engineering Computer Science Department Northern Illinois University
Developer: Chaithanya Krishna Gogineni Graduate Teaching Assistant Software Engineering Computer Science Department Northern Illinois University DeKalb, Illinois. www.chaithanyagogineni.com 1.Requirements
More information