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.

(MBL304) Building Scalable Mobile Services with Global Footprints | AWS re:Invent 2014


Published on

In this session, hear directly from HTC and EasyTaxi, who share their architecture stories of how they built powerful mobile backend services on AWS. Learn how HTC built a news aggregation service (BlinkFeed), a photo-sharing service (HTC Share), and a phone backup service (HTC Backup) on AWS. Also learn how they used AWS for deploying server code, provisioning handsets, and business intelligence, and how they launched these services worldwide, with high availability and low latency in just 6 months.
EasyTaxi is building the world's largest taxi mobile app. EasyTaxi shares their experience building an app as they scaled to 35+ countries and thousands of transactions per second. They discuss how they had to reinvent their architecture and infrastructure to meet several cultural as well technical challenges such as adapting to different kinds of access, mobile networks, and working with different charsets to change server locations. They share best practices on how they met the demanding traffic and transactional workloads by building on AWS and leveraging help from Amazon Enterprise Support.

Published in: Technology

(MBL304) Building Scalable Mobile Services with Global Footprints | AWS re:Invent 2014

  1. 1. Jan Metzner, Solutions Architect, AWS Germany ViníciusGracia, Founder & CTO, Easy Taxi Suresh Rasaretnam, Architect, HTC
  2. 2. Amazon EC2 Auto Scaling Elastic Load Balancing
  3. 3. Amazon Route 53 Latency-based routing Amazon CloudFront static/dynamic content
  4. 4. AWS already has everything you need Amazon Cognito (Identity Broker) AWS IAM Amazon Cognito (Sync) Amazon DynamoDB Amazon S3 Amazon Mobile Analytics Amazon Kinesis Amazon Redshift Amazon CloudSearch Amazon SNS Amazon SQS Amazon Mobile Analytics
  5. 5. Amazon Cognito Amazon Mobile Analytics Sync Identity
  6. 6. Amazon Cognito Amazon Mobile Analytics Sync Identity Amazon DynamoDB Shared Data Amazon S3 Media Amazon CloudSearch Search
  7. 7. Amazon Cognito Amazon Mobile Analytics Sync Identity Amazon DynamoDB Shared Data Amazon S3 Media Backend Calls Custom Backend Amazon EC2 Amazon CloudSearch Search Amazon SQS ELB
  8. 8. Amazon Cognito Amazon Mobile Analytics Sync Identity Amazon DynamoDB Shared Data Amazon S3 Media Backend Calls Amazon CloudSearch Search Amazon SQS Amazon Redshift Amazon SNS BI Custom Backend Amazon EC2
  9. 9. Amazon Cognito provider = new CognitoCredentialsProvider(context, AWS_ACCOUNT_ID, COGNITO_POOL_ID, COGNTIO_ROLE_UNAUTH, COGNITO_ROLE_AUTH); … not only to SQS –you can access all shared services Session.openActiveSessionFromCache(LoginActivity.this); client = new AmazonSQSClient(provider); client.sendMessage("", "message"); logins HashMap<String, String>(); put("", token); provider.setLogins(logins);
  10. 10. Saudi Arabia Brazil Argentina Peru Mexico Venezuela Colombia Ecuador S. Africa Namibia Angola Botswana Kenya Tanzania Morocco Tunisia Nigeria Ghana Ivory C. Algeria Hong Kong Taiwan Indonesia Malaysia Philippines Singapore Thailand Vietnam Present Coming soon Bolivia Uruguay Puerto Rico Panama Costa Rica Guatemala UAE Jordan Chile India Egypt Pakistan S. Korea
  11. 11. “Everybody has a plan until they get punched in the face.” -Mike Tyson
  12. 12. •Elastic Load Balancingto take care of all our https handling and also to distribute the traffic through all our APIs instances •AWS CloudFormationto deploy an environment as fast as needed •Amazon S3to store driver documents and other files; the ones available online are cached using AmazonCloudFront •Amazon CloudSearchto do text searches on huge datasets •Amazon RDS MySqland MongoDBfor data storage •Amazon SQSfor queued services This servicesallows Easy Taxito focus on delivering innovationto costumers while AWStakes care of the heavy lifting
  13. 13. to manage a large amount of calls and to add them on a queue service that is persistent for 24 hours With AWS services we can implement all this in just a few clicks (fast and easy), it’s just a matter of choosing the best ones for us
  14. 14. • AWS enterprise support gives us access to experts who help us choose the best services and solutions for our challenges • AWS providing us with multiple regions and Availability Zones is key to our success • Without AWS it would be nearly impossible to scale as much and as fast as we need to Availability Zone Availability Zone API API API … API API API … Mongo Mongo
  15. 15. DOWNLOAD OUR APP WEBSITE & SOCIAL CAREERS We are always looking for talent, esspecially in IT!
  16. 16. Who is HTC-Creative Labs? •OEMManufacture –HTC-branded mobile devices –Headquarters in Taipei, Taiwan –Services arm of HTC •(Blinkfeed, Zoe, HTC Backup)
  17. 17. Services built on AWS •Started in 2010 •90% of our services are built on AWS •Current plan is to stay on AWS •We love AWS!–Uptime, Support, Innovation, Global Footprint, and of course scalability
  18. 18. HTC is growing •End-user services •Apps •China/Global •Developers
  19. 19. All about uptime •Data in every DC •Mobile-friendly API –BI –Service-specific •Screen-specific APIs •Background sync Auto-Scaling Group: "Federated Search" TierFederated Search ClusterElastic Search ClusterInitial RequestsRefresh RequestsCatalog requestsImage RequestsNews Service Deployment. US REGIONAuto-Scaling Group: "Federated Search" TierFederated Search ClusterElastic Search ClusterRegion #1- EU 1a DBMasterImage SrvCrawlerDBSlaveAuto-Scaling Group: "RS/IS" TierElastic Load BalancerRS/IS ClusterElastic Load BalancerEU REGIONBundles X8Region #1- US East 1a DBMasterClient Read LogsImage SrvCrawlerTraffic is routed to nearest DC based on locationLog playbackDBSlaveAuto-Scaling Group: "RS/IS" TierElastic Load BalancerRS/IS ClusterSearchElastic Load BalancerRead Count, Event Promotion, Bundles Auto-Scaling Group: "Read Count" TierApp ServerApp Server N+1Elastic Load Balancer
  20. 20. Scaling •Device Provision –Datacenters –Timeouts –Dev/test/stage •Global DNS -Route 53 (Anycast/WRR) –Lookup time:0.269Lookup time:0.132
  21. 21. Launched vs. Deleted Instances Log’s Logs Logs •AWS CloudTrail –Sumologic –Tags –Security –Interdepartmental •Billing
  22. 22. What’s next •Amazon SNS –Push vs.Pull –Breaking news –Location-based content •Amazon Cognitoand Blinkfeed •Trial vs.Registered users •Sync categories across multiple devices. •OpenIDconnect –integration with existing ID systems.
  23. 23.