Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Service stack all the things

2,130 views

Published on

Slides from the ServiceStack ALL THE THINGS!

Code can be found at https://github.com/cyberzed/ServiceStack_Intro

Published in: Technology
  • Be the first to comment

Service stack all the things

  1. 1. ALL THE THINGS!!!
  2. 2. All the boring stuff you will forget after the slides have passed
  3. 3. • 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
  4. 4. Is it needed? Does it solve anything?
  5. 5. • 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!
  6. 6. • 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
  7. 7. Sit back, grab your coffee…code is imminent
  8. 8. 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
  9. 9. This is where the most wheels are turning in your development
  10. 10. • IService• Service• And a lot more…
  11. 11. • JSON• Xml• JSV• CSV• SOAP • 1.1 • 1.2• Custom
  12. 12. …unless you want to go all JS on me :)
  13. 13. • 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
  14. 14. If you order now you will get … for only $19.99
  15. 15. • OrmLite • Caching • MySQL • Memcached • PostgreSQL • Azure • Sqlite 32 & Sqlite 64 • Protobuf • Firebird • MessagePack • Oracle • Logging• Authentication • NLog • MongoDB • Log4Net • Nhibernate • ELMAH • OpenId • Eventlog • RavenDB • Swagger• Razor
  16. 16. Grab your whiskies and smile
  17. 17. • Fastest JSON serializer• Burning Monk JSON Benchmarks (19/11/2012)
  18. 18. • 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
  19. 19. Well where I am going I don’t need roads!!!
  20. 20. • 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/Comm unity-Resources• Links to InfoQ articles: http://www.servicestack.net/mythz_blog/?p=860
  21. 21. • 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
  22. 22. • Twitter: @cyberzeddk• Blog: http://cyberzed.dk• Email: cyberzed@sleddog.dk• GitHub: http://github.com/cyberzed/Feel free to contact me with any questions

×