Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
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-...
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...
Regression Testing
• Rerun previously completed tests
• Check
– Program behavior has changed
– Previously fixed faults hav...
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 req...
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 us...
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.usd...
Single Sign-on for All Our Resources
• An unified interface with customized
information
– Submitted BLAST queries
– Organi...
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 projec...
Upcoming SlideShare
Loading in …5
×

One-year Accomplishment Report on i5k@NAL

278 views

Published on

One-year Accomplishment Report on i5k@NAL

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

One-year Accomplishment Report on i5k@NAL

  1. 1. One-year Accomplishment Report on i5k@NAL Jun-Wei Lin May 13, 2015
  2. 2. Programming and Engineering Challenges • Task queue • Automatic build and regression testing • Load testing • Single sign-on • Job automation and integration
  3. 3. Task Queue for BLAST Requests
  4. 4. 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
  5. 5. Regression Testing • Rerun previously completed tests • Check – Program behavior has changed – Previously fixed faults have re-emerged
  6. 6. Regression Testing with Scripts
  7. 7. Regression Testing with Scripts demo
  8. 8. Integration with Jenkins
  9. 9. Automatic Deployment (blast_build)
  10. 10. Automatic Regression Testing (blast_test)
  11. 11. Load Testing • Conducted to understand the behavior of the system under a specific expected load
  12. 12. 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”
  13. 13. Load Testing with Jmeter
  14. 14. Load Testing with Jmeter demo
  15. 15. 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
  16. 16. Load Testing with Jmeter and Jenkins Integration
  17. 17. Single Sign-on • Current registration process for annotating organisms
  18. 18. 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 …
  19. 19. 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
  20. 20. One Time Registration
  21. 21. User Dashboard (Prototype)
  22. 22. Apply for Annotation
  23. 23. Panel for Project Owner
  24. 24. 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

×