Data in a Cloud
Data in a Cloud - Introduction to Qt Cloud Services
qt.io on MAR
Qt Developer Days Mobile 
App uses EDS as a database
Customers & Partners
What is Qt Cloud Services 
Enginio 
Data 
Storage 
Storage 
for 
Applica/on 
Data 
Use 
with 
QtEnginio 
Library 
Managed 
Applica3on 
Run3me 
Applica/on 
Pla<orm 
as 
a 
Service 
Support 
for 
Qt/C++, 
NodeJS, 
Apache, 
PHP, 
MongoDB, 
MySQL, 
Redis… 
Managed 
WebSocket 
Real-­‐Time 
Socket 
Connec/ons 
with 
virtually 
unlimited 
scalability 
Use 
with 
SDK’s 
and 
Qt 
WebSocket 
Client 
Library
Enginio Data Storage (EDS) 
Flexible and powerful 
cloud data storage 
with built-in user and 
data access control
EDS Use Cases 
• Content storage, sharing and 
synchronization 
• User profiles and access 
control 
• Remote monitoring and control 
• Usage Statistics 
• Client-to-Client 
Communications 
• Application settings 
• N-screen; Embedded, Web, 
Desktop, Mobiles…
How to Use with Qt? 
QByteArray 
backendId(EDS_BACKEND_ID); 
" 
EnginioClient 
*client 
= 
new 
EnginioClient; 
client-­‐>setBackendId(backendId); 
" 
QJsonObject 
object; 
object["objectType"] 
= 
QString::fromUtf8("objects.movies"); 
object["name"] 
= 
QString::fromUtf8("The 
Matrix"); 
object["year"] 
= 
1999; 
// 
Send 
the 
request 
EnginioReply 
*reply 
= 
client-­‐>create(object);
Managed WebSocket (MWS) 
Fully managed 
service implementing 
a bi-directional, real-time 
communication 
gateway for 
WebSockets.
Where to use? 
• Chat applications 
• Social feeds 
• Multiplayer games 
• Collaborative editing 
• Sport updates 
• Location based apps 
• Your killer app
How To Use With Qt? 
WebSocket 
{ 
id: 
socket 
active: 
true 
onTextMessageReceived: 
{ 
handleWebsocketMessage(message) 
} 
} 
// 
JavaScript 
var 
REQUEST_URL 
= 
“https://mws-­‐eu-­‐1.qtc.io/v1/gateways/MWS_GATEWAY_ID/websocket_uri” 
function 
connectToWebSocket() 
{ 
var 
doc 
= 
new 
XMLHttpRequest(); 
doc.open("GET", 
REQUEST_URL 
+ 
"/api/websocket", 
true); 
doc.setRequestHeader('Content-­‐Type', 
'application/json'); 
doc.onreadystatechange 
= 
function() 
{ 
if 
(doc.readyState 
=== 
4) 
{ 
if 
(doc.status 
=== 
200) 
{ 
var 
data 
= 
JSON.parse(doc.responseText); 
socket.url 
= 
data.uri 
} 
} 
} 
doc.send() 
}
Managed Application Runtime (MAR) 
Scalable," 
Multi-language," 
Multi-database," 
Application Platform as a Service
MAR Use Cases 
Internet of Things & Embedded! 
• Cloud compute, analyze, metrics and data 
visualization 
• Remote management, APIs and configuration of 
”things” 
" 
Websites! 
• High-traffic campaign & marketing sites 
• Education, Gaming, Personal… 
" 
Customer facing applications! 
• Online Applications 
• API’s for web, desktop & mobile
What is PaaS? 
On#Premises# 
Applica'on* 
Data* 
Run'me* 
Middleware* 
OS* 
Virtualiza'on* 
Servers* 
Storage* 
Networking* 
You*Manage* 
IaaS$ 
Applica'on* 
Data* 
Run'me* 
Middleware* 
OS* 
Virtualiza'on* 
Servers* 
Storage* 
Networking* 
Vendor*Provides* You*Manage* 
PaaS$ 
Applica'on* 
Data* 
Run'me* 
Middleware* 
OS* 
Virtualiza'on* 
Servers* 
Storage* 
Networking* 
Vendor*Provides* You*Manage* 
SaaS# 
Applica'on* 
Data* 
Run'me* 
Middleware* 
OS* 
Virtualiza'on* 
Servers* 
Storage* 
Networking* 
Vendor*Provides* 
With PaaS, developer can focus just on building great apps. No need to worry about 
servers, operating system, loadbalancing, network or infrastructure.
Managed Application Runtimes 
How does it work?
Supported Frameworks 
Supported frameworks by 3rd party build packs 
Scala, Clojure, Play, Gradle, Grails, PHP, Go, Meteorite, Perl, Dart, Nginx, Apache, Jekyll
Built-in Services 
or choose from our cloud based services 
Enginio Data Storage" 
Managed WebSocket 
or choose anything with SDK 
... Amazon, Azure, Google ...
Developer Friendly 
Deployment 
Deploy using Git – the most common VCS 
among developers 
> 
git 
push 
qtc 
master
How to Use With Qt? 
lanevala@it-l-m0015 ~/Development/qtwebsockets-echoserver-example[master*]$ git push qtc master 
Counting objects: 1, done. 
Writing objects: 100% (1/1), 186 bytes | 0 bytes/s, done. 
Total 1 (delta 0), reused 0 (delta 0) 
-----> Qt app detected 
Installing Qt 5.4.0-beta-2014-09-25_25 
-----> Setting up Qt 5.4.0-beta-2014-09-25_25 
-----> Configuring with qmake 
-----> Compiling with make 
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - 
I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - 
I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o main.o main.cpp 
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - 
I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - 
I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o echoserver.o echoserver.cpp 
/app/.qtcs/Qt/5.4/gcc_64/bin/moc -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/app/.qtcs/Qt/ 
5.4/gcc_64/mkspecs/linux-g++ -I/tmp/build -I/app/.qtcs/Qt/5.4/gcc_64/include -I/app/.qtcs/Qt/5.4/gcc_64/include/ 
QtWebSockets -I/app/.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I/app/.qtcs/Qt/5.4/gcc_64/include/QtCore echoserver.h -o 
moc_echoserver.cpp 
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - 
I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - 
I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o moc_echoserver.o moc_echoserver.cpp 
g++ -Wl,-O1 -Wl,-rpath,/app/.qtcs/Qt/5.4/gcc_64 -Wl,-rpath,/app/.qtcs/Qt/5.4/gcc_64/lib -o echoserver main.o 
echoserver.o moc_echoserver.o -L/app/.qtcs/Qt/5.4/gcc_64/lib -lQt5WebSockets -lQt5Network -lQt5Core -lpthread 
-----> Discovering process types 
Procfile declares types -> web 
-----> Compiled slug size is 108M 
-----> Deploying app 
Uploading app container ...... done. 
mar-eu-1-twwto7g0 deployed to http://mar-eu-1-twwto8g1.qtcloudapp.com
CONNECTED 
Does it echo? 
Does it echo? 
Echoserver listening on port 5000 
Echoserver got new connection 
Ping clients 1 
Echoserver got new pong 
Echoserver got new message "Does it echo?"
Scalable Architecture 
Redis MongoDB 
Your Application 
Managed 
Databases 
Applica3on 
Instances End Users 
Configure 
Deploy 
Scale With Your Business 
Git Push API 
MySQL 
Environment Variables 
Load Balancer 
myawesome.com 
Scaling
Console
Data in a Cloud - Introduction to Qt Cloud Services
Data in a Cloud - Introduction to Qt Cloud Services
Data in a Cloud - Introduction to Qt Cloud Services
Command Line Tool
Stdout & Stderr Logging
Next Steps 
• For Getting Started! 
• Go to http://qtcloudservices.com 
• Sign-up and try yourself 
• Read our documentation 
• Give us feedback! 
• For Serious Development! 
• Cloud KickStart - tailored training & consulting
Thank You! 
www.qtcloudservices.com!

More Related Content

PDF
Database, data storage, hosting with Firebase
PDF
IoT-javascript-2019-fosdem
PPTX
Managing Multi-Tenant SaaS Applications at Scale
PDF
Bloom Filters for Web Caching - Lightning Talk
PPTX
Deploy Microsoft Azure Data Solutions
PDF
Enhancing the default MongoDB Security
PDF
Consul by Mitchell - HashiCorp Meetup
PDF
Big data on google cloud
Database, data storage, hosting with Firebase
IoT-javascript-2019-fosdem
Managing Multi-Tenant SaaS Applications at Scale
Bloom Filters for Web Caching - Lightning Talk
Deploy Microsoft Azure Data Solutions
Enhancing the default MongoDB Security
Consul by Mitchell - HashiCorp Meetup
Big data on google cloud

What's hot (20)

PDF
Walls Within Walls: What if your attacker knows parkour?
PDF
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
PDF
GDG Cloud Southlake #9 Secure Cloud Networking - Beyond Cloud Boundaries
PPTX
Managing Cloud Security Design and Implementation in a Ransomware World
PPTX
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
PDF
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
PDF
Druid meetup @ Netflix (11/14/2018 )
PPTX
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
PDF
MongoDB .local Bengaluru 2019: MongoDB Atlas Data Lake Technical Deep Dive
PDF
MongoDB SoCal 2020: MongoDB Atlas Jump Start
PPTX
Introducing Stitch
PPTX
OpenStack Ottawa Meetup - March 29th 2017
PDF
MySQL on Docker - Containerizing the Dolphin
PDF
Automating and Managing MongoDB: An Analysis of Ops Manager vs. ClusterControl
PDF
Alluxio Innovations for Structured Data
PDF
Alluxio 2 Community Update
PDF
How to scale MongoDB
PDF
MySQL Load Balancers - MaxScale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
PDF
CNCF, State of Serverless & Project Nuclio
PDF
Multiple ways of building hybrid clouds on Kubernetes
Walls Within Walls: What if your attacker knows parkour?
Zenko & MetalK8s @ Dublin Docker Meetup, June 2018
GDG Cloud Southlake #9 Secure Cloud Networking - Beyond Cloud Boundaries
Managing Cloud Security Design and Implementation in a Ransomware World
Apache Spark and Apache Ignite: Where Fast Data Meets the IoT
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
Druid meetup @ Netflix (11/14/2018 )
Distributed Database DevOps Dilemmas? Kubernetes to the Rescue
MongoDB .local Bengaluru 2019: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB SoCal 2020: MongoDB Atlas Jump Start
Introducing Stitch
OpenStack Ottawa Meetup - March 29th 2017
MySQL on Docker - Containerizing the Dolphin
Automating and Managing MongoDB: An Analysis of Ops Manager vs. ClusterControl
Alluxio Innovations for Structured Data
Alluxio 2 Community Update
How to scale MongoDB
MySQL Load Balancers - MaxScale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
CNCF, State of Serverless & Project Nuclio
Multiple ways of building hybrid clouds on Kubernetes
Ad

Similar to Data in a Cloud - Introduction to Qt Cloud Services (20)

PPTX
Deploying windows containers with kubernetes
PDF
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
PPTX
Migrating Apps To Azure
PDF
citus™ iot ecosystem
PDF
A164 enterprise javascript ibm node sdk
PDF
Introduction to Apache NiFi 1.11.4
PDF
Istio Service Mesh
PDF
QNAP NAS for IoT
PDF
Week 4 lecture material cc (1)
PDF
week 4_watermark.pdfffffffffffffffffffff
PPTX
DevCon5 (July 2014) - Acision SDK
PDF
Docker and Cloud - Enables for DevOps - by ACA-IT
PDF
'DOCKER' & CLOUD: ENABLERS For DEVOPS
PDF
.NET Cloud-Native Bootcamp- Los Angeles
PPTX
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
PPTX
Why we need internet of things on Node.js
PPTX
Enabling Microservices Frameworks to Solve Business Problems
PDF
Privacy Preservation in cloud Environment using AES Algorithm
PDF
Irshad Resume
PDF
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
Deploying windows containers with kubernetes
Building a Global-Scale Multi-Tenant Cloud Platform on AWS and Docker: Lesson...
Migrating Apps To Azure
citus™ iot ecosystem
A164 enterprise javascript ibm node sdk
Introduction to Apache NiFi 1.11.4
Istio Service Mesh
QNAP NAS for IoT
Week 4 lecture material cc (1)
week 4_watermark.pdfffffffffffffffffffff
DevCon5 (July 2014) - Acision SDK
Docker and Cloud - Enables for DevOps - by ACA-IT
'DOCKER' & CLOUD: ENABLERS For DEVOPS
.NET Cloud-Native Bootcamp- Los Angeles
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Why we need internet of things on Node.js
Enabling Microservices Frameworks to Solve Business Problems
Privacy Preservation in cloud Environment using AES Algorithm
Irshad Resume
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
Ad

Recently uploaded (20)

PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
STKI Israel Market Study 2025 version august
PPTX
Benefits of Physical activity for teenagers.pptx
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Five Habits of High-Impact Board Members
PPTX
The various Industrial Revolutions .pptx
PDF
CloudStack 4.21: First Look Webinar slides
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PPTX
Tartificialntelligence_presentation.pptx
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Group 1 Presentation -Planning and Decision Making .pptx
O2C Customer Invoices to Receipt V15A.pptx
Getting started with AI Agents and Multi-Agent Systems
Hindi spoken digit analysis for native and non-native speakers
STKI Israel Market Study 2025 version august
Benefits of Physical activity for teenagers.pptx
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
1 - Historical Antecedents, Social Consideration.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
A comparative study of natural language inference in Swahili using monolingua...
sustainability-14-14877-v2.pddhzftheheeeee
WOOl fibre morphology and structure.pdf for textiles
Five Habits of High-Impact Board Members
The various Industrial Revolutions .pptx
CloudStack 4.21: First Look Webinar slides
A contest of sentiment analysis: k-nearest neighbor versus neural network
Tartificialntelligence_presentation.pptx

Data in a Cloud - Introduction to Qt Cloud Services

  • 1. Data in a Cloud
  • 4. Qt Developer Days Mobile App uses EDS as a database
  • 6. What is Qt Cloud Services Enginio Data Storage Storage for Applica/on Data Use with QtEnginio Library Managed Applica3on Run3me Applica/on Pla<orm as a Service Support for Qt/C++, NodeJS, Apache, PHP, MongoDB, MySQL, Redis… Managed WebSocket Real-­‐Time Socket Connec/ons with virtually unlimited scalability Use with SDK’s and Qt WebSocket Client Library
  • 7. Enginio Data Storage (EDS) Flexible and powerful cloud data storage with built-in user and data access control
  • 8. EDS Use Cases • Content storage, sharing and synchronization • User profiles and access control • Remote monitoring and control • Usage Statistics • Client-to-Client Communications • Application settings • N-screen; Embedded, Web, Desktop, Mobiles…
  • 9. How to Use with Qt? QByteArray backendId(EDS_BACKEND_ID); " EnginioClient *client = new EnginioClient; client-­‐>setBackendId(backendId); " QJsonObject object; object["objectType"] = QString::fromUtf8("objects.movies"); object["name"] = QString::fromUtf8("The Matrix"); object["year"] = 1999; // Send the request EnginioReply *reply = client-­‐>create(object);
  • 10. Managed WebSocket (MWS) Fully managed service implementing a bi-directional, real-time communication gateway for WebSockets.
  • 11. Where to use? • Chat applications • Social feeds • Multiplayer games • Collaborative editing • Sport updates • Location based apps • Your killer app
  • 12. How To Use With Qt? WebSocket { id: socket active: true onTextMessageReceived: { handleWebsocketMessage(message) } } // JavaScript var REQUEST_URL = “https://mws-­‐eu-­‐1.qtc.io/v1/gateways/MWS_GATEWAY_ID/websocket_uri” function connectToWebSocket() { var doc = new XMLHttpRequest(); doc.open("GET", REQUEST_URL + "/api/websocket", true); doc.setRequestHeader('Content-­‐Type', 'application/json'); doc.onreadystatechange = function() { if (doc.readyState === 4) { if (doc.status === 200) { var data = JSON.parse(doc.responseText); socket.url = data.uri } } } doc.send() }
  • 13. Managed Application Runtime (MAR) Scalable," Multi-language," Multi-database," Application Platform as a Service
  • 14. MAR Use Cases Internet of Things & Embedded! • Cloud compute, analyze, metrics and data visualization • Remote management, APIs and configuration of ”things” " Websites! • High-traffic campaign & marketing sites • Education, Gaming, Personal… " Customer facing applications! • Online Applications • API’s for web, desktop & mobile
  • 15. What is PaaS? On#Premises# Applica'on* Data* Run'me* Middleware* OS* Virtualiza'on* Servers* Storage* Networking* You*Manage* IaaS$ Applica'on* Data* Run'me* Middleware* OS* Virtualiza'on* Servers* Storage* Networking* Vendor*Provides* You*Manage* PaaS$ Applica'on* Data* Run'me* Middleware* OS* Virtualiza'on* Servers* Storage* Networking* Vendor*Provides* You*Manage* SaaS# Applica'on* Data* Run'me* Middleware* OS* Virtualiza'on* Servers* Storage* Networking* Vendor*Provides* With PaaS, developer can focus just on building great apps. No need to worry about servers, operating system, loadbalancing, network or infrastructure.
  • 16. Managed Application Runtimes How does it work?
  • 17. Supported Frameworks Supported frameworks by 3rd party build packs Scala, Clojure, Play, Gradle, Grails, PHP, Go, Meteorite, Perl, Dart, Nginx, Apache, Jekyll
  • 18. Built-in Services or choose from our cloud based services Enginio Data Storage" Managed WebSocket or choose anything with SDK ... Amazon, Azure, Google ...
  • 19. Developer Friendly Deployment Deploy using Git – the most common VCS among developers > git push qtc master
  • 20. How to Use With Qt? lanevala@it-l-m0015 ~/Development/qtwebsockets-echoserver-example[master*]$ git push qtc master Counting objects: 1, done. Writing objects: 100% (1/1), 186 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) -----> Qt app detected Installing Qt 5.4.0-beta-2014-09-25_25 -----> Setting up Qt 5.4.0-beta-2014-09-25_25 -----> Configuring with qmake -----> Compiling with make g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o main.o main.cpp g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o echoserver.o echoserver.cpp /app/.qtcs/Qt/5.4/gcc_64/bin/moc -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/app/.qtcs/Qt/ 5.4/gcc_64/mkspecs/linux-g++ -I/tmp/build -I/app/.qtcs/Qt/5.4/gcc_64/include -I/app/.qtcs/Qt/5.4/gcc_64/include/ QtWebSockets -I/app/.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I/app/.qtcs/Qt/5.4/gcc_64/include/QtCore echoserver.h -o moc_echoserver.cpp g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB - I.qtcs/Qt/5.4/gcc_64/mkspecs/linux-g++ -I. -I.qtcs/Qt/5.4/gcc_64/include -I.qtcs/Qt/5.4/gcc_64/include/QtWebSockets - I.qtcs/Qt/5.4/gcc_64/include/QtNetwork -I.qtcs/Qt/5.4/gcc_64/include/QtCore -I. -o moc_echoserver.o moc_echoserver.cpp g++ -Wl,-O1 -Wl,-rpath,/app/.qtcs/Qt/5.4/gcc_64 -Wl,-rpath,/app/.qtcs/Qt/5.4/gcc_64/lib -o echoserver main.o echoserver.o moc_echoserver.o -L/app/.qtcs/Qt/5.4/gcc_64/lib -lQt5WebSockets -lQt5Network -lQt5Core -lpthread -----> Discovering process types Procfile declares types -> web -----> Compiled slug size is 108M -----> Deploying app Uploading app container ...... done. mar-eu-1-twwto7g0 deployed to http://mar-eu-1-twwto8g1.qtcloudapp.com
  • 21. CONNECTED Does it echo? Does it echo? Echoserver listening on port 5000 Echoserver got new connection Ping clients 1 Echoserver got new pong Echoserver got new message "Does it echo?"
  • 22. Scalable Architecture Redis MongoDB Your Application Managed Databases Applica3on Instances End Users Configure Deploy Scale With Your Business Git Push API MySQL Environment Variables Load Balancer myawesome.com Scaling
  • 28. Stdout & Stderr Logging
  • 29. Next Steps • For Getting Started! • Go to http://qtcloudservices.com • Sign-up and try yourself • Read our documentation • Give us feedback! • For Serious Development! • Cloud KickStart - tailored training & consulting