Cloud Conf 2017
Last week I have
been at the great yearly appointment here in Turin: Cloud Conf '17. This event, now at its 5th
edition, always gives an overview of on-going projects and
state-of-the-art technologies. But never like this year, the
organizers Gabriele Mittica (@GabrieleMittica) and Walter Dal Mut
(@walterdalmut), with their company Corley Cloud (@CorleyCloud)
succeeded in mixing such a variety of topics for talks, that really
allowed us to touch where technology is and where it is going.
From Microservices to Serverless
For me it was very
interesting to comprehend that few years ago we started massively
splitting architecture of backend applications from legacy servers
into small pieces of microservices communicating via API. Nowadays
the same it's happening with the applications themselves;
the serverless paradigm is changing the overview of application
development in the cloud environment. You now will split an
application into a large number of functions, coping together to
achieve a complete running project, that's serverless.
I have never
understood completely the point, but digging in deep made me realize
that this paradigm it's the new school of writing backend services.
This time you will only have to worry about YOUR functions, not about
the configuration, nor about the architecture, only about the core of
your application.
What's changing with this
kind of programming is that you will end up with a number of
functions triggered by events. Moreover in this event-driven scenario
you'll probably would create functions that are able to consume an
infinite number of request and to produce the same number of output.
So the new style of programming will be event-driven and will produce
an architecture with a pipeline composed of a given number of functions
that are triggered by events in a zero-infrastructure environment,
you will only care about FUNCTIONS, that's finally Serverless.
I admit that even if
really fascinating, these talks advertise Serverless as the key for
the future of Cloud, but I am still a little bit sceptic. I think we
are still at an early stage of this path, I am yet confused of what
will happen when a huge project would be composed of hundreds of
functions and how will I be able to manage them. But I think that
basically we are pioneers, more has to come in the near future.
Amazon Aws vs. Google Cloud Platform
So what's going on is that,
whereas Docker is still the leader in the container field, Amazon AWS
is having an hard time to keep its leadership in Cloud Infrastructure
area. Indeed Google is taking part to the game, and now their offer
is becoming really ccomplete, competitive and similar to Amazon's one. Although
I think that for many of the Google Cloud Platform products they've
just created AWS copycats branded and signed by Google.
In particular the fight is
becoming really thought in the field of Machine Learning and
Artificial Intelligence, where both are investing and deploying
impressive services.
What's next?
Docker
is keeping on providing security as first-class feature of its
products, besides always using certificates and TLS in Swarm, now
with “docker secret”, you can also deal with secrets created and
shared in your cluster.
A company like
Twillio
has given an overview over WebHooks
(Server to Client Communication), and showed a great tool like ngrok,
a project allowing “to expose a local server behind a NAT or
firewall to the internet”, that's a really useful tool for
development and demo purposes.
Amazon highlighted all it's
effort in ServerLess and ML + AI. Concerning Serverless, their AWS Lambda still looks like the state-of-the-art, moreover they
provided a proposal to create a text-file based format for
serverless-based application description, called Serverless Application Model.
However it's impressive how far they
are going with ML and AI. New AWS products has been introduced, like:
- Rekognition: facial-detection and facial-recognition, based on deep-learning analysis
- Polly: text-to-speech
- Lex: creating interacting bot, based on AWS Alexa
The demo proposed for these services
was quite impressive. Starting from images, selfies taken in real
time at the conference, a bot voice explained what it can be seen in
the photo. For example, for the picture of the speaker himself it
said: “it's a men, middle age, he looks happy”; whereas in the case of a picture
of speaker's computer: “it's an electronic device, a computer,
...”.
Google showed how something very
similar can be achieved employing Google Cloud Platform. In
particular they are taking the lead in the field of Machine Learning
with their Open Source Framework called Tensor Flow. Google
also allows to implement Serveless functions using what they call a
FaaS (Function as a Service), Google Functions.
Besides ML, they are keeping on working
hard on BigData, employing their BigTable and BigQuery services, and
allowing to deal easily with products as Apache Spark or Hbase.
The purpose of Google is to enable a
new way of service deployment using a PaaS without worrying of the
IaaS below, and creating a DataFlow Pipeline, something similar to
AWS Cloud Formation, but where each element can be either a Google
Cloud Platform product/service or any other software/services
providing the same features (e.g. Google Pub/Sub vs. RabbitMQ). Thus
allowing to choose whether to rely on Google Cloud Platform or on any
other implementation.
Finally it's time to deal with Machine
Learning, Artificial Intelligence and eventually becoming Serverless!
Comments
Post a Comment