Could really optimize your indexing columns so that you
Understand things like indexing, relational world we have to because to do this in the
Also querying is really simple been easier.
Objects to a database has never so really, persisting your
And off you go. The image is the actual object
Id. Database, give it a collection just create it, point to the
Document. Create document, an object is a just call a one liner api.
To do crud like this, you simply to focus on.
So this is the focal line i want >> really simple.
>> There you go right there. It got refactorred again.
Where do i want to go? this is the initialization.
Database. Is write to the cosmos db
Images, what we're going to do that we care about, the list of
Basically query for the data bigger, after we go ahead and
Let's make it a little bit and in this instance right here,
Time. Which is a topic for another
And we're using user secrets using a connection string.
Connect to the database, just here, all we're going to do is
That we wrote, which is right float over to the service class
Have in our apps and then if we the kind of objects we might
That's a simplistic example of an auto trace.
That helps us have telemetry and that's additional information
Who uploaded it. Uploaded and
Did this thing get i want to know the path, when
I have a little metadata. Not only die have an image, but
Your domain. Or the objects that look like
Just stick with the poco objects so i mentioned that really you
Confused. Last nate so i'd be totally
Looks like he refactorred it >> andrew is an overachiever so
>> It's down. Class? >> how about the actual image
Az storage service. >> It's going to be sterve sees,
Put our images. And andrew, remind me where we objects. Really handy for our domain
So i mentioned that this is so let's look at code.
Over. Why don't we pop
So i'll show that one. Tables. Still using the familiar api
Characteristics of cosmos db, massive scale kind of
The better globally distributed top of cosmos, so you can get
Replatformed that framework on azure storage table, we
These different choices, even api with gremlin, you've got all
With sql or mongo db or graph db speaks so if you're familiar
Different languages that cosmos there's almost a number of
That. Write them off so i really love that look like your business and
Objects that look like your app, can just work straight with your
It's kind of thankless so you it's really a lot of work and
That's a good technology but that? entity framework, things like
Mapping? object relational who's spent a lot of time doing
Out. Database and query them right
You write them straight to the objects, java objects whatever,
Whether they're ordinary poco continue working with objects,
What's really cool is you just focus of your application.
Domain objects, whatever is the think of business objects,
Objects. For what i think of as domain
Database, and it's really great it's a modern object store
Fourth service is cosmos db. What we'd recommend for the databases. Now is let's think about
So what i want to pop over to kind of stuff.
Soft delete snap shots, that it. That there's no risk of deleting
You can archive your data so safety features.
>> There's a lot of built in almost zero.
In storage won't be available is two positions the odds something
If you geo replicate storage to different region.
Automatically pulls it from a minutes, geo replication
Is unavailable for a few that a particular azure region
Unavailable, in the rare event storage will never be
It effectively guarantees your mentioning is if you turn it on
Replication that's worth one of the cool things about geo
Box. >> Automatic, there's a check really hard job to do yourself.
Automatically geo replicates, a if we hit on it, it
Really cool thing about storage there's other notable mentions.
Objects or files. Blob storage, attps addressable,
File system, in that case use we've already written to the
You have to write to stuff. Storage is like air. Storage.
Holding it all together is functions and the glue you had
Service, a back end worker using showed a front end using app
What happened there, andrew all right, so just to capstone
All right, so... About the same.
Am but other than that, it's he's just a little taller than i
>> Nice. To my twin brother. And with that i'll turn it over
Button and enable autoscaling option you can just click one
Slider too, or there's the other if you want them to slide the
>> Sure you can put in a request way? that or do i have to do it this
I.T. People so can i still do >> i like putting in requests to
Service. You might graduate past app
To go beyond that, i mentioned the limit is 10, so if you need
Virtual machines that i want. The number of instances of my
Drag a slider, i can increase application might get busy i can
>> So if i decided the scale-up is better hardware.
Instances, more nodes. >> Yeah, scale-out is like more
Right? is -- scale-out is what i want,
Scale-up, this go down here to
Portal, the blade, and so if i april service so this is the
That we have available in azure some really great functionality
And once i'm there, i mentioned running into azure app service,
From my local machine up and that web gallery application
Minute and 30 seconds to have probably about a minute to a
Norm network not at a conference azure, and it would take me on a
Let me publish this up into give me an experience that will
And visual studio is going to i would say, publish.
This. I would simply right-click on public url we have up in azure,
The sake of time, here's the that's already up in azure for
Web gallery portion of this move my core image gallery, the
Service and azure functions to for working with azure app
Class support in visual studio so i mentioned we have first
Second function has executed. >> That's correct and boom my
Any time. Asynchronous, so it could happen
>> It's all kind of this will finish executing.
Continue. Let me go ahead and hit clean up my original image.
Then it's going to go back and changes to that container, and
Driven, is going to look for studio, again this is all event
So my second function in visual container. Is my watermark blob storage
Into my second container, which i was, it's going to write this
Executing, if i can find where current function, finishes
This will look for the, so in my image. Function app, delete original
Together so if i look at my show how i can chain these
There's a second function so to been queued off of.
Storage queue and that event has i wrote directly into the
To it at all. My web application didn't talk
There was no tricks. Development. So i'm doing local event driven
Point is going to hit. And my azure function break
That my event is going to fire, expect within a few seconds,
I'll click "open," and then i'd so let's go ahead and do this.
Perfect. Your pictures folder, paul? browse for a file, so is it in
Files, it's going to let me and so when i click upload
Working with azure storage. Storage explorer, great for
>> So there is a developer tool, version of that. This is like the modern cloud
Like that? app that uses msmq, something
>> Anybody written a service or storage explorer.
I'll upload an image using show i'm not doing any tricks
Instead of using the portal to studio.
Application type in visual there's a first class here up debugging.
I already have my azure function to my azure function at all.
May web application doesn't talk new container, and so the event,
Watermarking, write that into a pick that up, actually do the
Have an azure function that will object storage account and i
A blob estorage binary large upload, it will write that into
The upload, it gives me an that application is when i click
So how we've chosen to build right down here.
You might be able to see it watermark into it.
Then it writes a little lets a user upload an image and
So what it lets a user do is it gallery application.
Web application that is a photo >> have written a very simple
>> I got. So paul and i --
Function -- azure functions. Ads
Let's jump into a brief demo of >> that is correct so with that
Have always been. Manage services in paas should >> it's almost the way they
Down. Up, how many instances to spin are, how many instances to spin
The server decides how busy they simply say: here's my code and
In serverless computing you resources you reserve for that.
You'll pay a fee for how many how much ram do you want?
How many cores do you want? how much should azure reserve?
Your application? many resources do you want for ago, you still, we ask you: how
Service we looked at a minute anywhere else in azure, even app
Means you don't think about, so serverless is the terminology
So it's serverless. Minute. Sample of this here in one
Night so we'll look at a brief and event driven and verify
Execution and it's low volume so if you're paying for
>> Correct. App. That's when you look at an api
Ct-that's incredibly chatty.
That will take in memory snap
Shots, say, them off for you and you go debug the snapshot
Instead of debugging prod. Because that's an occupational
Hazard to do that, as it turns out. >> It is.
>> Let's see what app insights did.
So honest to goodness, all we did is use standard iloger or
Siri log or log for net. We enabled app insights and now
Look at the kind of things we're getting. So we could go to this application map.
And without writing any code or spending any time in visio, it
Actually auto detects all the tiers and components of our
Application, so we could see that image gallery web front end
Is getting a lot of the traffic, and there's a richt some errors
Going to our azure blob. I should check that out.
We could also see that the function that andrew worked on
Is hanging out there, and that one is actually a little more healthy.
Now, so that gives us kind of an overview of what's running.
Now i want to look at things like failures and i can see that
App insights will use this telemetry to kind of build up
Intelligence and actually tell me what may top three exceptions
Dependency failures or response codes are.
You can use this query language we have called analytics, which
We'll go ahead and give you more control.
I've been throttled all day, because it looks like to azure
It looks like i'm doss attacking it with our demos so you can
See actually no reference exceptions, blob, and even 500s
In the correlation between it is something we can easily get from here.
This is a topic that's much longer and i actually have a 75
Minute talk just to go through this at 3:00.
So if you're interested in this, go ahead and check it out. >> Awesome.
Thanks, paul. So hopefully this was a good
Whistle weather. Check out the diagnostics talk paul has.
Slides are available if you want to download them.
We have honorable mentions for services we couldn't talk about
And thank you very much for attending. >> Thank you. [ Applause ]