Download presentation
Presentation is loading. Please wait.
Published byLydia Fleming Modified over 8 years ago
1
2014 Building Resilience within Mobile Commerce Apps Sonali Kamat Oct 10,2014 #GHC14 2014
2
Mobile : Desktop ratio in the US
3
2014 Mobile : Desktop ratio in India
4
2014 Rapid growth in online shopping in India
5
2014 Network in India Wifi traffic is 20%. The remaining 80% spread equally across 2G and 3G. 2G continues to grow even in urban areas. 3G subscribers encounter a lot of 2G coverage. Network speeds across providers and locations 2G ranges from 21 to 97 Kpbs 3G from 400 to 2310 Kbps High jitter experienced on Mobile Networks. Local PaaS deployments of global providers not there (yet). Takeaway: Large standard deviation in latencies as a function of the network. Global cloud providers are not local enough.
6
2014 Availability Client App NetworkServer Keep a user-centric view of availability
7
2014 Being resilient means …. Higher tolerance to instability in a rapidly changing environment In spite of −Network variances −Server side intermittent failures −Fast pace of feature changes / events
8
2014 Techniques Resilience to network instability −Building for intermittent connectivity −Reducing data footprint Resilience to rapid feature build out / events −Pacing # of client releases Resilience to serverside changes −Isolation of services −Fallback strategies −Caching – for predictable SLAs and avoiding spikes to corresponding services Exploiting domain semantics
9
2014 Techniques Resilience to network instability
10
2014 Building for Intermittent Connectivity Data model resident on client, but with dual origin. Different characteristics of elements within model −Server originated – slow to volatile (e.g. prices) Fine-grained TTL Hierarchical cache – server has the final say. −Client originated Local commit – push in background. Transactional data – as “immediate” as possible. Some flows unavoidably real-time (payments) - so just propagate signal (not data).
11
2014 Reducing data footprint Wide screen size distribution. Top 5 screen sizes ~ 70%. Index image resource or HTTP-Content-Negotiate using: −pixel sizes −Dpi −network “quality” ( ~ q: ) App fetches appropriate image from CDN
12
2014 Techniques Flexibility towards rapid experiments
13
2014 Resilience to experimentation / events Native experiences adaptive to server-side controls −Layout of pages, styles, themes −Server driven, yet uses “native” mobile apis −Changes continually – in response to programs, and events.(e.g. weekend sale on furnishings)
14
2014 Client – JSON
15
2014 Client – “css” within json
16
2014 Techniques Resilience to intermittent service failures
17
2014 Resilience: a core architectural construct on serverside AND Logic implies uptime ~ 1 – (1-x)^N For a Mobile API stack depending on 30 services each that have 99.99% uptime = 2+ hours downtime/month. source: https://github.com/Netflix/Hystrix/wiki
18
2014 Isolation of dependencies Isolation of every single dependency Fault tolerance techniques −separate threads for network bound dependencies with per-dependency thread pools −semaphores (non-blocking) −timeouts −circuit breakers Shed Load Reduce user request latency when failure is expected −fallbacks
19
2014 Fallback Strategies Service-provided fallback −In-place alternates offered by dependency service −Tightly integrated with original dependency service Caller-provided fallback −Invoke fallback for partially completed scatter- gather as a function of response vector.
20
2014 Caching Strategies
21
2014 Caching – pro-active refreshes
22
2014 Techniques Exploiting domain semantics
23
2014 Desired service response time could be relaxed! Example −re-seller fraud detection for physical products. −flash sale of Mi3 phone -> token issuance workflow.
24
2014 Summary - Techniques Resiliency to network instability −Building for intermittent connectivity −Reducing data footprint Resilience to rapid feature build out / events −Pacing # of client releases Resiliency to serverside changes −Isolation of services −Fallback strategies −Caching strategies Exploiting domain semantics
25
2014 References http://gs.statcounter.com/#desktop+mobile+tablet-comparison-IN-monthly-201202-201402 http://gs.statcounter.com/#desktop+mobile+tablet-comparison-IN-monthly-201202-201402 http://techblog.netflix.com/2012/11/hystrix.html http://techblog.netflix.com/2012/11/hystrix.html https://www.dartlang.org/docs/tutorials/futures/ https://www.dartlang.org/docs/tutorials/futures/ http://trai.gov.in/WriteReaddata/ConsultationPaper/Document/Consultation%20Paper%20on%20a mendment%20to%20wireless%20data%20regln%2021042014.pdf http://trai.gov.in/WriteReaddata/ConsultationPaper/Document/Consultation%20Paper%20on%20a mendment%20to%20wireless%20data%20regln%2021042014.pdf http://www.thehindubusinessline.com/features/smartbuy/india-is-still-low-on-the-4g-curve- vodafone/article5797060.ece http://www.thehindubusinessline.com/features/smartbuy/india-is-still-low-on-the-4g-curve- vodafone/article5797060.ece http://tech-blog.flipkart.net/ http://tech-blog.flipkart.net/
26
2014 Got Feedback? Sonali.km8@gmail.com Rate and Review the session using the GHC Mobile App To download visit www.gracehopper.orgwww.gracehopper.org
27
2014 Contact Me Sonali.km8@gmail.com (+91)-9980056436
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.