SlideShare una empresa de Scribd logo
1 de 68
Descargar para leer sin conexión
November 12, 2014 | Las Vegas, NV 
Jeremy Lindblom (@jeremeamia), AWS Developer Resources 
@awsforphp
1.Introduce the SDK (including Version 3) 
2.Build an app with the SDK 
3.Demonstrate advanced SDK features
$ec2 = ::factory 
'region' => 'us-east-1' 
'version' => '2014-06-15' 
$ec2->runInstances 
'ImageId' => 'ami-6a6dcc02' 
'MinCount' => 
'MaxCount' => 
'InstanceType' => 'm1.small'
(semver.org)
(cont.)
$ec2=::factory 
'region' =>'us-east-1' 
$ec2->runInstances 
'ImageId'=>'ami-6a6dcc02' 
'MinCount' => 
'MaxCount'=> 
'InstanceType' =>'m1.small'
$ec2=::factory 
'region' =>'us-east-1' 
$ec2->runInstances 
'ImageId'=>'ami-6a6dcc02' 
'MinCount' => 
'MaxCount'=> 
'InstanceType' =>'m1.small' 
'version' =>'2014-06-15'
•Asyncrequests with FutureResultobjects and a Promise API 
•Support for custom HTTP adapters 
–cURLno longer required (still the default) 
–Possible to implement with non-blocking event loops 
•Result "Paginators" for iterating paginated data 
•JMESPathquerying of result data 
•"debug" client option for easy debugging
PHPPHP 
#nofilter 
#selphpie 
#instagood
PHPPHP
(Storage of selPHPies) (Storage of URLs/captions) PHPPHP
"require": { 
"aws/aws-sdk-php": "~3.0@dev", 
"silex/silex": "~1.2", 
"twig/twig": "~1.16", 
} 
getcomposer.org
•Instance profile credentials 
•Credentials file 
•Environment variables 
•Hard coding
•Instance profile credentials 
•Credentials file 
•Environment variables 
•Client configuration
•Instance profile credentials 
•Credentials file 
•Environment variables 
•Client configuration 
FYI: Also supported by the AWS CLI and other SDKs.
•Instance profile credentials 
•Credentials file 
•Environment variables 
•Client configuration
•Instance profile credentials 
•Credentials file 
•Environment variables 
•Client Configuration (BEWARE) 
'credentials' => 
'key' =>$yourAccessKeyId 
'secret' =>$yourSecretAccessKey
phpbin/setup.phpS3 bucketDynamoDBtable 
Amazon S3 
Amazon 
DynamoDB
$s3->createBucket'Bucket' =>$bucket 
$s3->waitUntil'BucketExists''Bucket' =>$bucket 
$dynamoDb->createTable(['TableName'=>$table... 
$dynamoDb->waitUntil'TableExists' 
'TableName'=> $table 
echo "Done.n"
$result =$dynamoDb->createTable([ 
'TableName' =>$table, 
'@future' => true, 
]); 
// Do other things... 
// Blocks once dereferenced. 
$result['TableDescription']['TableStatus'];
$waiter =$dynamoDb->getWaiter( 
'TableExists', [...] 
); 
$waiter->wait(); 
// THIS IS THE SAME AS: 
$dynamoDb->waitUntil'TableExists'...
$result =$client->operation([...]); 
$result->then( 
$onFulfilled, 
$onRejected, 
$onProgress, 
); 
// See the React/Promise library
$dynamoDb->createTable([ 
'TableName' =>$table, 
'@future' => true, 
])->then(function($result)use ($dynamoDb,$table) { 
return$dynamoDb->getWaiter('TableExists', [ 
'TableName'=>$table, 
])->promise(); 
})->then(function($result) { 
echo"Done.n"; 
});
$dynamoDb->createTable([…]) 
->then(...) 
->then(...); 
$s3->createBucket([…]) 
->then(...) 
->then(...);
$app =new 
$app'aws'=function 
returnnew 
'region' => 'us-east-1' 
'version' => 'latest' 
// ROUTES AND OTHER APPLICATION LOGIC 
$app->run
$app->get'/'function...
$dynamoDb=$app'aws'->getDynamoDb 
$result =$dynamoDb->query 
'TableName' => 'selphpies' 
'Limit' => 
// ... 
$items =$result'Items'
$results =$dynamoDb->getPaginator'Query' 
'TableName' => 'selphpies' 
// ... 
$items =$results->search'Items[]'
$results =$s3->getPaginator'ListObjects'... 
$files =$results->search'Contents[].Key'
# With Paginators 
$results =$s3->getPaginator'ListObjects' 
'Bucket' =>'my-bucket' 
$keys =$results->search'Contents[].Key' 
foreach$keys as$key 
echo$object'Key'."n" 
# Without Paginators 
$marker= 
do 
$args='Bucket' =>'my-bucket' 
if$marker 
$args'Marker'=$marker 
$result =$s3->listObjects$args 
$objects =array$result'Contents' 
foreach$objects as$object 
echo$object'Key'."n" 
$marker $result->search 
'NextMarker|| Contents[-1].Key'while$result'IsTruncated'
http://jmespath.org/ 
$result->search'<JMESPathExpression>' 
> 'Contents[].Key' 
> '[CommonPrefixes[].Prefix, Contents[].Key][]' 
> 'NextMarker|| Contents[-1].Key'
$app->get'/upload'function...
POST 
$app->post'/upload'function...
try { 
$caption = $request->request->get('selphpieCaption', '...'); 
$file = $request->files->get('selphpieImage'); 
if (!$file instanceofUploadedFile|| $file->getError()) { 
throw new RuntimeException('...'); 
} 
#1. UPLOAD THE IMAGE TO S3 
#2. SAVE THE IMAGE DATA TO DYNAMODB 
$app['session']->getFlashBag()->add('alerts', 'success'); 
return $app->redirect('/'); 
} catch (Exception $e) { 
$app['session']->getFlashBag()->add('alerts', 'danger'); 
return $app->redirect('/upload'); 
}
$s3 =$app['aws']->getS3(); 
$result =$s3->putObject([ 
'Bucket' => 'selphpies', 
'Key' => $file->getClientOriginalName(), 
'Body' =>fopen($file->getFileName(), 'r'), 
'ACL' => 'public-read', 
]);
// Automatically switches to multipart uploads 
// if the file is larger than default threshold. 
$result=$s3->upload( 
'selphpies', 
$file->getClientOriginalName(), 
fopen($file->getPathname(), 'r'), 
'public-read' 
);
$dynamoDb->putItem([ 
'TableName' =>'selphpies', 
'Item'=>[ 
// ... 
'src'=>['S' =>$result['ObjectURL']], 
'caption'=>['S' =>$caption], 
], 
]);
PHP 
such php 
so cloud 
wow 
very selfie 
much app 
#phpdoge
PHP
Really
PHP
PHP
PHP
PHP 
Step 1 
Step 2 
Step 3 
Step 4
Step 1
$results=$dynamoDb->getPaginator'Scan' 
'TableName' =>$oldTable 
'KeyConditions' =>
Step 2
$records =new$dynamoDb 
'table' =>$newTable 
// $records->put($selphpie); 
$records->flush
Step 3
$commands = 
$commands=$s3->getCommand'CopyObject'... 
$commands=$s3->getCommand'CopyObject'... 
$commands=$s3->getCommand'CopyObject'... 
// ... 
$s3->executeAll$commands
$getCopyCommands= function$resultsuse... 
foreach$results->search'Items[]'as$selphpie 
$command =$s3->getCommand'CopyObject' 
'Bucket' =>$newBucket 
'Key' => $key 
'SourceFile' =>"{$oldBucket}/{$key}" 
// ... (Attach event listener in Step 4) ... 
yield$command 
$s3->executeAll$getCopyCommands$results
Step 4
$emitter =$command->getEmitter 
$emitter->on'process'function$eventuse... 
if$result =$event->getResult 
$selphpie'url''S'=$result'ObjectURL' 
// Add new record to WriteRequestBatch 
$records->put$selphpieelse 
// Log/handle error...
PHP 
Step 1 
Step 2 
Step 3 
Step 4
PHP 
$results = $dynamoDb->getPaginator('Scan', [ 
'TableName' => $oldBucket, 
'KeyConditions' => [ 
'app' => [ 
'AttributeValueList' => [['S' => $oldAppKey]], 
'ComparisonOperator' => 'EQ', 
], 
], 
]); 
$records = new WriteRequestBatch($dynamoDb, [ 
'table' => $newTable 
]); 
$getCopyCommands= function ($results) use ( 
$s3, $records, $oldBucket, $newBucket, $newAppKey 
) { 
foreach($results->search('Items[]') as $selphpie) { 
$key = Url::fromString($selphpie['url']['S'])->getPath(); 
$command = $s3->getCommand('CopyObject', [ 
'Bucket' => $newBucket, 
'Key' => $key, 
'SourceFile' => "{$oldBucket}/{$key}", 
]); 
$emitter = $command->getEmitter(); 
$emitter->on('process', function ($event) use ( 
$selphpie, $records, $newAppKey 
) { 
if ($result = $event->getResult()) { 
$selphpie['url']['S'] = $result['ObjectURL']; 
$selphpie['app']['S'] = $newAppKey; 
// Add new record to WriteRequestBatch 
$records->put($selphpie); 
} else { 
// Log/handle error... 
} 
}); 
yield $command; 
} 
}; 
$s3->executeAll($getCopyCommands($results)); 
$records->flush();
@awsforphpgithub.com/aws/aws-sdk-php/releasesblogs.aws.amazon.com/php
github.com/aws/aws-sdk-phpforums.aws.amazon.com
http://bit.ly/awsevals 
@awsforphp 
Come find us at the AWS booths 
if you have questions. 
Your Homework:

Más contenido relacionado

La actualidad más candente

Amazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend FrameworkAmazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend Framework
Shahar Evron
 
Phpne august-2012-symfony-components-friends
Phpne august-2012-symfony-components-friendsPhpne august-2012-symfony-components-friends
Phpne august-2012-symfony-components-friends
Michael Peacock
 
Keeping it small: Getting to know the Slim micro framework
Keeping it small: Getting to know the Slim micro frameworkKeeping it small: Getting to know the Slim micro framework
Keeping it small: Getting to know the Slim micro framework
Jeremy Kendall
 
Dance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech TalkDance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech Talk
Michael Peacock
 

La actualidad más candente (20)

(DEV301) Automating AWS with the AWS CLI
(DEV301) Automating AWS with the AWS CLI(DEV301) Automating AWS with the AWS CLI
(DEV301) Automating AWS with the AWS CLI
 
Deep Dive: AWS Command Line Interface
Deep Dive: AWS Command Line InterfaceDeep Dive: AWS Command Line Interface
Deep Dive: AWS Command Line Interface
 
Amazon Web Services for PHP Developers
Amazon Web Services for PHP DevelopersAmazon Web Services for PHP Developers
Amazon Web Services for PHP Developers
 
Amazon Route53へのドメイン移管
Amazon Route53へのドメイン移管Amazon Route53へのドメイン移管
Amazon Route53へのドメイン移管
 
Amazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend FrameworkAmazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend Framework
 
Introducing Assetic: Asset Management for PHP 5.3
Introducing Assetic: Asset Management for PHP 5.3Introducing Assetic: Asset Management for PHP 5.3
Introducing Assetic: Asset Management for PHP 5.3
 
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
Building Modern and Secure PHP Applications – Codementor Office Hours with Be...
 
Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)
 
Phpne august-2012-symfony-components-friends
Phpne august-2012-symfony-components-friendsPhpne august-2012-symfony-components-friends
Phpne august-2012-symfony-components-friends
 
Ansible Assume AWS Role
Ansible Assume AWS RoleAnsible Assume AWS Role
Ansible Assume AWS Role
 
Not your Grandma's XQuery
Not your Grandma's XQueryNot your Grandma's XQuery
Not your Grandma's XQuery
 
XQuery Rocks
XQuery RocksXQuery Rocks
XQuery Rocks
 
Building Cloud Castles - LRUG
Building Cloud Castles - LRUGBuilding Cloud Castles - LRUG
Building Cloud Castles - LRUG
 
Great Developers Steal
Great Developers StealGreat Developers Steal
Great Developers Steal
 
Play á la Rails
Play á la RailsPlay á la Rails
Play á la Rails
 
Keeping it small: Getting to know the Slim micro framework
Keeping it small: Getting to know the Slim micro frameworkKeeping it small: Getting to know the Slim micro framework
Keeping it small: Getting to know the Slim micro framework
 
Play!ng with scala
Play!ng with scalaPlay!ng with scala
Play!ng with scala
 
Assetic (Zendcon)
Assetic (Zendcon)Assetic (Zendcon)
Assetic (Zendcon)
 
Dance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech TalkDance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech Talk
 
XQuery in the Cloud
XQuery in the CloudXQuery in the Cloud
XQuery in the Cloud
 

Destacado

AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜 AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
崇之 清水
 

Destacado (18)

クラウドの活用で大阪から世界へ。チャットワークの挑戦
クラウドの活用で大阪から世界へ。チャットワークの挑戦クラウドの活用で大阪から世界へ。チャットワークの挑戦
クラウドの活用で大阪から世界へ。チャットワークの挑戦
 
Packagist
PackagistPackagist
Packagist
 
Mastering the AWS SDK for PHP (TLS306) | AWS re:Invent 2013
Mastering the AWS SDK for PHP (TLS306) | AWS re:Invent 2013Mastering the AWS SDK for PHP (TLS306) | AWS re:Invent 2013
Mastering the AWS SDK for PHP (TLS306) | AWS re:Invent 2013
 
【 ITベンチャーを支えるテクノロジー 】チャットワークを支える技術|Chatwork株式会社
【 ITベンチャーを支えるテクノロジー 】チャットワークを支える技術|Chatwork株式会社【 ITベンチャーを支えるテクノロジー 】チャットワークを支える技術|Chatwork株式会社
【 ITベンチャーを支えるテクノロジー 】チャットワークを支える技術|Chatwork株式会社
 
AWSのおはなし at ChatWork
AWSのおはなし at ChatWorkAWSのおはなし at ChatWork
AWSのおはなし at ChatWork
 
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜 AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
 
サービスをつくりなおす決断をするとき
サービスをつくりなおす決断をするときサービスをつくりなおす決断をするとき
サービスをつくりなおす決断をするとき
 
AWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS ProtectionAWS Shieldのご紹介 Managed DDoS Protection
AWS Shieldのご紹介 Managed DDoS Protection
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
 
AWS Black Belt Online Seminar 2017 Amazon EC2 Systems Manager
AWS Black Belt Online Seminar 2017 Amazon EC2 Systems ManagerAWS Black Belt Online Seminar 2017 Amazon EC2 Systems Manager
AWS Black Belt Online Seminar 2017 Amazon EC2 Systems Manager
 
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターンAWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
 
AWS Black Belt Online Seminar 2017 Docker on AWS
AWS Black Belt Online Seminar 2017 Docker on AWSAWS Black Belt Online Seminar 2017 Docker on AWS
AWS Black Belt Online Seminar 2017 Docker on AWS
 
AWS Black Belt Online Seminar AWSで実現するDisaster Recovery
AWS Black Belt Online Seminar AWSで実現するDisaster RecoveryAWS Black Belt Online Seminar AWSで実現するDisaster Recovery
AWS Black Belt Online Seminar AWSで実現するDisaster Recovery
 
AWS Black Belt Online Seminar 2017 Amazon Athena
AWS Black Belt Online Seminar 2017 Amazon AthenaAWS Black Belt Online Seminar 2017 Amazon Athena
AWS Black Belt Online Seminar 2017 Amazon Athena
 
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
 
AWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto Scaling
 
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
 
AWS Black Belt Online Seminar 2017 Amazon Chime
AWS Black Belt Online Seminar 2017 Amazon ChimeAWS Black Belt Online Seminar 2017 Amazon Chime
AWS Black Belt Online Seminar 2017 Amazon Chime
 

Similar a (DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014

Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Masahiro Nagano
 
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
Introduction to CloudForecast / YAPC::Asia 2010 TokyoIntroduction to CloudForecast / YAPC::Asia 2010 Tokyo
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
Masahiro Nagano
 
Dirty Secrets of the PHP SOAP Extension
Dirty Secrets of the PHP SOAP ExtensionDirty Secrets of the PHP SOAP Extension
Dirty Secrets of the PHP SOAP Extension
Adam Trachtenberg
 
Keeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro FrameworkKeeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro Framework
Jeremy Kendall
 
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
Single Page Web Applications with CoffeeScript, Backbone and JasmineSingle Page Web Applications with CoffeeScript, Backbone and Jasmine
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
Paulo Ragonha
 

Similar a (DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014 (20)

Forget about index.php and build you applications around HTTP!
Forget about index.php and build you applications around HTTP!Forget about index.php and build you applications around HTTP!
Forget about index.php and build you applications around HTTP!
 
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
 
Forget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers CracowForget about Index.php and build you applications around HTTP - PHPers Cracow
Forget about Index.php and build you applications around HTTP - PHPers Cracow
 
Symfony components in the wild, PHPNW12
Symfony components in the wild, PHPNW12Symfony components in the wild, PHPNW12
Symfony components in the wild, PHPNW12
 
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
Introduction to CloudForecast / YAPC::Asia 2010 TokyoIntroduction to CloudForecast / YAPC::Asia 2010 Tokyo
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
 
The Art of Transduction
The Art of TransductionThe Art of Transduction
The Art of Transduction
 
Daily notes
Daily notesDaily notes
Daily notes
 
Min-Maxing Software Costs
Min-Maxing Software CostsMin-Maxing Software Costs
Min-Maxing Software Costs
 
How Kris Writes Symfony Apps
How Kris Writes Symfony AppsHow Kris Writes Symfony Apps
How Kris Writes Symfony Apps
 
Dirty Secrets of the PHP SOAP Extension
Dirty Secrets of the PHP SOAP ExtensionDirty Secrets of the PHP SOAP Extension
Dirty Secrets of the PHP SOAP Extension
 
Silex meets SOAP & REST
Silex meets SOAP & RESTSilex meets SOAP & REST
Silex meets SOAP & REST
 
Keeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro FrameworkKeeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro Framework
 
PHPSpec - the only Design Tool you need - 4Developers
PHPSpec - the only Design Tool you need - 4DevelopersPHPSpec - the only Design Tool you need - 4Developers
PHPSpec - the only Design Tool you need - 4Developers
 
Redis for the Everyday Developer
Redis for the Everyday DeveloperRedis for the Everyday Developer
Redis for the Everyday Developer
 
Introduction to Zend Framework web services
Introduction to Zend Framework web servicesIntroduction to Zend Framework web services
Introduction to Zend Framework web services
 
Nubilus Perl
Nubilus PerlNubilus Perl
Nubilus Perl
 
Refactoring using Codeception
Refactoring using CodeceptionRefactoring using Codeception
Refactoring using Codeception
 
Dutch PHP Conference - PHPSpec 2 - The only Design Tool you need
Dutch PHP Conference - PHPSpec 2 - The only Design Tool you needDutch PHP Conference - PHPSpec 2 - The only Design Tool you need
Dutch PHP Conference - PHPSpec 2 - The only Design Tool you need
 
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
Single Page Web Applications with CoffeeScript, Backbone and JasmineSingle Page Web Applications with CoffeeScript, Backbone and Jasmine
Single Page Web Applications with CoffeeScript, Backbone and Jasmine
 
The promise of asynchronous php
The promise of asynchronous phpThe promise of asynchronous php
The promise of asynchronous php
 

Más de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Más de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

(DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014