service stack all the things

27
ServiceStack ALL THE THINGS!!!

Upload: cyberzeddk

Post on 11-May-2015

1.566 views

Category:

Technology


2 download

DESCRIPTION

Slides from the ServiceStack ALL THE THINGS! Code can be found at https://github.com/cyberzed/ServiceStack_Intro

TRANSCRIPT

Page 1: Service stack all the things

ServiceStackALL THE THINGS!!!

Page 2: Service stack all the things

All the boring stuff you will forget after the slides have passed

Who, where, what?

Page 3: Service stack all the things

Why am I here…• Stefan Daugaard Poulsen• @cyberzeddk• AP in Computer Science• Developer/Architect at Atea Denmark• Currently working on Atea Tele

• .NET developer since 2002• Silverlight developer back in 2011 with high use of

WCF• “Caught” in a discussion about webservices in

November 2011• Got annoyed by RPC style, code-gen webservices

Page 4: Service stack all the things
Page 5: Service stack all the things
Page 6: Service stack all the things

Is it needed? Does it solve anything?

Why is ServiceStack interresting?

Page 7: Service stack all the things

What are bad ideas for webservices• Code-gen• It fails…too often

• Archaic Xml configuration• Distribution, misspelling…or even horrible merges

• Defaults that is bound to make you cry• Why do I need to set values that should be default!

• Fixed serialization• Could be nice to talk to more systems no matter who they are

• RPC style services• Maintenance hell

• Chatty services• Bulk it!

Page 8: Service stack all the things
Page 9: Service stack all the things

What is this ServiceStack thing• Official subtitle:• Web Services done right, REST services done easy :)

• Simple and model-driven• Endpoint ignorant• Authentication built-in• IoC based• Easy access to HTTP• Fast as lightning• Cross platform• Extendable• Oh!... And clients are in the box

Page 10: Service stack all the things

Sit back, grab your coffee…code is imminent

This is where all the blah blah stops

Page 11: Service stack all the things

Unboxing from NuGet

Currently• ServiceStack• ServiceStack.Text (Serializers: JSON, JSV, CSV)• ServiceStack.Common• ServiceStack.Redis (Fastest Redis client)• ServiceStack.OrmList.SqlServer (Micro ORM, POCO based

ofcourse)

My wishlist:• ServiceStack• ServiceStack.Text• ServiceStack.Common

Page 12: Service stack all the things

This is where the most wheels are turning in your development

Seen from the serverside

Page 13: Service stack all the things

Gentlemen, start your engines…• IService• Service• And a lot more…

Page 14: Service stack all the things

Endpoint ignorant• JSON• Xml• JSV• CSV• SOAP• 1.1• 1.2

• Custom

Page 15: Service stack all the things

…unless you want to go all JS on me :)

Welcome to the clientside

Page 16: Service stack all the things

Clients• Client interfaces• IServiceClient• IRestClient• IRestClientAsync

• Implementations• Soap11ServiceClient (only for IServiceClient)• Soap12ServiceClient (only for IServiceClient)• JsonServiceClient(Async)• JsvServiceClient(Async)• XmlServiceClient(Async)

• Or you can hookup to the XSDs or WSDLs as well• Might be handy when delivering services to external

partners

Page 17: Service stack all the things

If you order now you will get … for only $19.99

But that’s not all kids…

Page 18: Service stack all the things

It’s a freaking swiss army knife!!!• OrmLite• MySQL• PostgreSQL• Sqlite 32 & Sqlite 64• Firebird• Oracle

• Authentication• MongoDB• Nhibernate• OpenId• RavenDB

• Razor

• Caching• Memcached• Azure

• Protobuf• MessagePack• Logging• NLog• Log4Net• ELMAH• Eventlog

• Swagger

Page 19: Service stack all the things
Page 20: Service stack all the things

Show off time…Grab your whiskies and smile

Page 21: Service stack all the things

I’m in the need for speed!• Fastest JSON serializer• Burning Monk JSON Benchmarks (19/11/2012)

Page 22: Service stack all the things

Crossplatform• Supports ASP.NET and HttpListener hosts• Runs on Windows with .NET 3.5 and 4.0• IIS 5/6/7 (uses IHttpHandler)• VS.NET WebDev Server (Cassini)• IIS Express• Console App, Windows Gui, Windows Service

• Linux/OSX with Mono• Apache + mod_mono• Nginx + MonoFastCGI• XSP• Console App

• A demo have been done inside iOS with MonoTouch

Page 23: Service stack all the things
Page 24: Service stack all the things

Where do we go next?Well where I am going I don’t need roads!!!

Page 25: Service stack all the things

Where is it hidden?• Source: https://github.com/ServiceStack• Wiki:

https://github.com/ServiceStack/ServiceStack/wiki• More docs: http://www.servicestack.net/docs/

• Community resources: https://github.com/ServiceStack/ServiceStack/wiki/Community-Resources

• Links to InfoQ articles: http://www.servicestack.net/mythz_blog/?p=860

Page 26: Service stack all the things

Who’s behind this thing…and do I dare use it for production

• Main contributor: Demis Bellot (@demisbellot)• Currently creating awesomeness at StackExchange

• It’s been around for a while• First commit Dec 21, 2008• It is well maintained• Currently at version 3.9.37• Jun 6 2012 – 3.9.2• Jan 8 2012 – 3.2.0• Jun 11 2011 – 2.2.0

Page 27: Service stack all the things

That’s all folks• Twitter: @cyberzeddk• Blog: http://cyberzed.dk• Email: [email protected]• GitHub: http://github.com/cyberzed/

Feel free to contact me with any questions