SlideShare a Scribd company logo
1 of 50
Scaling Out Yii2
App
@petrabarus
YiiConf Indonesia
26 Ags 2017
Hi Everyone!
I am Petra Novandi
Now serves as
Chief Technology Officer at
UrbanIndo.com
-
Contact me at
Email:
petra.barus@gmail.com
Twitter:
@petrabarus
UrbanIndo & Yii
- Use Yii 1.1 at 2011
- Migrate to Yii 2.0 at 2015
- Contribute to Yii core
- #7435 #8933 #9249 #9277
- Contribute to Yii2 plugins
- yii2-queue, yii2-s3-cache, yii2-dynamodb
WHAT’S
THIS ABOUT?
Let me tell you a common story...
Dewi is a software engineer.
She had a great idea for app!
So Dewi build a new app from scratch.
MySQL
Yii App
PHP
Apache
Pictures
Assets
Libraries
Logs
Scripts
Files
Like a lot other
engineers, Dewi
put all the stuffs
in one server.
AND THE
TRAFFIC
GOES UP
UP UP!
AWESOME!!
BUT ALL HELL BREAK LOOSE!
SOUNDS FAMILIAR?
This is story
about Scaling
Scale Up
(Vertical)
Scale Out
(Horizontal)
Continuous
Availability/Redundancy
No single point of failure
Cost/Performance
Flexibility
Not being locked by the
hardware
WHY SCALE OUT?
Continuous Upgrade
Without downtime
Geographical
Distribution
Access to nearest node
Multi-servers environment concerns in Yii2
Database
Assets
Load Balancing
File System
Session
Deployment
And many more… Logging, Cache, Queue,
Batch Processings.
Let’s discuss that on another occasion..
I don’t have enough time.. :(
LOAD
BALANCING
DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Load
Balancer
Load balancer will forward
requests to instances
Sticky Sessions
Requests from same client
will be forwarded to same
instance
Load Balancer Session Types
Non-Sticky Sessions
Requests from same client
can be forwarded to
different instances.
Open Source Load Balancer
Technologies
Example Config in
NGINX
» No need a lot of configuration in the Yii side
» Although you might want to have concerns in
⋄ hostInfo in the yiiwebUrlManager
⋄ ipHeaders in yiiwebRequest (upcoming Yii
2.0.13), different proxies can have different headers
LOAD
BALANCING DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Yii2
Apache
Database
All instances access the
same database instance(s).
Make them more stateless
Simple Change in Configuration
DATABASE CAN BE
SCALED TOO!
Master-Master
Master-Slave
or both
Yii2 Natively Support Db
Replication
Or use other tech like
ProxySQL
LOAD
BALANCING
DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
❏ Since PHP stores session in file system
we need to store it outside the instance
❏ Similar like database
❏ Use classes like yiimongodbSession,
yiiredisSession,
yiiwebDbSession,
yiiwebCacheSession,
Sample Config
Some Considerations
» Better use key-value storage type that stores in
memory instead of files
⋄ E.g. Redis, memcached
⋄ Or SQL that support memory storage
⋄ MySQL’s MEMORY storage engine
» Execute Session::gcSession() using cron.
LOAD
BALANCING
DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
Avoid writing and
storing data to local file
systems
Every app instance has
to identical
file_put_contents(‘/tmp/text1.txt’,
‘blablabla’)
Instance A
Instance B
file_get_contents(‘/tmp/text1.txt’)
Write file to centralized storage
» FTP
» Amazon S3
» Azure
» DropBox
Use filesystem abstraction!
» GridFs
» Rackspace
» Copy.com
Recommended library:
league/flysystem
⇨ creocoder/yii2-flysystem
Sample Config
Yii::$app->fs->write(‘text1.txt’,
blablabla’)
Instance A
Instance B
Yii::$app->fs->read(‘text1.txt’)
Central Storage
LOAD
BALANCING
DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
Asset Management in Single Server
» Hash is not deterministic due to filemtime()
(yiiwebAssetManager::hash)
» Different server can have different filemtime()
Multiple Server
/var/www/web/assets/1234567890/script.js
/var/www/web/assets/ABCDEFGHIJ/script.js
Configuring
Asset Hash
Generation
Multiple Server With Consistent Hash
/var/www/web/assets/1234567890/script.js
/var/www/web/assets/1234567890/script.js
A Much Better Way
1. Build and compress the assets in build
server
2. Upload assets to central storage (e.g. S3)
3. Put a CDN in front of the storage
BUILD COMPR
ESS
UPLOA
D
DEPLO
Y
SOURCE REPO
BUILD SERVER
CENTRAL
STORAGE (S3)
APP SERVERS
HTML
Requests
JS/CSS Requests
CDN
Pros
1. No need additional
local process to
generate assets
(Reduced request
time)
2. Optimized assets
3. Served through CDN
Cons
1. Need build server
2. Need central storage
3. Need CDN
4. Build can be slow
LOAD
BALANCING
DATABASE SESSION
FILE SYSTEM ASSETS DEPLOYMENT
Deployment Can Be As Simple As
BUT a lot of things can go wrong with this
Deploy Command
Things can go wrong,
e.g. failure on deploy or
bug after deploying,
need rollback
Deployment & Automation
Technologies
Some Considerations
» Composer installation after code pull
» Asset installation, build, compress after code pull
» Load balancer request draining before code
symlink
» Local cache clean up
» JIT warming up (if using HHVM)
» Health check for load balancer
» Blue-green deployment
NOW FOR
CONCLUSION!
❏ Scaling Out has more better
merits in common use cases
❏ App has to be Stateless for
scaling out
❏ Data storages has to be
Centralized
THANKS!
You can find me at
» @petrabarus
» petra.barus@gmail.com

More Related Content

What's hot

Active-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptxActive-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptxJavedAjmal1
 
Deploying your first application with Kubernetes
Deploying your first application with KubernetesDeploying your first application with Kubernetes
Deploying your first application with KubernetesOVHcloud
 
AWS Summit DC 2021: Improve the developer experience with AWS CDK
AWS Summit DC 2021: Improve the developer experience with AWS CDKAWS Summit DC 2021: Improve the developer experience with AWS CDK
AWS Summit DC 2021: Improve the developer experience with AWS CDKCasey Lee
 
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021Amazon Web Services Korea
 
Kubernetes Architecture - beyond a black box - Part 2
Kubernetes Architecture - beyond a black box - Part 2Kubernetes Architecture - beyond a black box - Part 2
Kubernetes Architecture - beyond a black box - Part 2Hao H. Zhang
 
Aws Developer Associate Overview
Aws Developer Associate OverviewAws Developer Associate Overview
Aws Developer Associate OverviewAbhi Jain
 
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...Vietnam Open Infrastructure User Group
 
Scaling monitoring with Datadog
Scaling monitoring with DatadogScaling monitoring with Datadog
Scaling monitoring with Datadogalexismidon
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해Terry Cho
 
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...Amazon Web Services Korea
 
1 introduction to windows server 2016
1  introduction to windows server 20161  introduction to windows server 2016
1 introduction to windows server 2016Hameda Hurmat
 
Intro to AWS Cloud Development Kit | AWS Floor28
Intro to AWS Cloud Development Kit | AWS Floor28Intro to AWS Cloud Development Kit | AWS Floor28
Intro to AWS Cloud Development Kit | AWS Floor28Amazon Web Services
 
Devops online training ppt
Devops online training pptDevops online training ppt
Devops online training pptKhalidQureshi31
 
Thanos: Global, durable Prometheus monitoring
Thanos: Global, durable Prometheus monitoringThanos: Global, durable Prometheus monitoring
Thanos: Global, durable Prometheus monitoringBartłomiej Płotka
 
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017Amazon Web Services Korea
 
클라우드 환경에서 재해복구 방안
클라우드 환경에서 재해복구 방안클라우드 환경에서 재해복구 방안
클라우드 환경에서 재해복구 방안Hyuk Kwon
 
The Container Storage Interface (CSI)
The Container Storage Interface (CSI)The Container Storage Interface (CSI)
The Container Storage Interface (CSI)Masiar Ighani
 
Présentation docker et kubernetes
Présentation docker et kubernetesPrésentation docker et kubernetes
Présentation docker et kubernetesKiwi Backup
 

What's hot (20)

Active-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptxActive-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptx
 
Deploying your first application with Kubernetes
Deploying your first application with KubernetesDeploying your first application with Kubernetes
Deploying your first application with Kubernetes
 
AWS Summit DC 2021: Improve the developer experience with AWS CDK
AWS Summit DC 2021: Improve the developer experience with AWS CDKAWS Summit DC 2021: Improve the developer experience with AWS CDK
AWS Summit DC 2021: Improve the developer experience with AWS CDK
 
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
내 서비스에는 어떤 데이터베이스가 맞는걸까? - 이혁 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
 
Kubernetes Architecture - beyond a black box - Part 2
Kubernetes Architecture - beyond a black box - Part 2Kubernetes Architecture - beyond a black box - Part 2
Kubernetes Architecture - beyond a black box - Part 2
 
Aws Developer Associate Overview
Aws Developer Associate OverviewAws Developer Associate Overview
Aws Developer Associate Overview
 
Docker Kubernetes Istio
Docker Kubernetes IstioDocker Kubernetes Istio
Docker Kubernetes Istio
 
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...
Room 3 - 2 - Trần Tuấn Anh - Defending Software Supply Chain Security in Bank...
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Scaling monitoring with Datadog
Scaling monitoring with DatadogScaling monitoring with Datadog
Scaling monitoring with Datadog
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...
AWS IoT를 통해 클라우드로 세상을 연결하는 방법 - 이종화 솔루션즈 아키텍트, AWS / 최원근 솔루션즈 아키텍트, AWS :: AW...
 
1 introduction to windows server 2016
1  introduction to windows server 20161  introduction to windows server 2016
1 introduction to windows server 2016
 
Intro to AWS Cloud Development Kit | AWS Floor28
Intro to AWS Cloud Development Kit | AWS Floor28Intro to AWS Cloud Development Kit | AWS Floor28
Intro to AWS Cloud Development Kit | AWS Floor28
 
Devops online training ppt
Devops online training pptDevops online training ppt
Devops online training ppt
 
Thanos: Global, durable Prometheus monitoring
Thanos: Global, durable Prometheus monitoringThanos: Global, durable Prometheus monitoring
Thanos: Global, durable Prometheus monitoring
 
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
 
클라우드 환경에서 재해복구 방안
클라우드 환경에서 재해복구 방안클라우드 환경에서 재해복구 방안
클라우드 환경에서 재해복구 방안
 
The Container Storage Interface (CSI)
The Container Storage Interface (CSI)The Container Storage Interface (CSI)
The Container Storage Interface (CSI)
 
Présentation docker et kubernetes
Présentation docker et kubernetesPrésentation docker et kubernetes
Présentation docker et kubernetes
 

Viewers also liked

Yii2 by Peter Jack Kambey
Yii2 by Peter Jack KambeyYii2 by Peter Jack Kambey
Yii2 by Peter Jack Kambeyk4ndar
 
Docker for PHP Developers - Madison PHP 2017
Docker for PHP Developers - Madison PHP 2017Docker for PHP Developers - Madison PHP 2017
Docker for PHP Developers - Madison PHP 2017Chris Tankersley
 
Optimize Web Application Infrastructure by Rizki Nanda Agam
Optimize Web Application Infrastructure by Rizki Nanda Agam Optimize Web Application Infrastructure by Rizki Nanda Agam
Optimize Web Application Infrastructure by Rizki Nanda Agam k4ndar
 
Javascript Clean Code
Javascript Clean CodeJavascript Clean Code
Javascript Clean CodePetra Barus
 
Docker for Developers - php[tek] 2017
Docker for Developers - php[tek] 2017Docker for Developers - php[tek] 2017
Docker for Developers - php[tek] 2017Chris Tankersley
 

Viewers also liked (6)

Yii2 by Peter Jack Kambey
Yii2 by Peter Jack KambeyYii2 by Peter Jack Kambey
Yii2 by Peter Jack Kambey
 
Docker for PHP Developers - Madison PHP 2017
Docker for PHP Developers - Madison PHP 2017Docker for PHP Developers - Madison PHP 2017
Docker for PHP Developers - Madison PHP 2017
 
Optimize Web Application Infrastructure by Rizki Nanda Agam
Optimize Web Application Infrastructure by Rizki Nanda Agam Optimize Web Application Infrastructure by Rizki Nanda Agam
Optimize Web Application Infrastructure by Rizki Nanda Agam
 
Yii2
Yii2Yii2
Yii2
 
Javascript Clean Code
Javascript Clean CodeJavascript Clean Code
Javascript Clean Code
 
Docker for Developers - php[tek] 2017
Docker for Developers - php[tek] 2017Docker for Developers - php[tek] 2017
Docker for Developers - php[tek] 2017
 

Similar to Scaling Yii2 Application

WekaIO: Making Machine Learning Compute Bound Again
WekaIO: Making Machine Learning Compute Bound AgainWekaIO: Making Machine Learning Compute Bound Again
WekaIO: Making Machine Learning Compute Bound Againinside-BigData.com
 
Continuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventContinuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventJohn Schneider
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Amazon Web Services
 
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...FIWARE
 
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & More
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & MoreMeetup at AI NextCon 2019: In-Stream data process, Data Orchestration & More
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & MoreAlluxio, Inc.
 
Why Wordnik went non-relational
Why Wordnik went non-relationalWhy Wordnik went non-relational
Why Wordnik went non-relationalTony Tam
 
Achieving Separation of Compute and Storage in a Cloud World
Achieving Separation of Compute and Storage in a Cloud WorldAchieving Separation of Compute and Storage in a Cloud World
Achieving Separation of Compute and Storage in a Cloud WorldAlluxio, Inc.
 
Optimizing Big Data to run in the Public Cloud
Optimizing Big Data to run in the Public CloudOptimizing Big Data to run in the Public Cloud
Optimizing Big Data to run in the Public CloudQubole
 
Achieving compute and storage independence for data-driven workloads
Achieving compute and storage independence for data-driven workloadsAchieving compute and storage independence for data-driven workloads
Achieving compute and storage independence for data-driven workloadsAlluxio, Inc.
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamBrian Benz
 
How the Development Bank of Singapore solves on-prem compute capacity challen...
How the Development Bank of Singapore solves on-prem compute capacity challen...How the Development Bank of Singapore solves on-prem compute capacity challen...
How the Development Bank of Singapore solves on-prem compute capacity challen...Alluxio, Inc.
 
Big Data Analytics from Azure Cloud to Power BI Mobile
Big Data Analytics from Azure Cloud to Power BI MobileBig Data Analytics from Azure Cloud to Power BI Mobile
Big Data Analytics from Azure Cloud to Power BI MobileRoy Kim
 
Alluxio @ Uber Seattle Meetup
Alluxio @ Uber Seattle MeetupAlluxio @ Uber Seattle Meetup
Alluxio @ Uber Seattle MeetupAlluxio, Inc.
 
A Brave new object store world
A Brave new object store worldA Brave new object store world
A Brave new object store worldEffi Ofer
 
DCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDocker, Inc.
 
Aws architecture main ideas
Aws architecture main ideasAws architecture main ideas
Aws architecture main ideasCraig F.R Read
 
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EUBuilding Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EUYaron Haviv
 
Simplified Data Preparation for Machine Learning in Hybrid and Multi Clouds
Simplified Data Preparation for Machine Learning in Hybrid and Multi CloudsSimplified Data Preparation for Machine Learning in Hybrid and Multi Clouds
Simplified Data Preparation for Machine Learning in Hybrid and Multi CloudsAlluxio, Inc.
 
Cloud Native Development
Cloud Native DevelopmentCloud Native Development
Cloud Native DevelopmentManuel Garcia
 

Similar to Scaling Yii2 Application (20)

WekaIO: Making Machine Learning Compute Bound Again
WekaIO: Making Machine Learning Compute Bound AgainWekaIO: Making Machine Learning Compute Bound Again
WekaIO: Making Machine Learning Compute Bound Again
 
Continuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventContinuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:Invent
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 
Scaling PHP apps
Scaling PHP appsScaling PHP apps
Scaling PHP apps
 
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...
FIWARE Global Summit - A Multi-database Plugin for the Orion FIWARE Context B...
 
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & More
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & MoreMeetup at AI NextCon 2019: In-Stream data process, Data Orchestration & More
Meetup at AI NextCon 2019: In-Stream data process, Data Orchestration & More
 
Why Wordnik went non-relational
Why Wordnik went non-relationalWhy Wordnik went non-relational
Why Wordnik went non-relational
 
Achieving Separation of Compute and Storage in a Cloud World
Achieving Separation of Compute and Storage in a Cloud WorldAchieving Separation of Compute and Storage in a Cloud World
Achieving Separation of Compute and Storage in a Cloud World
 
Optimizing Big Data to run in the Public Cloud
Optimizing Big Data to run in the Public CloudOptimizing Big Data to run in the Public Cloud
Optimizing Big Data to run in the Public Cloud
 
Achieving compute and storage independence for data-driven workloads
Achieving compute and storage independence for data-driven workloadsAchieving compute and storage independence for data-driven workloads
Achieving compute and storage independence for data-driven workloads
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
 
How the Development Bank of Singapore solves on-prem compute capacity challen...
How the Development Bank of Singapore solves on-prem compute capacity challen...How the Development Bank of Singapore solves on-prem compute capacity challen...
How the Development Bank of Singapore solves on-prem compute capacity challen...
 
Big Data Analytics from Azure Cloud to Power BI Mobile
Big Data Analytics from Azure Cloud to Power BI MobileBig Data Analytics from Azure Cloud to Power BI Mobile
Big Data Analytics from Azure Cloud to Power BI Mobile
 
Alluxio @ Uber Seattle Meetup
Alluxio @ Uber Seattle MeetupAlluxio @ Uber Seattle Meetup
Alluxio @ Uber Seattle Meetup
 
A Brave new object store world
A Brave new object store worldA Brave new object store world
A Brave new object store world
 
DCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker Containers
 
Aws architecture main ideas
Aws architecture main ideasAws architecture main ideas
Aws architecture main ideas
 
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EUBuilding Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
Building Super Fast Cloud-Native Data Platforms - Yaron Haviv, KubeCon 2017 EU
 
Simplified Data Preparation for Machine Learning in Hybrid and Multi Clouds
Simplified Data Preparation for Machine Learning in Hybrid and Multi CloudsSimplified Data Preparation for Machine Learning in Hybrid and Multi Clouds
Simplified Data Preparation for Machine Learning in Hybrid and Multi Clouds
 
Cloud Native Development
Cloud Native DevelopmentCloud Native Development
Cloud Native Development
 

More from Petra Barus

What's New In PHP7
What's New In PHP7What's New In PHP7
What's New In PHP7Petra Barus
 
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEA
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEAMemenangkan Persaingan Marketing Real-estate Di Era Digital dan MEA
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEAPetra Barus
 
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5PHP Indonesia Meetup - What's New in Yii2 and PHP5.5
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5Petra Barus
 
Starting A Web Startup - Informatika Mengajar
Starting A Web Startup - Informatika MengajarStarting A Web Startup - Informatika Mengajar
Starting A Web Startup - Informatika MengajarPetra Barus
 
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)Petra Barus
 
