This document summarizes a presentation about real-time web technologies and WebSockets. The presentation covers topics like polling, Comet, Server-Sent Events, WebSockets protocols and APIs. It also demonstrates using WebSockets in Windows 8, ASP.NET and WCF. Concerns regarding network topology and adoption are discussed. The presentation concludes with references and announcing another session on building modern web sites with ASP.NET, Web API and SignalR.
Moving Beyond Migration: Reinventing Process in the CloudPeter Coffee
Cloud computing should do much more than merely relocate the current delays, risks, and costs of application development. Peter Coffee, former Technology Editor of eWEEK, explores the status and prospects of the multi-product, multi-vendor cloud, where complementary services offer proven development leverage and enable next-generation business processes. Presented to 2010 Convention of Chinese-American Engineers and Scientists Association of Southern California on 24 April in San Gabriel, CA.
In this webinar the CTO and Product Management Director of Service2Media explain about the Service2Media App Lifecycle Platform - M2Active. M2Active is the technique behind the platform: Architecture and Runtimes. This webinar is rather technical and especially interesting for CIO's or app development and IT staff that are interested to use The App Lifecycle Platform to develop portfolio's of core and critical App's.
On August 27th, VMware dropped some big announcements at VMworld 2012 – Specifically around the new vSphere 5.1 changes, and how they’ll impact you. View this presentation where our VMware team takes our customers through these important changes.
Moving Beyond Migration: Reinventing Process in the CloudPeter Coffee
Cloud computing should do much more than merely relocate the current delays, risks, and costs of application development. Peter Coffee, former Technology Editor of eWEEK, explores the status and prospects of the multi-product, multi-vendor cloud, where complementary services offer proven development leverage and enable next-generation business processes. Presented to 2010 Convention of Chinese-American Engineers and Scientists Association of Southern California on 24 April in San Gabriel, CA.
In this webinar the CTO and Product Management Director of Service2Media explain about the Service2Media App Lifecycle Platform - M2Active. M2Active is the technique behind the platform: Architecture and Runtimes. This webinar is rather technical and especially interesting for CIO's or app development and IT staff that are interested to use The App Lifecycle Platform to develop portfolio's of core and critical App's.
On August 27th, VMware dropped some big announcements at VMworld 2012 – Specifically around the new vSphere 5.1 changes, and how they’ll impact you. View this presentation where our VMware team takes our customers through these important changes.
BayThreat Why The Cloud Changes EverythingCloudPassage
Subtitle: How I Learned to Stop Worrying and Get DevOps to Love Security
These slides are from a talk delivered by Rand Wacker at BayThreat 2011.
ABSTRACT: Take a look around, you might be surprised who is running servers in the cloud; you might be even more surprised about what they are running. Unfortunately, these people rarely if ever thought to tell the security teams, and that means big problems for us all. Securing servers in the cloud is different, very different, than in a traditional data center, but all the same risks are there. Lets start by understanding who is using the cloud, why it is so different, and what works and doesn't work from our typical security toolbox. Then lets try to solve some of those problems and come up with some best practices to help us and those we work with do what they need…securely.
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Enea Gabriel
This is a presentation about the new Domain Driven Design architecture in combination with ASP.NET MVC 3 and Entity Framework 4.1 CodeFirst tools.
The session was part of the IT Camp 2011 event (http://www.itcamp.ro).
Building single page, modular html5 applications for PC and MobileLorant Domokos
Web standards are at a point where they push us to consider replacing native client applications
on PCs and Mobile devices. This way we can leverage our previous knowledge, saving us from
building the same applications over and over again on different platforms.
HTML5, CSS3 enables us to create very rich and engaging web applications through animations
and media. But most web applications still require page refreshes when moving from page to page,
causing them to fall short of their native counterparts.
In this session you will learn how to build rich web applications that part from
the traditional page refresh model. You will gain an insight into how to accomplish this
with highly modular JavaScript, CSS and HTML code, both on PC and Mobile devices.
My talk on webRTC from June 2013
Demo application using XMPP for signalling
open source webRTC using websockets is here: implenentationhttps://github.com/pizuricv/webRTC-over-websockets
Large scale, cloud computing and scalability with UmbracoWarren Buckley
Alex Norcliffe from Conde Nast International Digital/Umbraco Core Team and Peter Miller from Conde Nast Digital UK will discuss umbraco on a large scale, cloud computing and scalability.
BayThreat Why The Cloud Changes EverythingCloudPassage
Subtitle: How I Learned to Stop Worrying and Get DevOps to Love Security
These slides are from a talk delivered by Rand Wacker at BayThreat 2011.
ABSTRACT: Take a look around, you might be surprised who is running servers in the cloud; you might be even more surprised about what they are running. Unfortunately, these people rarely if ever thought to tell the security teams, and that means big problems for us all. Securing servers in the cloud is different, very different, than in a traditional data center, but all the same risks are there. Lets start by understanding who is using the cloud, why it is so different, and what works and doesn't work from our typical security toolbox. Then lets try to solve some of those problems and come up with some best practices to help us and those we work with do what they need…securely.
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Enea Gabriel
This is a presentation about the new Domain Driven Design architecture in combination with ASP.NET MVC 3 and Entity Framework 4.1 CodeFirst tools.
The session was part of the IT Camp 2011 event (http://www.itcamp.ro).
Building single page, modular html5 applications for PC and MobileLorant Domokos
Web standards are at a point where they push us to consider replacing native client applications
on PCs and Mobile devices. This way we can leverage our previous knowledge, saving us from
building the same applications over and over again on different platforms.
HTML5, CSS3 enables us to create very rich and engaging web applications through animations
and media. But most web applications still require page refreshes when moving from page to page,
causing them to fall short of their native counterparts.
In this session you will learn how to build rich web applications that part from
the traditional page refresh model. You will gain an insight into how to accomplish this
with highly modular JavaScript, CSS and HTML code, both on PC and Mobile devices.
My talk on webRTC from June 2013
Demo application using XMPP for signalling
open source webRTC using websockets is here: implenentationhttps://github.com/pizuricv/webRTC-over-websockets
Large scale, cloud computing and scalability with UmbracoWarren Buckley
Alex Norcliffe from Conde Nast International Digital/Umbraco Core Team and Peter Miller from Conde Nast Digital UK will discuss umbraco on a large scale, cloud computing and scalability.
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...Brian Pulito
WebRTC is finally cracking the enterprise market. Maturing standards and wider platform adoption are helping WebRTC to find its way into mission critical enterprise applications. Whether it\'s financials like American Express or smaller businesses looking for innovative ways to engage their customers, WebRTC is changing the way business views real-time communications. Conversational media is Big Data to the enterprise and extracting every ounce of insight from every customer interaction requires middleware that plays well with existing Systems of Engagement. Issues like enterprise application integration, federation, analytics and their related security models bring with it requirements that must be well understood to succeed in this market. This session will explore what middleware means to WebRTC and what you need to make it work both in the cloud or on premise.
Things I have noted during the Techday 2011 @ Metropolis Antwerp..
Just my personal thoughts. There will be mistakes, as several things are new for me :-)
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp
Protecting your company's data: by psychologically evaluating potential Espionage and Spy activity
•We talk about protecting data.
•We talk about outside forces seeking to obtain our data by
unconventional means.
•I will speak about PROTECTING or DATA that is stolen from
trusted individuals within.
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp
Microsoft "Automated Machine Learning" (AutoML) is an amazing toolkit now available on Azure that's really starting to ramp up.
In a nutshell, it is an automated service that identifies the best machine learning pipelines for labeled data ... it dramatically frees up time for experienced practitioners and gives a tremendous boost to in productivity engineers at the start of their ML journey.
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp
Understanding skills is key to managing any organisation. Skills are not necessarily related to your job, your qualifications or your studies, they are related to what you can do and the responsibilities you have (or should have) within your organisation. Through a systematic and structured approach to understanding, analysing and classifying skills, the business can become more effective, staff has a better understanding of their roles and responsibilities, there is increased job satisfaction, and clear career and training progression plans can be defined.
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp
Not sure what Cloud DevOps means, or what a DevOps team should focus on? In this presentation you will understand how Governance of IT resources in the Cloud is different than on premises. We will discuss aspects like: resources security, cost monitoring and control, performance optimization and scalability improvements, policies and compliance - all with examples on Microsoft Azure.
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp
Color. It has the power to evoke emotions and empower the effectiveness of a product, but it also has the ability to ruin otherwise meticulously crafted user experiences. It often rules from the shadows, disguised as a purely aesthetic element and a mean of beautification. Let’s see how to overtake control and strategically use color in digital product development.
Product teams often fail to remember that color has an enormous impact on our response to visual stimulation during human-computer interaction. The most immediate and direct psychological impact on experiences is of course - color. With its complexity and various levels of subconscious effects, it triggers an emotional response.
Color doesn’t live in a vacuum, and we need to start considering it in the context of use. There are many aspects that we need to take into account: target audience and their potential visual impairments, cultural background and individual difference, previous experiences and memories, the physical environment of use and compliance with the brand.
In this talk, we will immerse into approaches and best practices that product teams should take for strategic use of color in their product design process. After a basic introduction to color theory and psychology (to make sure everyone is up to speed), we will elaborate in detail how even subtle differences in color schemes have a significant impact on interface perception and product success. We will show a series of interface examples we tested on various users and do some live testing on site as well.
Clean Architecture as a term is around for a while. However, the path to implement it is not always clear nor easy to follow. When projects fail for reasons that are primary technical, the reason is often uncontrolled complexity. The complexity goes out of hand when the code lacks structure, when it lacks Clean Architecture.
In this session, I will show how to achieve consistency by implementing Clean Architecture through structure, rather than relying on discipline only. We will look at some basic building blocks of an application infrastructure which will enforce the way dependencies are created, how dependency injection is used or how separation of the data access concerns is enforced.
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...ITCamp
You played around with containers? You feel you can handle the adrenaline rush of publishing your containers in production? Well hold on there because there are some aspects you need to consider before you start rushing to production. How you will handle auto-scalling? What about updates / upgrades? Downtime of your app? Version 1 and Version 2? CI/CD? Etc.
This session is about deploying your services on containers using the Azure Kubernetes managed offering. You will learn about what problems you might encounter and how to handle them during your deployment journey, and we will cover the main features of Kubernetes and how they can be of use to you
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...ITCamp
After being a 3rd level support guy for 2 years, my code changed in several ways. Why this happened? Is this change good? Should you care about this?
I will tell from experience how my code changed and in what ways so that you can prevent the same mistakes I did and how to make your days better instead of wasting time debugging and trying to understand what happened in production
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp
Let's face it, our world will be taken over by robots, or at least our jobs as the scary ML & AI speculations seem to say. But until that day arrives, I want to take you on a hypothetical journey of designing and creating a fully automated restaurant of the future, where a fine tuned and efficiently orchestrated group of RoboChefs will cook your desired meal perfectly each time. And all of this is possible thanks to Actions, Timers, Monitors, Orchestrators, Sub-Orchestrators and more, all concepts from Azure Durable Functions, the real focus of this session, an extension to Functions that adds state, and which are part of Azure's Serverless Compute technologies.
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp
Azure offers a wide range of services, with which we can build powerful solutions. But how do we know which services to choose, and how to combine them to create even better architectures? In this session, we will take a look at real-life scenarios and how we solved by leveraging the power of Azure.
Blockchain is one of the main legal tech trends today and, like any new technology, comes with strings attached. Issues like enforceability of smart contracts, performance risks, data privacy and compliance with various regulations in different jurisdictions are main legal concerns. The session will focus on the main legal risks by means of case studies and offer a hands-on approach for risk management in case of blockchain and architectures of distributed ledgers.
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp
ML.NET is an open source, machine learning framework built in .NET and runs on Windows, Linux and macOS. It allows developers to integrate custom machine learning into their applications without any prior expertise in developing or tuning machine learning models. Enhance your .NET apps with sentiment analysis, price prediction, fraud detection and more using custom models built with ML.NET
In this Session, Andy will show not only the core of ML.NET but best practices around Azure Data Lake and data in general when using .NET
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp
Andy Cross, Director of Elastacloud, Microsoft Regional Director, Azure MVP and all round good guy, gives a session on how to successfully build or transform a business using AI technologies.
Over the last years, Elastacloud have delivered analytics projects to a variety of customers. The greatest challenges around AI are both technical and organisational. The existing landscape of process and strategy doesn't solve these challenges in combination, and the gap between causes friction and the failure of AI projects.
When modelling the outcome of actions that were informed by AI, possibly enacted by AI, the standard risk modelling approaches need to be transformed to include a factor that can change over time to represent the effectiveness of the AI solutions. Given that we should accept errors as part of the AI solution, and that errors are reinforcing of better future decisions, we need to project risk as a decreasing vector over time.
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp
"App Modernisation" is such a buzzword you might end up thinking there's no such thing. That code just needs to be rewritten every "N" years, that existing apps couldn't take advantage of new platforms, technologies or frameworks. That all the fuss about "goin' cloud" is a fad. Let me tell why you might consider being wrong.
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp
Thanks to the recently released v4 of the Bot Framework SDK, creating your first bot is a breeze; still, implementing a production viable one is no easy task since several aspects must be taken into account such as user authentication, integration within existing apps, multi language support, technical considerations (e.g.: Azure Functions vs. MVC Core, Blob Storage vs. CosmosDB) and, last but not least, operational costs.
Moreover, you might want to reuse your bot’s Azure hosted, Cognitive Services-backed code to address Amazon’s Alexa users to avoid the need to implement (and evolve) it twice.
Eager to learn how to do that for real? Don’t miss this code-based talk then.
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp
'There are multiple ways to skin a cat' says a famous Chinese proverb. However, when it comes to container orchestration in Azure you might feel confused and overwhelmed due to the high number of services and available services.
During this pragmatic session, you get a better understanding of the pros and cons of either choosing Service Fabric or AKS for container orchestration.
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp
You may have heard me talk about the capabilities of Azure Logic Apps and Azure Functions before, but now I'm taking it up a few notches! And this is mostly because a lot of things have changed over the past few months in terms of serverless and cloud-native applications.
Join me at this session during which you will get to do a deep dive with me on the ins and outs of Azure Functions when it comes to developer real applications, not just 'Hello, World's and the brand-new, top-notch Azure Service Fabric Mesh offering.
I will finger point each bad practice and the things you should avoid, but at the end of the day we'll have created a highly scalable, production-ready application. So, how far and how fast can we actually go... now?
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp
Marcus Vitruvius Pollio, commonly known as Vitruvius, was a Roman author, architect, civil engineer and military engineer during the 1st century BC. He is known for his multi-volume work entitled “De architectura” and his discussion of perfect proportion in architecture and the human body, which led, among others to the famous drawing by Leonardo da Vinci called the “Vitruvian Man”.
Within the principles of “Vitruvian Quality”, we seek to find those perfect proportions and how to align all components of the business architecture in order to make them fit the human needs of the impacted stakeholders.
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp
This session might look like a joke, and it partially is.
On one hand it is a parody about how the most recent trends in industry can significantly increase the cost associated with launching an application (design, development, hosting & operations, etc).
However, it is also a live demo of how you can incrementally evolve your application to take advantage of all the cool technologies out there without needing the actual a million dollars.
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp
JavaScript is no longer meant just for front-end or for scripting kiddies to play with. And it's no longer just a language, it's become an entire ecosystem, a lifestyle. However, it has its downsides. And TypeScript is here to fill in some of the gaps.
In this session we will look at how to use TypeScript along with some other technologies to build large scale distributed applications that are Enterprise ready yet Developer friendly.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
1. ITCamp 2012 sponsors Architecture &
Best Practices
@ itcampro # itcamp12 Premium conference on Microsoft technologies
2. Real-time web and
Web Sockets in Windows 8
Florin Cardașim, Endava,
twitter/@cardasim
@ itcampro # itcamp12 Premium conference on Microsoft technologies
3. Agenda Architecture &
Best Practices
Real-time web SSE, WebSockets Q&A
Comet/long polling WebSockets in
ASP.NET and WCF
@ itcampro # itcamp12 Premium conference on Microsoft technologies
4. Real-Time Web Architecture &
Best Practices
• Monitoring/dashboards
• Sensor/RFID Tracking
• Social networking, Instant messaging
• Collaboration tools (Google Docs)
• Online gaming (Quake2 in the browser??!!)
• …
@ itcampro # itcamp12 Premium conference on Microsoft technologies
5. Implementing Real-Time Web Architecture &
Best Practices
• Flash/silverlight/javafx
• Ajax polling
• Comet/long polling/http streaming …
• … other DoS techniques
• Server-sent events
• Web sockets
@ itcampro # itcamp12 Premium conference on Microsoft technologies
6. Polling Architecture &
Best Practices
Browser connect Server
no message
connect
no message
event
connect
event
connect
no message
connect
no message event
connect
event
@ itcampro # itcamp12 Premium conference on Microsoft technologies
7. Architecture &
Polling Best Practices
• No real-time user experience
• Wasted bandwidth, most requests return
no data
• Frequent polling determine high server
loads
@ itcampro # itcamp12 Premium conference on Microsoft technologies
8. Comet/Long Polling Architecture &
Best Practices
Browser Server
connect
wait
event
event
connect
wait
event
event
connect
wait
@ itcampro # itcamp12 Premium conference on Microsoft technologies
9. Comet/Long Polling Architecture &
Best Practices
• Real-time user experience
• High pressure on server memory, bandwidth,
threads/processes
• DEMO
@ itcampro # itcamp12 Premium conference on Microsoft technologies
10. Html5 Server-Sent Events Architecture &
Best Practices
Browser Server
open event stream
<EventSource>
event event
onmessage
event
onmessage event
event
onmessage event
@ itcampro # itcamp12 Premium conference on Microsoft technologies
11. Html5 Server-Sent Events
Architecture &
Best Practices
• Simulates a server push channel over HTTP
• Unidirectional, from server to browser
• Standardizes some form of Comet/HTTP
streaming
• New html tag: <EventSource>
• New mime type: text/event-stream
@ itcampro # itcamp12 Premium conference on Microsoft technologies
12. Html5 WebSocket
Architecture &
Best Practices
GET /text HTTP/1.1
Client/ Host: www.websocket.org Server
Browser Upgrade: WebSocket
Connection: Upgrade ...
HTTP/1.1 101 Switching Protocols
Upgrade: WebSocket
Connection: Upgrade ...
TCP comm channel
Full duplex, bidirectional
@ itcampro # itcamp12 Premium conference on Microsoft technologies
13. Html5 WebSocket
Architecture &
Best Practices
• Full duplex, bidirectional
• Single TCP socket
• Standard ports: http/80, https/443
• In & outside of browser
• Bandwidth savings, enhanced scalability
@ itcampro # itcamp12 Premium conference on Microsoft technologies
14. WebSocket vs Polling Bandwidth
Architecture &
Best Practices
http://websocket.org/quantum.html
@ itcampro # itcamp12 Premium conference on Microsoft technologies
15. WebSocket – The Protocol Architecture &
Best Practices
OpCode (4 bit) Meaning/frame type
0 Continuation
1 Text (UTF-8)
2 Binary
3-7 Reserved for further non-control frames
8 Connection Close
9 Ping
10 Pong
11-15 Reserved for further non-control frames
@ itcampro # itcamp12 Premium conference on Microsoft technologies
16. WebSocket – The Java Script API
Architecture &
Best Practices
@ itcampro # itcamp12 Premium conference on Microsoft technologies
17. Browser Support
Architecture &
Best Practices
@ itcampro # itcamp12 Premium conference on Microsoft technologies
18. Server Side Support Architecture &
Best Practices
• Socket.IO (node.js)
• Atmosphere, Jetty (Java)
• Ruby/EventMachine
• Python/Twisted
• Windows 8, IIS 8, ASP.NET-WCF 4.5
• … others
@ itcampro # itcamp12 Premium conference on Microsoft technologies
19. WebSockets in Windows 8
Architecture &
Best Practices
Your code!
WCF high level
abstractions
ASP.NET high level
WCF WebSocket transport
abstractions
System.Net.WebSockets
ASP.NET HTTP Pipeline
HttpListener IIS (iiswsock.dll)
http.sys
@ itcampro # itcamp12 Premium conference on Microsoft technologies
20. WebSockets in Windows 8 Architecture &
Best Practices
• DEMO
• IE 10
• Windows 8, IIS 8
• ASP.NET 4.5
• WCF 4.5
@ itcampro # itcamp12 Premium conference on Microsoft technologies
21. WebSockets in ASP.NET
Architecture &
Best Practices
Developer “agrees” to upgrade to a WebSocket
connection
HttpContext.Current.AcceptWebSocketRequest(
Func<AspNetWebSocketContext,Task> myWebSocketApp,
AspNetWebSocketOptions optionalSetupInfo
);
Asynchronously receive and send messages
public async Task MyWebSocketApp(AspNetWebSocketContext context)
{
var socket = context.WebSocket;
…
var input = await socket.ReceiveAsync(buffer);
…
await socket.SendAsync(outputBuffer,…params…);
}
@ itcampro # itcamp12 Premium conference on Microsoft technologies
22. WebSockets in WCF Architecture &
Best Practices
• WebSocket transport for WCF
• Traditional WCF running over WebSocket
connections
@ itcampro # itcamp12 Premium conference on Microsoft technologies
23. Concerns – Network Topology Architecture &
Best Practices
• NAT, Firewall
– NOT an issue, standard ports: http/80, https/443
• Proxy (forward, reverse, transparent etc)
– It depends, but generally an issue
– CONNECT (tunnel/SSL)
• Load Balancer
– TCP (Layer-4) – no issue
– HTTP (Layer-7) – may require explicit configuration
@ itcampro # itcamp12 Premium conference on Microsoft technologies
24. Concerns – Adoption Architecture &
Best Practices
• Use frameworks:
– Socket.IO
(node.js)
– Atmosphere
(java)
– SignalR
(.net)
@ itcampro # itcamp12 Premium conference on Microsoft technologies
25. References Architecture &
Best Practices
• http://www.websocket.org
• http://www.kaazing.me
• http://www.buildwindows.com
• http://ww.infoq.com/websocket
• http://socket.io
@ itcampro # itcamp12 Premium conference on Microsoft technologies
26. Other WebSockets sessions @ITCamp Architecture &
Best Practices
• Building modern web sites with ASP .Net
Web API, WebSockets and SignalR
– 14:45
– Alessandro Pilotti
@ itcampro # itcamp12 Premium conference on Microsoft technologies
27. Q&A
How will WebSocket impact the
existing WEB programming?
@ itcampro # itcamp12 Premium conference on Microsoft technologies
28. I’d love to hear you feedback –
please fill the evaluation forms
Thank you!
Florin Cardașim, Endava,
twitter/@cardasim
@ itcampro # itcamp12 Premium conference on Microsoft technologies