Software design architecture for building loosely coupled, distinct services
Summer Internship Exit Presentation
IBM Research Africa - SWE Intern
The End
Where to ...
Queen's University Belfast
MSc. Applied Cyber Security
Special Thank You!
- Juliet Mutahi (Mentor)
- David Kaguma (Mentor)
- Tonya Nyakeya
- Felix Kwizera
- Isaac Wambugu
- Violette Ogega
- Shelby Darnell
- Samuel Karumba
- Abdigani Diriye
- Kommy Weldemariam (Manager)
Next steps for the project
- Use statistical techniques on the raw data
- Building runtime signatures to detect anomalies
- Design an algorithm to determine when a microservice is not running optimally and assign health score based on this
What I learned...
Technical
- Basics of Java Spring Boot Framework
- JUnit
- Mockito
- Locust
- System Design Principles
- System Scalability Introduction
Growth
Insights & Recommendations
- Language agnosticity
- Better analytical skills
Results
- Latency is 4s on average through AS
- AS Instances 1 ; WPE Instance 2
- Horizontal vs Vertical Scaling of AS
- Caching near AS ; ETags
3. Difference in response time: WPE vs AS
- Clients
- Hatch Rate
- Run Time
Important Terms
Insights & Recommendation
Results
- Get All Wp & Filter Wp by type
- Caching
- Compression
- Reset and Change Password
- Code profiling
2. Average and Minimum Response Times
2. Integration & Load testing (Python)
What I did?
Why Locust (as compared to JMeter)?
- High code support and test flexibility
- Less resource consumption
Insights & Recommendations
Results
- Write locks
- Master-slave replication
- Caching
- Bucket data - pagination
1. Average and Minimum Response Times at a Max Load
What I did?
Why Mockito?
Expressive
Why Microservices?
Project Overview
Outline
Granular Scaling
Mixed Technology Stack
- Who am I?
- Project overview
- What I did?
- Results & Recommendations
- Where to...
Independent Deployment
Who am I?
Independent Development
- Anthony George Mendonca
- BSc. Computer Science, University of Nairobi (2017)
- Safaricom, Lynk Jobs Limited
- Python, JS
- Love travelling, CrossFit and gaming
Diagnosis and testing tool for
Cloud-Based Microservices
Anthony Mendonca
30th August 2018