Proposal Kongres Ikatan Alumni IF ITB
Proposal Kongres Ikatan Alumni IF ITBProposal Kongres Ikatan Alumni IF ITB
Proposal Kongres Ikatan Alumni IF ITBPetra Barus
 
Setahun TOKI Learning Center
Setahun TOKI Learning CenterSetahun TOKI Learning Center
Setahun TOKI Learning CenterPetra Barus
 
Java User Meetup Bandung "Android" by GITS Indonesia
Java User Meetup Bandung "Android" by GITS IndonesiaJava User Meetup Bandung "Android" by GITS Indonesia
Java User Meetup Bandung "Android" by GITS IndonesiaPetra Barus
 
Java User Meetup Bandung "Android" by Agate Studio
Java User Meetup Bandung "Android" by Agate StudioJava User Meetup Bandung "Android" by Agate Studio
Java User Meetup Bandung "Android" by Agate StudioPetra Barus
 
TOKI Learning Center
TOKI Learning CenterTOKI Learning Center
TOKI Learning CenterPetra Barus
 
Taekwondo Tournament Management System
Taekwondo Tournament Management SystemTaekwondo Tournament Management System
Taekwondo Tournament Management SystemPetra Barus
 
Slide sesi 6 - java concurrency
Slide   sesi 6 - java concurrencySlide   sesi 6 - java concurrency
Slide sesi 6 - java concurrencyPetra Barus
 

