#devshark welcome to #devshark. #devshark HELLO! I’M Ville Rauma Fingersoft Product Owner Web

Slides:



Advertisements
Similar presentations
Windows Azure for SharePoint people Dennis – Solution Architect Microsoft Windows Azure.
Advertisements

What Is Azure ! Thierry Gasser Technical Solution Professional (TSP)
SSRS 2008 Architecture Improvements Scale-out SSRS 2008 Report Engine Scalability Improvements.
Amazon RDS (MySQL and Oracle) and SQL Azure Emil Tabakov Telerik Software Academy academy.telerik.com.
“It’s going to take a month to get a proof of concept going.” “I know VMM, but don’t know how it works with SPF and the Portal” “I know Azure, but.
Programming languages + tools.NET, Visual Studio, TFS + Git, Java, NodeJS, PHP, Python, Ruby, C++ Microsoft cloud infrastructure PaaS Web Mobile.
Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation.
Devices & Services Full WinRT 11,000 members Windows Phone Runtime 2,800 shared members 600 new members Networking Proximity In-App Purchase.
Scalable Server Load Balancing Inside Data Centers Dana Butnariu Princeton University Computer Science Department July – September 2010 Joint work with.
Migrating Applications to Windows Azure Virtual Machines Michael Washam Senior Technical Evangelist Microsoft Corporation.
22-Aug-15 | 1 |1 | Help! I need more servers! What do I do? Scaling a PHP application.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Cross Platform Mobile Backend with Mobile Services James
A Tutorial on Windows Phone 7 and Windows Azure COSC7388 Spring 2011 Huy Nguyen.
A Brief Overview by Aditya Dutt March 18 th ’ Aditya Inc.
What is Cloud Computing? Cloud computing is the delivery of computing capabilities as a service, making access to IT resources like compute power, networking.
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
Visual Studio 2012 or 2013 VisualStudio.com (or) Github (or) Bitbucket (or more) Azure Cross-Platform Command Tools Setup if you want to play too.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
Lecture 8 – Platform as a Service. Introduction We have discussed the SPI model of Cloud Computing – IaaS – PaaS – SaaS.
Introduction To Windows Azure Cloud
Training Workshop Windows Azure Platform. Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do.
Microsoft Azure Virtual Machines. Networking Compute Storage Virtual Machine Operating System Applications Data & Access Runtime Provision & Manage.
Austin code camp 2010 asp.net apps with azure table storage PRESENTED BY CHANDER SHEKHAR DHALL
1 NETE4631 Using Google Web Services and Using Microsoft Cloud Services Lecture Notes #7.
Windows Azure: Microsoft’s Cloud Platform By Shahed Chowdhuri.
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
Microsoft Azure SoftUni Team Technical Trainers Software University
Software and Web Entrepreneurs: Go Big with BizSpark and WebsiteSpark Mix10-CL54 Julien Codorniou Sr. Program Manager Platform Evangelism
WINDOWS AZURE Scott Guthrie Corporate Vice President Windows Azure
Website s Azure Websites is an enterprise class cloud solution for developing, testing and running web apps. Azure Websites allows you to focus on what.
IOS and Android with Windows Azure Websites Name Title Address Website.
How* to Win the #BestMicrosoftHack Shahed Chowdhuri Sr. Technical WakeUpAndCode.com *Hint: Use the Cloud.
Windows Azure Virtual Machines Anton Boyko. A Continuous Offering From Private to Public Cloud.
CS779 Term Project Steve Shoyer Section 5 December 9, 2006 Week 6.
Windows Azure Conference 2014 LAMP on Windows Azure.
Windows Azure. Azure Application platform for the public cloud. Windows Azure is an operating system You can: – build a web application that runs.
Intro to Datazen.
devices billion Core-Business Applications Mobil e Cloud Agile Extend to any device Take advantage of cloud scale and economics.
Multi-Tier Apps with Admin Access, RDP, Custom Installs Modern Scalable Web Sites Full Windows Server/Linux VMs Web Sites Virtual Machines Cloud Services.
Windows Azure Web Sites: Under The Hood. What we will cover… General Overview (a marketing necessity) Demo Architecture Configurations Demo Scale Demo.
4/26/2017 Use Cloud-Based Load Testing Service to Find Scale and Performance Bottlenecks Randy Pagels Sr. Developer Technology Specialist © 2012 Microsoft.
Microsoft Cloud Solution.  What is the cloud?  Windows Azure  What services does it offer?  How does it all work?  How to go about using it  Further.
Enabling the Cloud OS Today  New high-density Web Sites with elastic cloud scaling and complete dev-ops experiences  New rich IaaS experience for self-service.
Technology Drill Down: Windows Azure Platform Eric Nelson | ISV Application Architect | Microsoft UK |
(re)-Architecting cloud applications on the windows Azure platform CLAEYS Kurt Technology Solution Professional Microsoft EMEA.
Bellevue College Cloud Seminars Learn: Cloud services Friday, March 4, 2016 Azure Virtual Machines Fawad Khan.
Windows Azure and iOS Chris Risner Windows Azure Technical Evangelist Microsoft
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Microservice Best Practices Lessons Learned from Azure Service Fabric Mark Russinovich CTO, Microsoft
Univa Grid Engine Makes Work Management Automatic and Efficient, Accelerates Deployment of Cloud Services with Power of Microsoft Azure MICROSOFT AZURE.
Deploying Web Application
Business Management and Booking Platform on Azure Brings Service Companies to the Cloud “As we grow, we need to be able to depend on our infrastructure,
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
Cloud Data platform (Cloud Application Development & Deployment)
Platform as a Service.
7/18/2018 8:55 PM Migracija IoT rešenja na Azure PaaS model ili: Kako sam prestao da brinem o IT infrastrukturi i zavoleo Azure Nebojša Stojanović © Microsoft.
Windows Azure Migrating SQL Server Workloads
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
Exceedra + Azure Mark Rendle Principal Software Architect
Database Testing in Azure Cloud
02 | Hosting Services in Windows Azure
A Combination of Public and Private Cloud –
DeFacto Planning on the Powerful Microsoft Azure Platform Puts the Power of Intelligent and Timely Planning at Any Business Manager’s Fingertips Partner.
Microsoft Azure Carries the Load, Enabling IT Companies to Offer New Services to Customers “When we realized the volume of network traffic and the amount.
NAV In The Cloud: Exploring Options for a Cloud-based Deployment
IST346: Scalability.
Developing for Windows Azure
Client/Server Computing and Web Technologies
Windows Azure SDK 1.7 and New Features
Presentation transcript:

