Using PHP to Build a Mobile Internet Platform

Size: px
Start display at page:

Download "Using PHP to Build a Mobile Internet Platform"

Transcription

1 Using PHP to Build a Mobile Internet Platform Florian Hoenig <florian@kargo.com> Copyright 2008, Kargo Global, Inc. All rights reserved 1

2 Overview 1. About Kargo 2. PHP beyond Hypertext Preprocessing 3. Kargo s Mobile Web Architecture 4. Conclusions 5. Ideas & Discussion 2

3 Who is Kargo? Kargo is a mobile media company that conceives, builds and manages leading mobile products for media properties. 1. Mobile Web 2. Web Applications with Mobile Integration 3. Messaging Applications 4. Native Applications (J2ME, iphone, Blackberry, etc.) 3

4 Mobile Web 4

5 Web/Messaging 5

6 Panoramic Applications Web Apps Mobile Content & Apps Widget Messaging Text BOB12 to to get content 6

7 Technical Challenges Many thousands of variations of devices from over 40 vendors to target Devices vary strongly in terms of capabilities (and bugs!) Network speeds very strongly Crippled technology standards (business-driven removal of features). Misleading specifications. Significant amount of engineering and operational time spent on compensating for the above. 7

8 How to address? Need for a flexible architecture Loosely coupled (web-) technology helps Single choice of technology PHP! 8

9 PHP beyond Hypertext Preprocessing building enterprise architectures with PHP5 and Zend Framework 9

10 Enterprise Architecture From Microsoft.com:...a methodology to encompass all of the various IT aspects and processes into a single practice. From MIT:... IT infrastructure reflecting the integration and standardization requirements of the firm s operating model. In simple words: A single practice to reflect what the company does 10

11 Qualitative Requirements flexibility - platform s potential to address new business requirements rapid development - reuse, simplicity, short learning curves performance - write efficient apps should be straight forward reliability - robust platforms, solid testing, security interoperability - offer simple ways to talk to interface with third-party systems simple deployment - application installation and update scalability - architectures must scale on demand high availability - be able to guarantee uptime manageable costs - ability to budget 11

12 Qualitative Requirements flexibility - platform s potential to address new business requirements rapid development - reuse, simplicity, short learning curves performance - write efficient apps should be straight forward reliability - robust platforms, solid testing, security interoperability - offer simple ways to talk to interface with third-party systems simple deployment - application installation and update scalability - architectures must scale on demand high availability - be able to guarantee uptime manageable costs - ability to budget How to address with PHP? 11

13 Motivation and Claim Scripting languages (e.g. Python, Ruby) continue to grow in popularity for many applications where PHP is usually not considered. PHP is ready to do the same 12

14 Legacy and Evolution <?php <?php if (!isset($_post[ item ])) include form.inc ; else {?> <html><body> <?php $quantity = $_POST['quantity']; $item = $_POST['item']; /** Kargo Smpp Client Copyright (c) 2008 Kargo Global, Inc. */ abstract class Kargo_Smpp_Client_Abstract extends Kargo_Event_Buffered_Client implements Kargo_Event_Buffered_Handler { /** * The smpp connection state * unknown_type */ protected $_state = KARGO_SMPP_STATE_CLOSED; echo "You ordered ". $quantity. " ". $item. ".<br / >"; echo "Thank you for ordering from <b>myshop</b>!";?> </body></html> <?php }?>... } /** * SMPP protocol flavor to use * string */ protected $_smsc_vendor = Kargo_Smpp::KARGO_SMPP_VENDOR_NONE; Two random code snippets. PHP looks quite different nowadays. But, is it ready for Enterprise environments? <?php $esmc = new Kargo_Smpp_Client_MBlox($options); $esmc->connect(): Kargo_Event::enable($esmc); Kargo_Event::dispatchLoop(); 13

15 Zend Framework Already offers several enterprise grade features, principles and practices for web development Has roadmap for much more. Highly active community that you can plan with. Could be foundation to take PHP on the market for general purpose application development à la Java,.Net, C++. Read more at: 14

16 How to address with PHP? Zend Framework Already offers several enterprise grade features, principles and practices for web development Has roadmap for much more. Highly active community that you can plan with. Could be foundation to take PHP on the market for general purpose application development à la Java,.Net, C++. Read more at: 14

17 Considerations for building your architecture using ZF/PHP 1. Identify architectural layers of your environment Use PHP traditionally on the front end Consider using PHP-CLI for back-end services 2. Maintain your own class framework Adapt from ZF: best practices, coding standards, testing standards, etc. Really solid - no need to re-invent Be ready to patch ZF components, without waiting for next release 3. Manage your PHP configuration choose your extensions carefully optionally write your own extensions when needed 15

18 More Considerations for building your architecture using ZF/PHP 4. Avoid using PEAR lack of consistency not as enterprise-friendly as ZF (license) 5. Avoid tying yourself to a particular system environment don t let the environment dictate your application design 6. Avoid using tightly-coupled PHP frameworks ( CMSs ) Often very restrictive and hard to extend or integrate with other systems 16

