one-year accomplishment report on i5k@nal

Post on 15-Apr-2017

166 Views

Category:

Engineering

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

One-year Accomplishment Report on i5k@NAL

Jun-Wei Lin

May 13, 2015

Programming and Engineering Challenges

• Task queue

• Automatic build and regression testing

• Load testing

• Single sign-on

• Job automation and integration

Task Queue for BLAST Requests

Build and Deploy the Code

• People develop different parts of a project on their local machines

• Deal with conflicts with a version control system (GitHub)

• Keep the system running on dev server updated – semi-automated by a script

Regression Testing

• Rerun previously completed tests

• Check

– Program behavior has changed

– Previously fixed faults have re-emerged

Regression Testing with Scripts

Regression Testing with Scripts

demo

Integration with Jenkins

Automatic Deployment (blast_build)

Automatic Regression Testing (blast_test)

Load Testing

• Conducted to understand the behavior of the system under a specific expected load

Load Testing on Web Apollo 1.0.4-RC3

• 30 instances, each with 5 users annotating on 3 different scaffolds

• 3 million requests in 13.5 hours (60 requests per second)

• 12 of the 3 million requests failed. e.g. responded with status code 400 (Bad request headers)

• “WA-RC3 looks robust. 99.9996% of the requests responded normally under average arrival rate of 60 requests/sec”

Load Testing with Jmeter

Load Testing with Jmeter

demo

Load Testing with Jmeter and Command Line Interface Integration

• Randomly pick 4 organisms

• Test each organism with 3 users running pre-defined actions 2 times

Load Testing with Jmeter and Jenkins Integration

Single Sign-on

• Current registration process for annotating organisms

Annotating multiple organisms

https://apollo.nal.usda.gov/agrpla https://apollo.nal.usda.gov/cercap https://apollo.nal.usda.gov/drofic https://apollo.nal.usda.gov/lepdec

Single Sign-on for All Our Resources

• An unified interface with customized information – Submitted BLAST queries

– Organisms they can access

– List of created annotations

– Request access to another organisms

– Approve/reject potential annotators

– Tightly connected to our developing dataset submission workflow

One Time Registration

User Dashboard (Prototype)

Apply for Annotation

Panel for Project Owner

Sum Up

• Deal with programming and engineering challenges

• In an automated and integrated way

• Facilitate the i5k project

• Save our time and make us more productive

top related