#devshark welcome to #devshark

#devshark HELLO! I’M Ville Rauma Fingersoft Product Owner Web

#devshark Introduction Today’s talk Fingersoft +50 million customers; The Fingersoft AdSystem Azure Migration Project What is AdSystem? Implementation Problems & Solutions

#devshark Fingersoft Game development / publishing Based in Kempele, near Oulu Finland 14 Employees. Currently looking for C++ / Objective-C programmers 2 in-house games: Hill Climb Racing & I Hate Fish (soft launch early December Check it out!) 6 partner games published: Benji Bananas, Benji Bananas Adventures, Fail Hard, Pick a Pet and Javelin Masters , net revenue 15.5meur

#devshark What is the Fingersoft AdSystem? Serve settings to games Serve ad network priorities Collect real time statistics Game startups, device types, locales, platforms etc. Adjust settings/priorities in real time

#devshark Hill Climb Racing Each game startup does 1-3 requests to our AdSystem

#devshark AdSystem History Version 1 PHP web server originally in a home computer and dsl Very high latency to long distance locations Moved to Amazon micro instance, then moved to m1.medium instance while traffic increased. No data collection or any dynamic functionality. Version 2 Clustered Node.js and Nginx based REST API with MySql database to hold some statistics and settings Could server from 6k to 8k requests/s at best. Still the same latency issues due to single location Could only scale vertically

#devshark Finding Solutions Selection process Researched competing Cloud services such as Amazon and Azure Talked to contacts with knowledge in the area Introduction to Azure via Bizspark membership Proof of concept & Decision AdSystem V3 Horizontal and Vertical Scalability Fast and Scalable database Cache access from all servers Api/Libraries for deployment and management

#devshark Implementation in Azure Game ClientsTraffic Manager Cloud Service Eu West Load Balancer AdServer EuWest 1 AdServer EuWest 2... Cloud Service Eu North Load Balancer AdServer EuNorth 1 AdServer EuNorth 2... Selects cloud service based on latency Redis Cache Statistics Server Admin interface Table Storage Azure Services Scales Horizontally Local cache redis cache Write periodically to DB Linux VMs with Node.JS Admin GUI is node express app Blob Storage Promotion Image data Statistics, settings etc. Blob location per Cloud service loc. Serve images from closest blob

#devshark Results Low latency to most locations in the world due to ability to setup servers in any Azure server location High availability via Availability sets / load balancing Horizontal/Vertical scaling capability Cuts costs since we need only keep up the type and amount of VM instances that we need at any given time. Can serve all clients. Ease of deployment Microsoft provides npm libraries to control azure services. This means that we write deployment scripts in the same language(js) that we use to script server logic. Basically we have 1 click solution to deploy VMs and software into Azure cloud.

#devshark A Few Problems / Solutions Problem 1.Windows server based Node.js was first attempted due to easy deployment scenarios. It was not feasible because of high cpu usage per served client in comparison to Linux. 2.Initial implementation used direct azure table storage reads/writes for each server VM. This didn’t work due to high number of failed operations which then required complicated reattempt and backoff strategies. These also increased memory and processor usage. 3.How to realistically test massive connection amounts to reflect production servers? Solution 1. Moved to use Linux based VMs instead. This allowed us to easily customize linux configuration to be able to handle massive concurrent connection counts. 2. Data is now first passed to Redis cache. Then a separate Statistics server is used to read cache periodically and write data to DB. This removed all data issues from AdServers serving the clients. All AdServer resources now go towards serving clients. 3. We used Visual Studio 2013 Ultimate edition which can do cloud based load tests via visualstudio.com to simulate a real world scenario. Highly useful!

#devshark Contact us! If you’re looking for a job: If you’re looking to get your mobile game published:

#devshark PEW PEW! (oh and thank you)