19 What s missing? Multi-threading A more concrete life-cycle model for long running processes However: not a huge sacrifice 17

20 Kargo s Mobile Application Platform 18

21 Kargo s Architecture: Logical Overview Application Layer Mobile Web Applications Web Applications Public Web Services Foundation Classes Messaging Service Billing Subsystem Device Management Reporting Engine Digital Asset Manager Service Layer Persistence Layer Database Nodes Shared FS 19

22 Kargo s Architecture: Product Overview Kargo Framework Zend Framework plus mobile specific Kargo class library. Basis for all other products Karpet Fever Kamp Kellner Kargo DAM Kargo Platform Feed-based mobile magazine application with community features. Abstracts mobile specifics. Mobile downloadable content and application storefront application, with cross-carrier billing Web-based mobile messaging application. Allows for editorial content and costumer interaction. Mobile Messaging Application Server. Unified programming model, across all messaging protocols. Digital Asset Management System. Offers a document-oriented database concept for content. The core business logic application server. Handles subscriber management, device detection, reporting, ad serving, etc. All front-end applications use this as their back-end. 20

23 The Kargo Framework Zend Framework offers a lot already, but here is what we had to do ourselves: Kargo_Daemon - toolkit for forking, shared objects, IPC, etc. Kargo_Dam - wrapper classes for our digital asset management system Kargo_Db - additions to Zend_Db_Adapter, supporting fail-over and load-balancing. Kargo_Event - wrappers for our libevent extension for asynchronous socket programming. Kargo_Mime - a full and flexible MIME implementation to use beyond Mail. Kargo_Mm7 - a full MM protocol implementation. Kargo_Platform - controller plug-ins for interaction with platform services Kargo_Service - a set of Zend_Service style third-party web-service wrappers for our partners. Kargo_Smpp - implementation for OpenMarket, SinglePoint, mblox and Standard SMPP v3.4. Kargo_WebDav - a webdav implementation 21

24 Example: Approach for the Mobile Web Architecture Problem: Classical web server models are sub-optimal for a lot of new applications. Usually solved with lots of workarounds, mostly incorporating caching techniques on many levels. Solution: Cleanly decouple front-end logic from core services and let the back-end be a stateful application. This is common is Java-based architectures, but never seen in pure PHP. 22

25 Example: Mobile Web Architecture Apache/PHP5 node 1 Apache/PHP5 node 2 Karpet Instance Karpet Instance... Zend_XmlRpc Backend Node 1 Backend Node 2 Backend Node 3 Platform Server PHP-CLI Platform Server PHP-CLI Platform Server PHP-CLI... ext/libevent ext/libevent ext/libevent Platform server is a stateful application using asynchronous http handling 23

26 What s going on (simplified) Karpet Instance Platform Server PHP-CLI Message Server PHP-CLI 1: first request 2: start session (headers) return: device, user, carrier, etc. 3: write session 4: another request... 5: sign up [sends text message to user] 6: sendsms()... 24

