ServiceStack Redis 4.5.0
ServiceStack Redis 4.5.0 | 480 kB
1 framework for all your services and web apps that's intuitive and Easy-to-use! Never read another text-book to learn another heavy .NET framework again! Obscenely fast! Built with only fast, clean, code-first and light-weight parts. Start using .NET's fastest serializers, ORMs, redis and caching libraries! Holistically constructed with remote-service best-practices, designed to reduce artificial complexity. Services are designed for maximum re-use.
A fast, unified and integrated replacement for WCF, WebAPI and MVC
Holistically constructed to reduce artificial complexity. Services are designed for maximum re-use
Develop with idiomatic code-first C#, features naturally bind to and empowers your existing models
POCO models can be used in all libraries as-is - offering un-precedent levels of re-use unseen in .NET
Easy-to-use. Never read another text-book to learn how to use another heavy .NET framework again!
Ultimately behind-the-scenes ServiceStack is just built on top of Raw ASP.NET IHttpHandler's. Existing abstractions and xmlconfig-encumbered legacy ASP.NET providers have been abandoned, in favour of fresh, simple and clean Caching, Session and Authentication providers all based on clean POCOs, supporting multiple back-ends and all working seamlessly with each other. Our best-practices architecture is purposely kept simple, introduces no new concepts or artificial constructs and can all be eloquently captured in the diagram below:
Having all clients share the same interface allow them to be hot-swappable at run-time without code changes and keep them highly testable where the same unit test can also serve as an XML, JSON, JSV, SOAP Integration Test.
By promoting clean (endpoint-ignorant and dependency-free) Service and DTO classes, your web services are instantly re-usable and can be hosted in non-http contexts as well. E.g. The client architecture when one of the built-in MQ Host is enabled:
NET's leading C# client for the Redis NoSQL datastore. Redis is one of the fastest and most feature-rich key-value stores to come from the NoSQL movement. It is similar to memcached but the dataset is not volatile, and values can either be stored in comp-sci data structures including strings lists, sets, sorted sets or hashes.
It includes in-built support for Pub/Sub, Transactions, Pipelining and supports Server-side Lua scripting. Due to its simplicity and performance it's widely used by many of the highly scalable, top Internet companies. more...
SQL Server caching
Azure Blob Storage
Configuration is another area in .NET suffering from over-complication, over-use, tight-coupling and un-necessary friction. Only configurable parts of your app should be exposed in the Web.config, as it is a less capable, less verifiable and more brittle option than configuring deps in code.
This is another point of friction we solve with our impl-agnostic Config API which leverages the human-friendly JSV Format to in maintaining typed values, .NET collections and rich complex object graphs (hydrated into POCOs), inside a single human-friendly appSetting.
The dep-free API decouples the configuration of your dependencies from the Web.config and allows the ideal scenario of being able to specify default values in code, whilst remaining overridable with any Config source, e.g. Web.Config or Generic Dictionary, etc.
Profiling runs at the heart of any high-performance solution which was why the excellent Mini Profiler was ported and built right into ServiceStack. Once enabled, the auto HTML pages of each service will include the Mini Profiler info widget which when expanded provides a detailed summary view highlighting where all the time processing the request was spent.
In addition to viewing the overall time spent on different parts of ServiceStack's request pipeline, you can continue to break them down further with by adding your own custom fine-grained profiling timing blocks.
Thanks to ServiceStack's strongly typed, convention-based, message-based design it's able to infer a greater intelligence of your services which allows it to provide automated generated metadata pages available from the /metadata route.
Metadata pages provide a number of discovery features useful for consumers wanting to explore your API:
List of all visible web services and the endpoints / formats they're accessible on
Links to a detailed page of each format, with example request and responses
Links to SOAP 1.1/1.2 WSDLs
Links to all XSD types for all services
Links to internally available debug metadata info
Links to Client examples and documentation