More from Petra Barus (12)

What's New In PHP7
What's New In PHP7What's New In PHP7
What's New In PHP7
 
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEA
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEAMemenangkan Persaingan Marketing Real-estate Di Era Digital dan MEA
Memenangkan Persaingan Marketing Real-estate Di Era Digital dan MEA
 
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5PHP Indonesia Meetup - What's New in Yii2 and PHP5.5
PHP Indonesia Meetup - What's New in Yii2 and PHP5.5
 
Starting A Web Startup - Informatika Mengajar
Starting A Web Startup - Informatika MengajarStarting A Web Startup - Informatika Mengajar
Starting A Web Startup - Informatika Mengajar
 
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)
Proposal Kongres Ikatan Alumni (versi 8 Oktober 2012)
 
Proposal Kongres Ikatan Alumni IF ITB
Proposal Kongres Ikatan Alumni IF ITBProposal Kongres Ikatan Alumni IF ITB
Proposal Kongres Ikatan Alumni IF ITB
 
Setahun TOKI Learning Center
Setahun TOKI Learning CenterSetahun TOKI Learning Center
Setahun TOKI Learning Center
 
Java User Meetup Bandung "Android" by GITS Indonesia
Java User Meetup Bandung "Android" by GITS IndonesiaJava User Meetup Bandung "Android" by GITS Indonesia
Java User Meetup Bandung "Android" by GITS Indonesia
 
Java User Meetup Bandung "Android" by Agate Studio
Java User Meetup Bandung "Android" by Agate StudioJava User Meetup Bandung "Android" by Agate Studio
Java User Meetup Bandung "Android" by Agate Studio
 
TOKI Learning Center
TOKI Learning CenterTOKI Learning Center
TOKI Learning Center
 
Taekwondo Tournament Management System
Taekwondo Tournament Management SystemTaekwondo Tournament Management System
Taekwondo Tournament Management System
 
Slide sesi 6 - java concurrency
Slide   sesi 6 - java concurrencySlide   sesi 6 - java concurrency
Slide sesi 6 - java concurrency
 

Recently uploaded

2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 

Recently uploaded (20)

2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 

Scaling Yii2 Application