Signalr – Real-Time Application Development Second Edition Table of Contents

Signalr – Real-Time Application Development Second Edition Table of Contents

SignalR – Real-time Application Development Second Edition Table of Contents SignalR – Real-time Application Development Second Edition Credits About the Author Acknowledgments About the Reviewers www.PacktPub.com Support files, eBooks, discount offers, and more Why subscribe? Free access for Packt account holders Preface The emperor’s new clothes The good old terminal X Server Remote desktop Rich clients The Web Full duplex on the Web Events Comet Hand-rolling it all Why? Now what? Think different Personal style What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support Downloading the example code Errata Piracy Questions 1. The Primer Where are we coming from? The terminal Fast forwarding Completing the circle SignalR Terminology Messaging Publish/subscribe Decoupling Patterns Model View Controller Model View ViewModel Libraries and frameworks jQuery ASP.NET MVC 5 AngularJS Twitter Bootstrap Tools Visual Studio 2013 NuGet Summary 2. Persistent Connections Persistent connections – what are they? Where are we going? Getting the project ready Setting up the packages The single page application The “code-behind” Getting started with the server-side Connecting the dots Making the UI light up Summary 3. Hubs Moving up a level The client Decoupling it all The Dependency Inversion Principle Proxies Life cycle events Separation Summary 4. Groups Getting specific with groups Composing the UI Summary 5. State Becoming stateful The client Lifetime event handlers and more Summary 6. Security Locking things down Putting the infrastructure in place HTTP handler config Authentication Securing the hub The great finale Summary 7. Scaling Out It’s all about messages in SignalR Scaling out with SQL Server Scaling out with Redis Scaling out with Azure Creating our own backplane Hooking it all up Summary 8. Building a WPF .NET Client Decoupling it all Decoupling – the next level Building for the desktop Setting up the packages Observables Adding security Adding support for cookies Binding helper Creating a client security service Adding a login view The hub proxy Our chat rooms The chat The composition Summary 9. Write Once, Deploy Many Cross platform Getting started Code signing Preparing for connections Packages MVVM Messenger DelegateCommand Security ChatHub Login ChatRooms Chat The result Summary 10. Monitoring Logging Logging on the server side Logging in the JavaScript client Logging in the .NET client Logging from the Xamarin client Digging deeper into the communication Looking under the cover with Fiddler Performance counters Under the cover, inside the browser Summary 11. Hosting a Server Using Self-hosted OWIN Self-hosting Adding the needed packages Adding the code needed for self-hosting The client Summary Index SignalR – Real-time Application Development Second Edition SignalR – Real-time Application Development Second Edition Copyright © 2015 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: June 2013 Second edition: September 2015 Production reference: 1240915 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-78528-545-5 www.packtpub.com Credits Author Einar Ingebrigtsen Reviewers Niclas Sahlin Najam Uddin Commissioning Editor Dipika Gaonkar Acquisition Editors Vinay Argekar Sam Wood Content Development Editor Rashmi Suvarna Technical Editor Madhunikita Sunil Chindarkar Copy Editor Trishya Hajare Project Coordinator Judie Jose Proofreader Safis Editing Indexer Priya Sane Production Coordinator Nitesh Thakur Cover Work Nitesh Thakur About the Author Einar Ingebrigtsen has been working professionally with software since 1994—ranging from games development on platforms such as PlayStation, Xbox, and the PC to the enterprise line of business application development since 2002. He has always focused on creating great products with great user experiences, putting the user first. Einar was a Microsoft MVP awardee from October 2008 until July 2015, which he was awarded for his work in the community and in the Silverlight space with open source projects such as Balder, a 3D engine for Silverlight. For years, Einar ran a company called Dolittle together with partners, doing consultancy work and building their own products with their own open source projects at the heart of what they did. Amongst the clients that Dolittle has had over the last couple of years include NRK (the largest TV broadcaster in Norway), Statoil (a Norwegian oil company), Komplett (the largest e-commerce company in Norway), and Holte (a leading Norwegian developer for construction software). Today, Einar works for Microsoft as a technical evangelist, focusing on Azure and advising ISVs, which meant giving up the MVP title. A strong believer in open source, he runs a few projects in addition to Balder, the largest being Bifrost (http://bifr.st), a line of business platforms for .NET developers, and also worth mentioning is Forseti (http://github.com/dolittle/forseti), a headless auto-running JavaScript test runner. Additionally, Einar loves talking at user groups and conferences and has been a frequent speaker at Microsoft venues, talking about different topics—the last couple of years he has mostly focused on architecture, code quality, and cloud computing. His personal blog is at http://www.ingebrigtsen.info. Einar has also published another book on the subject of SignalR Blueprints, by Packt Publishing. Acknowledgments It might sound like a cliché, but seriously, without my wife Anne Grethe this book could not have happened. Her patience with me and her support is truly what pretty much makes just about anything I do turn into a reality. To my kids, Mia and Herman, you rock! Thanks to my kids for keeping me mentally younger and playful. I’d also like to thank my colleagues, who have been kind enough to not point out that I’ve had too much going on in the period of writing this book. I’ll be sure to buy a round the next time we’re having a company get-together. About the Reviewers Niclas Sahlin works as a software developer in Gothenburg, Sweden. After graduating from Chalmers University of Technology with a degree in software engineering in 2012, he started working full-time with ASP.NET, and has not turned his back on it since. His first contact with ASP.NET was during his studies at Chalmers. He used it in various projects in his spare time and soon took interest in the frontend side of web development. During the development of a game together with two friends, he discovered SignalR and the capabilities the library provided, and he has used it for many projects since then. You can find Niclas on Twitter as @niclassahlin or visit his blog at www.niclassahlin.com to learn more about him and what he does. Najam Uddin specializes in designing and creating secure and scalable solutions. With over 10 years of experience in software design, development, and support, he has engineered strong, data-driven web applications and services for the banking and finance, oil and gas, and insurance industries. He is mainly focused on the Microsoft technology stack. He has a master of science degree from Birla Institute of Technology and Science, Pilani. You can contact him at <[email protected]>. www.PacktPub.com Support files, eBooks, discount offers, and more For support files and downloads related to your book, please visit www.PacktPub.com. Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at <[email protected]> for more details. At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks. https://www2.packtpub.com/books/subscription/packtlib Do you need instant solutions to your IT questions? PacktLib is Packt’s online digital book library. Here, you can search, access, and read Packt’s entire library of books. Why subscribe? Fully searchable across every book published by Packt Copy and paste, print, and bookmark content On demand and accessible via a web browser Free access for Packt account holders If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view 9 entirely free books. Simply use your login credentials for immediate access. Preface This preface gives you a look at what this book consists of, conventions and details about downloading, and more. In addition, it establishes a common understanding, setting

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    338 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us