27 How it works 1. Setup Db, logger, etc. only on startup 2. Start Http server with it s socket being monitored by the underlying event notification system 3. On an incoming http request, the handlerequest callback is triggered, serving the xml rpc request Platform Server (simplified) PHP-CLI class PlatformServer implements Kargo_Event_Http_Handler { private $_rpc_server;... public function construct() { // 1) setup db connection // 2) setup instance of Zend_XmlRpc_Server and add the service classes } public function handlerequest(kargo_event_http_request $r) { $request = new Kargo_XmlRpc_Request_Event($r); $this->_rpc_server->setrequest($request); return $this->server->handle(); } } Kargo_Event::init(); Now we can keep our back-end services running stateful $server = new Kargo_Event_Http_Server($options, new PlatformServer); $server->enable(); Kargo_Event::dispatch(); Kargo s libevent PHP extension OS Kernel notification layer (KQueue, epoll, etc) 25

28 Performance Baseline: Apache/mod_php5, pre-fork, no opcode cache Setup: PHP on Macbook Pro/OS X (KQueue) with libevent and Zend Framework 1.5 Concurrency level: 50 requests Apache: Mean requests per second: 8.76 Kargo (one process): Mean requests per second:

29 Pros Incredible speedup Low CPU and memory utilization Surprisingly stable (runs for months now under heavy loads) No need for memcached, opcode cache, db connections pooling, or similar techniques. Back-end applications are now stateful. Allows for lazy loading, better task scheduling, etc. Lot s of database queries can be kept in memory. 27

30 Cons Developers have to be more aware of memory management Some people call it abuse of PHP, since it ignores the request based PHP execution cycle. Garbage collection a request tear-down is not called. Doesn t work well with Zend_Controller_Front, because of extensive cyclic referencing (memory leaks) 28

31 However Current server does not leak memory. Near Future: PHP 5.3 adds control over the garbage collector, which adds additional support for this scenario. 29

32 Conclusions Use of Zend Framework and it s principles opens paths into solid software architectures. Using PHP as a general purpose programming language has shown to be surprisingly fast and robust in a production environment. Kargo has successfully replaced Java-typical application servers with PHP, leaving a pure single choice of technology across all tiers. Kargo has build an enterprise-grade architecture, simple and flexible enough to react to the complex requirement in the mobile domain. 30

33 /dev/random How about building an app server which passes Zend_Controller_Request objects to a pool of worked? How about a restricted ZF app server similar to Google App Engine, running on Amazon EC2? 31

34 Thank You! text FH to

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers A Comparative Study on Vega-HTTP & Popular Open-source Web-servers Happiest People. Happiest Customers Contents Abstract... 3 Introduction... 3 Performance Comparison... 4 Architecture... 5 Diagram...

More information

Investor Newsletter. Storage Made Easy Cloud Appliance High Availability Options WHAT IS THE CLOUD APPLIANCE?

Investor Newsletter. Storage Made Easy Cloud Appliance High Availability Options WHAT IS THE CLOUD APPLIANCE? Investor Newsletter Storage Made Easy Cloud Appliance High Availability Options WHAT IS THE CLOUD APPLIANCE? The SME Cloud Appliance is a software platform that enables companies to enhance their existing

More information

Understanding Evolution's Architecture A Technical Overview

Understanding Evolution's Architecture A Technical Overview Understanding Evolution's Architecture A Technical Overview Contents Introduction Understanding Evolution's Design Evolution Architecture Evolution Server Transports Evolution Benefits How Does Evolution

More information

TECHNOLOGY WHITE PAPER Jun 2012

TECHNOLOGY WHITE PAPER Jun 2012 TECHNOLOGY WHITE PAPER Jun 2012 Technology Stack C# Windows Server 2008 PHP Amazon Web Services (AWS) Route 53 Elastic Load Balancing (ELB) Elastic Compute Cloud (EC2) Amazon RDS Amazon S3 Elasticache

More information

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof. Web Frameworks web development done right Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.ssa Anna Corazza Outline 2 Web technologies evolution Web frameworks Design Principles

More information

BASICS OF SCALING: LOAD BALANCERS

BASICS OF SCALING: LOAD BALANCERS BASICS OF SCALING: LOAD BALANCERS Lately, I ve been doing a lot of work on systems that require a high degree of scalability to handle large traffic spikes. This has led to a lot of questions from friends

More information

Developers Integration Lab (DIL) System Architecture, Version 1.0

Developers Integration Lab (DIL) System Architecture, Version 1.0 Developers Integration Lab (DIL) System Architecture, Version 1.0 11/13/2012 Document Change History Version Date Items Changed Since Previous Version Changed By 0.1 10/01/2011 Outline Laura Edens 0.2

More information

Testing & Assuring Mobile End User Experience Before Production. Neotys

Testing & Assuring Mobile End User Experience Before Production. Neotys Testing & Assuring Mobile End User Experience Before Production Neotys Agenda Introduction The challenges Best practices NeoLoad mobile capabilities Mobile devices are used more and more At Home In 2014,

More information

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015 CS 188/219 Scalable Internet Services Andrew Mutz October 8, 2015 For Today About PTEs Empty spots were given out If more spots open up, I will issue more PTEs You must have a group by today. More detail

More information

Large-Scale Web Applications

Large-Scale Web Applications Large-Scale Web Applications Mendel Rosenblum Web Application Architecture Web Browser Web Server / Application server Storage System HTTP Internet CS142 Lecture Notes - Intro LAN 2 Large-Scale: Scale-Out

More information

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901.

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901 SOA, case Google Written by: Sampo Syrjäläinen, 0337918 Jukka Hilvonen, 0337840 1 Contents 1.

More information

Open Source Development with the Elastic Path Ecommerce Platform

Open Source Development with the Elastic Path Ecommerce Platform Open Source Development with the Elastic Path Ecommerce Platform This white paper will help you explore the benefits of the Java-based Elastic Path ecommerce platform, learn more about the components of

More information

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS Venkat Perumal IT Convergence Introduction Any application server based on a certain CPU, memory and other configurations

More information

Smartphone Enterprise Application Integration

Smartphone Enterprise Application Integration WHITE PAPER MARCH 2011 Smartphone Enterprise Application Integration Rhomobile - Mobilize Your Enterprise Overview For more information on optimal smartphone development please see the Rhomobile White

More information

SwiftScale: Technical Approach Document

SwiftScale: Technical Approach Document SwiftScale: Technical Approach Document Overview This document outlines a technology embodiment of the SwiftScale application including the technology, deployment and application architectures. Technology

More information

Accelerating Wordpress for Pagerank and Profit

Accelerating Wordpress for Pagerank and Profit Slide No. 1 Accelerating Wordpress for Pagerank and Profit Practical tips and tricks to increase the speed of your site, improve conversions and climb the search rankings By: Allan Jude November 2011 Vice

More information

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence Exploring Oracle E-Business Suite Load Balancing Options Venkat Perumal IT Convergence Objectives Overview of 11i load balancing techniques Load balancing architecture Scenarios to implement Load Balancing

More information

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End TFE listener architecture Matt Klein, Staff Software Engineer Twitter Front End Agenda TFE architecture overview TSA architecture overview TSA hot restart Future plans Q&A TFE architecture overview Listener:

More information

Architecting for the cloud designing for scalability in cloud-based applications

Architecting for the cloud designing for scalability in cloud-based applications An AppDynamics Business White Paper Architecting for the cloud designing for scalability in cloud-based applications The biggest difference between cloud-based applications and the applications running

More information

GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project

GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project Description of Application The Spatial Data Warehouse project at the USGS/EROS distributes services and data in support of The National

More information

WELCOME TO Open Source Enterprise Architecture

WELCOME TO Open Source Enterprise Architecture WELCOME TO Open Source Enterprise Architecture WELCOME TO An overview of Open Source Enterprise Architecture In the integration domain Who we are Fredrik Hilmersson Petter Nordlander Why Open Source Integration

More information

SaaS-Based Employee Benefits Enrollment System

SaaS-Based Employee Benefits Enrollment System Situation A US based industry leader in Employee benefits catering to large and diverse client base, wanted to build a high performance enterprise application that supports sizeable concurrent user load

More information

10 Best Practices for Application Performance Testing

10 Best Practices for Application Performance Testing Business white paper 10 Best Practices for Application Performance Testing Leveraging Agile Performance Testing for Web and Mobile Applications 10 Best Practices for Application Performance Testing Table

More information

The Benefits of Verio Virtual Private Servers (VPS) Verio Virtual Private Server (VPS) CONTENTS

The Benefits of Verio Virtual Private Servers (VPS) Verio Virtual Private Server (VPS) CONTENTS Performance, Verio FreeBSD Virtual Control, Private Server and (VPS) Security: v3 CONTENTS Why outsource hosting?... 1 Some alternative approaches... 2 Linux VPS and FreeBSD VPS overview... 3 Verio VPS

More information

Application Performance Testing Basics

Application Performance Testing Basics Application Performance Testing Basics ABSTRACT Todays the web is playing a critical role in all the business domains such as entertainment, finance, healthcare etc. It is much important to ensure hassle-free

More information

How To Write A Monitoring System For Free

How To Write A Monitoring System For Free Zabbix : Interview of Alexei Vladishev Monitoring-fr : Hello Alexei Vladishev, can you introduce yourself to the French community please? Alexei Vladishev : I am a 36 year old engineer with a background

More information

WEB SERVICES FOR MOBILE COMPUTING

WEB SERVICES FOR MOBILE COMPUTING WEB SERVICES FOR MOBILE COMPUTING Piyush M.Patil, Computer Department,University Of Mumbai, Mumbai,India,Mob-9699398650 Kushal Gohil, Computer Department,University Of Mumbai, Mumbai,India,Mob-9323916806

More information

Delivering IaaS for the Greek Academic and Research Community

Delivering IaaS for the Greek Academic and Research Community Greek Research and Technology Network Internal Presentation 59 Delivering IaaS for the Greek Academic and Research Community Vangelis Koukis vkoukis@grnet.gr ki Technical Coordinator, okeanos Project Greek

More information

TECHNOLOGY WHITE PAPER Jan 2016

TECHNOLOGY WHITE PAPER Jan 2016 TECHNOLOGY WHITE PAPER Jan 2016 Technology Stack C# PHP Amazon Web Services (AWS) Route 53 Elastic Load Balancing (ELB) Elastic Compute Cloud (EC2) Amazon RDS Amazon S3 Elasticache CloudWatch Paypal Overview

More information

Zend Platform TM. White Paper: Zend Download Server. By Zend Technologies, Inc. May 2007. 2007 Zend Technologies, Inc. All rights reserved.

Zend Platform TM. White Paper: Zend Download Server. By Zend Technologies, Inc. May 2007. 2007 Zend Technologies, Inc. All rights reserved. White Paper: Zend Download Server By Zend Technologies, Inc. May 2007 2007 Zend Technologies, Inc. All rights reserved. Introduction You are running a successful web site. You have probably found yourself

More information

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION October 2013 Daitan White Paper Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION Highly Reliable Software Development Services http://www.daitangroup.com Cloud

More information

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series www.cumulux.com

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series www.cumulux.com ` CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS Review Business and Technology Series www.cumulux.com Table of Contents Cloud Computing Model...2 Impact on IT Management and

More information

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER TABLE OF CONTENTS Market Demand for Enterprise Mobile Mobile App Development Approaches Native Apps Mobile Web Apps Hybrid Apps Mendix Vision for Mobile App

More information

Apache Jakarta Tomcat

Apache Jakarta Tomcat Apache Jakarta Tomcat 20041058 Suh, Junho Road Map 1 Tomcat Overview What we need to make more dynamic web documents? Server that supports JSP, ASP, database etc We concentrates on Something that support

More information

Introduction to IBM Worklight Mobile Platform

Introduction to IBM Worklight Mobile Platform Introduction to IBM Worklight Mobile Platform The Worklight Mobile Platform The Worklight Mobile Platform is an open, complete and advanced mobile application platform for HTML5, hybrid and native apps.

More information

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011 HOSTING PYTHON WEB APPLICATIONS Graham Dumpleton PyCon Australia Sydney 2011 WEB APPLICATIONS Only a few well known Python web applications. WEB FRAMEWORKS Many Python web frameworks for building your

More information

TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY

TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY 2 Intro to Load Testing Copyright 2009 TEST4LOAD Software Load Test Experts What is Load Testing? Load testing generally refers to the

More information

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Scalability of web applications. CSCI 470: Web Science Keith Vertanen Scalability of web applications CSCI 470: Web Science Keith Vertanen Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing Approaches

More information

Zend and IBM: Bringing the power of PHP applications to the enterprise

Zend and IBM: Bringing the power of PHP applications to the enterprise Zend and IBM: Bringing the power of PHP applications to the enterprise A high-performance PHP platform that helps enterprises improve and accelerate web and mobile application development Highlights: Leverages

More information

Using Cloud Services for Building Next Generation Mobile Apps

Using Cloud Services for Building Next Generation Mobile Apps Using Cloud Services for Building Next Generation Mobile Apps appcelerator.com Executive Summary Enterprises are in the midst of a major transformation as it relates to their interaction with customers,

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence 2. Web Servers Introduction Web content lives on Web servers Web servers speak the platform independent HyperText Transfer Protocol (HTTP) (so

More information

How To Create A Cloud Based System For Aaas (Networking)

How To Create A Cloud Based System For Aaas (Networking) 1 3.1 IaaS Definition IaaS: Infrastructure as a Service Through the internet, provide IT server, storage, computing power and other infrastructure capacity to the end users and the service fee based on

More information

Develop PHP mobile apps with Zend Framework

Develop PHP mobile apps with Zend Framework Develop PHP mobile apps with Zend Framework Enrico Zimuel Senior PHP Engineer, Zend Technologies Zend Framework Core Team http://framework.zend.com http://www.zend.com About me Enrico Zimuel (@ezimuel)

More information

USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE

USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE Gonzalo Garcia VP of Operations, USA Property of GMV All rights reserved INTRODUCTION Property of GMV All rights reserved INTRODUCTION

More information

About This Document 3. Integration and Automation Capabilities 4. Command-Line Interface (CLI) 8. API RPC Protocol 9.

About This Document 3. Integration and Automation Capabilities 4. Command-Line Interface (CLI) 8. API RPC Protocol 9. Parallels Panel Contents About This Document 3 Integration and Automation Capabilities 4 Command-Line Interface (CLI) 8 API RPC Protocol 9 Event Handlers 11 Panel Notifications 13 APS Packages 14 C H A

More information

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Internet Engineering: Web Application Architecture Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Centralized Architecture mainframe terminals terminals 2 Two Tier Application

More information

Drupal Performance Tuning

Drupal Performance Tuning Drupal Performance Tuning By Jeremy Zerr Website: http://www.jeremyzerr.com @jrzerr http://www.linkedin.com/in/jrzerr Overview Basics of Web App Systems Architecture General Web

More information

Building Multi-Site & Ultra-Large Scale Cloud with Openstack Cascading

Building Multi-Site & Ultra-Large Scale Cloud with Openstack Cascading Building Multi-Site & Ultra-Large Scale Cloud with Openstack Cascading Requirement and driving forces multi-site cloud Along with the increasing popularity and wide adoption of Openstack as the de facto

More information

White Paper: Deploying QlikView

White Paper: Deploying QlikView White Paper: Deploying QlikView White Paper: Deploying QlikView From Personal Edition to Enterprise Deployment V1.0 CFG QlikTech May 2010 www.qlikview.com White Paper: Deploying QlikView Contents: Introduction

More information

KEMP LoadMaster. Enabling Hybrid Cloud Solutions in Microsoft Azure

KEMP LoadMaster. Enabling Hybrid Cloud Solutions in Microsoft Azure KEMP LoadMaster Enabling Hybrid Cloud Solutions in Microsoft Azure Introduction An increasing number of organizations are moving from traditional on-premises datacenter architecture to a public cloud platform

More information

Layers of Caching: Key to scaling your website. Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com

Layers of Caching: Key to scaling your website. Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com Layers of Caching: Key to scaling your website Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com Importance of Caching RAM is fast! Utilize resources more efficiently Improve

More information

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG ZingMe Practice For Building Scalable PHP Website By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG Agenda About ZingMe Scaling PHP application Scalability definition Scaling up vs

More information

PHP on IBM i: What s New with Zend Server 5 for IBM i

PHP on IBM i: What s New with Zend Server 5 for IBM i PHP on IBM i: What s New with Zend Server 5 for IBM i Mike Pavlak Solutions Consultant mike.p@zend.com (815) 722 3454 Function Junction Audience Used PHP in Zend Core/Platform New to Zend PHP Looking to

More information

Real World Considerations for Implementing Desktop Virtualization

Real World Considerations for Implementing Desktop Virtualization Real World Considerations for Implementing Desktop Virtualization The Essentials Series sponsored by Intro duction to Desktop Virtualization for the IT Pro... 1 What Is Desktop Virtualization?... 2 VDI

More information

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment

CloudCenter Full Lifecycle Management. An application-defined approach to deploying and managing applications in any datacenter or cloud environment CloudCenter Full Lifecycle Management An application-defined approach to deploying and managing applications in any datacenter or cloud environment CloudCenter Full Lifecycle Management Page 2 Table of

More information

PHP and MongoDB Web Development Beginners Guide by Rubayeet Islam

PHP and MongoDB Web Development Beginners Guide by Rubayeet Islam PHP and MongoDB Web Development Beginners Guide by Rubayeet Islam Projects-Oriented Book Combine the power of PHP and MongoDB to build dynamic web 2.0 applications Learn to build PHP-powered dynamic web

More information

Using Ruby on Rails for Web Development. Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources

Using Ruby on Rails for Web Development. Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources Using Ruby on Rails for Web Development Introduction Guide to Ruby on Rails: An extensive roundup of 100 Ultimate Resources Ruby on Rails 100 Success Secrets Copyright 2008 Notice of rights All rights

More information

ios Hybrid Mobile Application Development

ios Hybrid Mobile Application Development ios Hybrid Mobile Application Development Siva RamaKrishna Ravuri Oct 06, 2012 2000 West Park Drive Westborough MA 01581 USA Phone:5083897300Fax:5083669901 The entire contents of this document are subject

More information

Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet. An Oracle White Paper August 1998

Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet. An Oracle White Paper August 1998 Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet An Oracle White Paper August 1998 The Integration Platform for Oracle Products and the Internet INTRODUCTION

More information

Click to edit Master title style. Click to edit Master text styles. Hedley Aylott. CEO Summit www.magento.com

Click to edit Master title style. Click to edit Master text styles. Hedley Aylott. CEO Summit www.magento.com Click to edit Master title style Click to edit Master text styles Hedley Aylott CEO Summit www.magento.com Click to edit Master title style Click to edit Master text styles Slow sales? Serves you right!

More information

Information Technology Services Classification Level Range C Reports to. Manager ITS Infrastructure Effective Date June 29 th, 2015 Position Summary

Information Technology Services Classification Level Range C Reports to. Manager ITS Infrastructure Effective Date June 29 th, 2015 Position Summary Athabasca University Professional Position Description Section I Position Update Only Information Position Title Senior System Administrator Position # 999716,999902 Department Information Technology Services

More information

Web Cloud Architecture

Web Cloud Architecture Web Cloud Architecture Introduction to Software Architecture Jay Urbain, Ph.D. urbain@msoe.edu Credits: Ganesh Prasad, Rajat Taneja, Vikrant Todankar, How to Build Application Front-ends in a Service-Oriented

More information

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam sastry.vedantam@oracle.com

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam sastry.vedantam@oracle.com Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam sastry.vedantam@oracle.com Agenda The rise of Big Data & Hadoop MySQL in the Big Data Lifecycle MySQL Solutions for Big Data Q&A

More information

A Tool for Evaluation and Optimization of Web Application Performance

A Tool for Evaluation and Optimization of Web Application Performance A Tool for Evaluation and Optimization of Web Application Performance Tomáš Černý 1 cernyto3@fel.cvut.cz Michael J. Donahoo 2 jeff_donahoo@baylor.edu Abstract: One of the main goals of web application

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Brief Course Overview An introduction to Web development Server-side Scripting Web Servers PHP Client-side Scripting HTML & CSS JavaScript &

More information

Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001

Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001 Oracle9i Application Server: Options for Running Active Server Pages An Oracle White Paper July 2001 Oracle9i Application Server: Options for Running Active Server Pages PROBLEM SUMMARY...3 INTRODUCTION...3

More information

Module 12: Microsoft Windows 2000 Clustering. Contents Overview 1 Clustering Business Scenarios 2 Testing Tools 4 Lab Scenario 6 Review 8

Module 12: Microsoft Windows 2000 Clustering. Contents Overview 1 Clustering Business Scenarios 2 Testing Tools 4 Lab Scenario 6 Review 8 Module 12: Microsoft Windows 2000 Clustering Contents Overview 1 Clustering Business Scenarios 2 Testing Tools 4 Lab Scenario 6 Review 8 Information in this document is subject to change without notice.

More information

Mobile App Infrastructure for Cross-Platform Deployment (N11-38)

Mobile App Infrastructure for Cross-Platform Deployment (N11-38) Mobile App Infrastructure for Cross-Platform Deployment (N11-38) Contents Introduction... 2 Background... 2 Goals and objectives... 3 Technical approaches and frameworks... 4 Key outcomes... 5 Project

More information

Building Scalable Applications Using Microsoft Technologies

Building Scalable Applications Using Microsoft Technologies Building Scalable Applications Using Microsoft Technologies Padma Krishnan Senior Manager Introduction CIOs lay great emphasis on application scalability and performance and rightly so. As business grows,

More information

Learning GlassFish for Tomcat Users

Learning GlassFish for Tomcat Users Learning GlassFish for Tomcat Users White Paper February 2009 Abstract There is a direct connection between the Web container technology used by developers and the performance and agility of applications.

More information

WEBLOGIC ADMINISTRATION

WEBLOGIC ADMINISTRATION WEBLOGIC ADMINISTRATION Session 1: Introduction Oracle Weblogic Server Components Java SDK and Java Enterprise Edition Application Servers & Web Servers Documentation Session 2: Installation System Configuration

More information

Cloud Based Application Architectures using Smart Computing

Cloud Based Application Architectures using Smart Computing Cloud Based Application Architectures using Smart Computing How to Use this Guide Joyent Smart Technology represents a sophisticated evolution in cloud computing infrastructure. Most cloud computing products

More information

HA for Enterprise Clouds: Oracle Solaris Cluster & OpenStack

HA for Enterprise Clouds: Oracle Solaris Cluster & OpenStack HA for Enterprise Clouds: Oracle Solaris Cluster & OpenStack Eve Kleinknecht / Thorsten Frueauf Oracle Keywords: OpenStack, High Availability, Solaris, Solaris Cluster, Oracle Introduction: More and more

More information

IERG 4080 Building Scalable Internet-based Services

IERG 4080 Building Scalable Internet-based Services Department of Information Engineering, CUHK Term 1, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 4 Load Balancing Lecturer: Albert C. M. Au Yeung 30 th September, 2015 Web Server

More information

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies Kurt Klemperer, Principal System Performance Engineer kklemperer@blackboard.com Agenda Session Length:

More information

Project Convergence: Integrating Data Grids and Compute Grids. Eugene Steinberg, CTO Grid Dynamics May, 2008

Project Convergence: Integrating Data Grids and Compute Grids. Eugene Steinberg, CTO Grid Dynamics May, 2008 Project Convergence: Integrating Data Grids and Compute Grids Eugene Steinberg, CTO May, 2008 Data-Driven Scalability Challenges in HPC Data is far away Latency of remote connection Latency of data movement

More information

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19 3-Tier Architecture Prepared By Channu Kambalyal Page 1 of 19 Table of Contents 1.0 Traditional Host Systems... 3 2.0 Distributed Systems... 4 3.0 Client/Server Model... 5 4.0 Distributed Client/Server

More information

ENTERPRISE MOBILE BACKEND AS A SERVICE EVALUATION CHECKLIST

ENTERPRISE MOBILE BACKEND AS A SERVICE EVALUATION CHECKLIST ENTERPRISE MOBILE BACKEND AS A SERVICE EVALUATION CHECKLIST Considerations for choosing a secure, scalable, and reliable enterprise mobile backend platform OVERVIEW Organizations often struggle with identifying

More information

Building and Deploying Enterprise M2M Applications with Axeda Platform

Building and Deploying Enterprise M2M Applications with Axeda Platform w h i t e p a p e r Building and Deploying Enterprise M2M Applications with Axeda Platform According to Harbor Research, there are billions of wired and wireless intelligent assets around the globe that

More information

Open-Xchange Whitepaper Open-Xchange Server 6 Architecture Overview

Open-Xchange Whitepaper Open-Xchange Server 6 Architecture Overview Open-Xchange Whitepaper Open-Xchange Server 6 Architecture Overview v1.3 Author: Editors: Stephan Martin Dave Goldberg Contents 1.Introduction...3 2.Design Goals...4 2.1. Scalability...4 2.2. Multi Tenant

More information

Application Note. Cacti monitoring. Document version: v1.0 Last update: 8th November 2013

Application Note. Cacti monitoring. Document version: v1.0 Last update: 8th November 2013 Application Note Document version: v1.0 Last update: 8th November 2013 Purpose Monitor your ALOHA Load-Balancer with Cacti Complexity Versions concerned Aloha 4.2 and above Changelog 2013-10-03: Initial

More information

Service Oriented Architectures

Service Oriented Architectures 8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ The context for SOA A bit of history

More information

APPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization

APPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization APPLICATION NOTE Elastic Scalability for HetNet Deployment, Management & Optimization Introduction Most industry reports indicate that the HetNet market is poised for explosive growth in the coming years.

More information

Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions

Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions 1 Agenda What is Application Whitelisting (AWL) Protection provided by Application

More information

An Oracle White Paper May 2011. Oracle Tuxedo: An Enterprise Platform for Dynamic Languages

An Oracle White Paper May 2011. Oracle Tuxedo: An Enterprise Platform for Dynamic Languages An Oracle White Paper May 2011 Oracle Tuxedo: An Enterprise Platform for Dynamic Languages Introduction Dynamic languages, also sometimes known as scripting languages, have been in existence for a long

More information

Common Server Setups For Your Web Application - Part II

Common Server Setups For Your Web Application - Part II Common Server Setups For Your Web Application - Part II Introduction When deciding which server architecture to use for your environment, there are many factors to consider, such as performance, scalability,

More information

OPENIAM ACCESS MANAGER. Web Access Management made Easy

OPENIAM ACCESS MANAGER. Web Access Management made Easy OPENIAM ACCESS MANAGER Web Access Management made Easy TABLE OF CONTENTS Introduction... 3 OpenIAM Access Manager Overview... 4 Access Gateway... 4 Authentication... 5 Authorization... 5 Role Based Access

More information

Outlook. Corporate Research and Technologies, Munich, Germany. 20 th May 2010

Outlook. Corporate Research and Technologies, Munich, Germany. 20 th May 2010 Computing Architecture Computing Introduction Computing Architecture Software Architecture for Outlook Corporate Research and Technologies, Munich, Germany Gerald Kaefer * 4 th Generation Datacenter IEEE

More information

Using Redis as a Cache Backend in Magento

Using Redis as a Cache Backend in Magento Using Redis as a Cache Backend in Magento Written by: Alexey Samorukov Aleksandr Lozhechnik Kirill Morozov Table of Contents PROBLEMS WITH THE TWOLEVELS CACHE BACKEND CONFIRMING THE ISSUE SOLVING THE ISSUE

More information

Chapter -5 SCALABILITY AND AVAILABILITY

Chapter -5 SCALABILITY AND AVAILABILITY Chapter -5 SCALABILITY AND AVAILABILITY 78 CHAPTER 5 Chapter - 5. Scalability and Availability S.No. Name of the Sub-Title Page No. 5.1 The importance of Scalability and Availability 79 5.2. Design Patterns

More information

Evidence based performance tuning of

Evidence based performance tuning of Evidence based performance tuning of enterprise Java applications By Jeroen Borgers jborgers@xebia.com Evidence based performance tuning of enterprise Java applications By Jeroen Borgers jborgers@xebia.com

More information

WINDOWS AZURE EXECUTION MODELS

WINDOWS AZURE EXECUTION MODELS WINDOWS AZURE EXECUTION MODELS Windows Azure provides three different execution models for running applications: Virtual Machines, Web Sites, and Cloud Services. Each one provides a different set of services,

More information

Cloud computing - Architecting in the cloud

Cloud computing - Architecting in the cloud Cloud computing - Architecting in the cloud anna.ruokonen@tut.fi 1 Outline Cloud computing What is? Levels of cloud computing: IaaS, PaaS, SaaS Moving to the cloud? Architecting in the cloud Best practices

More information

Wednesday, October 10, 12. Running a High Performance LAMP stack on a $20 Virtual Server

Wednesday, October 10, 12. Running a High Performance LAMP stack on a $20 Virtual Server Running a High Performance LAMP stack on a $20 Virtual Server Simplified Uptime Started a side-business selling customized hosting to small e-commerce and other web sites Spent a lot of time optimizing

More information

How To Run A Cloud Server On A Server Farm (Cloud)

How To Run A Cloud Server On A Server Farm (Cloud) StratusLab: Darn Simple Cloud Charles (Cal) Loomis (CNRS/LAL & SixSq Sàrl) FOSDEM 13: Cloud Devroom (3 February 2013) StratusLab What is it? Complete Infrastructure as a Service (IaaS) cloud distribution

More information

A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus

A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus Karim M. Mahmoud 1,2 1 IBM, Egypt Branch Pyramids Heights Office Park, Giza, Egypt kmahmoud@eg.ibm.com 2 Computer

More information

Leveraging the power of social media & mobile applications

Leveraging the power of social media & mobile applications Leveraging the power of social media & mobile applications Xoriant delivers an innovative solution blending mobile applications and web based social networking media for our client focusing on local marketing.

More information

Lecture 02a Cloud Computing I

Lecture 02a Cloud Computing I Mobile Cloud Computing Lecture 02a Cloud Computing I 吳 秀 陽 Shiow-yang Wu What is Cloud Computing? Computing with cloud? Mobile Cloud Computing Cloud Computing I 2 Note 1 What is Cloud Computing? Walking

More information

Distributed Database Access in the LHC Computing Grid with CORAL

Distributed Database Access in the LHC Computing Grid with CORAL Distributed Database Access in the LHC Computing Grid with CORAL Dirk Duellmann, CERN IT on behalf of the CORAL team (R. Chytracek, D. Duellmann, G. Govi, I. Papadopoulos, Z. Xie) http://pool.cern.ch &

More information

Oracle Database Security and Audit

Oracle Database Security and Audit Copyright 2014, Oracle Database Security and Audit Beyond Checklists Learning objectives Understand Oracle architecture Database Listener Oracle connection handshake Client/server architecture Authentication

More information