This document discusses how web performance impacts business metrics and provides recommendations for optimization. It begins by showing how small improvements in page load time (e.g. from 6 seconds to 1.2 seconds) led to large increases in revenue and traffic for Shopzilla. Similarly, Amazon saw a 1% drop in sales for every 100ms increase in latency. The document then examines factors that impact web performance like DNS lookups, connections, wait times, and loading content. It provides tips for optimization like reducing payload sizes and leveraging caching. Throughout, it emphasizes the importance of monitoring and troubleshooting performance issues.
The ASP.NET Exception Reporter is an exception handling and reporting tool developed by Orbit One. It is based on the ELMAH open source project and adds rich reporting and notification possibilities as well as strong exception aggregation and classification. The application is open source and can be found on http://aspexceptionreporter.codeplex.com/
Managing and Monitoring Application PerformanceSebastian Marek
Writing your application is one thing. Making the application to perform well is another. We usually forget there is somebody else on the other side of the screen, that becomes very frustrated and upset when he needs to wait until this one page finally loads. It requires a lot of experience to predict specific behaviour and to know what kind of things to avoid. And even with that there is so many different factors that can affect the end user experience. During this talk I will talk about tools and techniques you can use to measure and monitor your application performance.
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San FranciscoAlessandro Nadalin
The HTTP protocol has been there for more than 20 years, almost untouched, but the current needs of the web are pushing towards adding some spices into the mix.
In this talk we will have a brief look at the history of HTTP, what SPDY - the "new" protocol proposed by google - brings into the table and how HTTP/2.0 will look like.
The ASP.NET Exception Reporter is an exception handling and reporting tool developed by Orbit One. It is based on the ELMAH open source project and adds rich reporting and notification possibilities as well as strong exception aggregation and classification. The application is open source and can be found on http://aspexceptionreporter.codeplex.com/
Managing and Monitoring Application PerformanceSebastian Marek
Writing your application is one thing. Making the application to perform well is another. We usually forget there is somebody else on the other side of the screen, that becomes very frustrated and upset when he needs to wait until this one page finally loads. It requires a lot of experience to predict specific behaviour and to know what kind of things to avoid. And even with that there is so many different factors that can affect the end user experience. During this talk I will talk about tools and techniques you can use to measure and monitor your application performance.
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San FranciscoAlessandro Nadalin
The HTTP protocol has been there for more than 20 years, almost untouched, but the current needs of the web are pushing towards adding some spices into the mix.
In this talk we will have a brief look at the history of HTTP, what SPDY - the "new" protocol proposed by google - brings into the table and how HTTP/2.0 will look like.
Catastrohpic out-of-pocket payment for health care and its impact on househol...Jeff Knezovich
Henry Lucas presents briefly on findings from a study on catastrophic out-of-pocket payments for health care in West Bengal, India at the 2011 iHEA conference in Toronto, Canada.
Praekelt Foundation released the results of a groundbreaking Youth Sex Survey, conducted on its YoungAfricaLive mobile platform, that gives fascinating insight into the sexual behaviour and beliefs of South Africa's youth.
Catastrohpic out-of-pocket payment for health care and its impact on househol...Jeff Knezovich
Henry Lucas presents briefly on findings from a study on catastrophic out-of-pocket payments for health care in West Bengal, India at the 2011 iHEA conference in Toronto, Canada.
Praekelt Foundation released the results of a groundbreaking Youth Sex Survey, conducted on its YoungAfricaLive mobile platform, that gives fascinating insight into the sexual behaviour and beliefs of South Africa's youth.
CSE422 Section 002 – Computer Networking Fall 2018 Ho.docxmydrynan
CSE422 Section 002 – Computer Networking
Fall 2018
Homework 2 – 50 points
Sockets (10 points)
1. For a client-server application over TCP, why must the server program be executed before the
client program?
2. For a client-server application over UDP, why may the client program be executed before the
server program?
3. The UDP server shown in the course slides needed only one socket, whereas the TCP server
needed two sockets. Why?
4. If the TCP server were to support N simultaneous connections, each from a different client host,
how may sockets would the TCP server need?
5. You are creating an event logging service that will be handling event messages from multiple
remote clients. This service can suffer delays in message delivery and even the loss of some
event messages. Would you implement this using TCP or UDP? Why?
The HTTP GET message (10 Points)
Consider the figure below, where a client is sending an HTTP GET message to a web server,
gaia.cs.umass.edu.
Suppose the client-to-server HTTP GET message is the following:
GET /kurose_ross/interactive/quotation1.htm HTTP/1.1
Host: gaia.cs.umass.edu
Accept: text/plain, text/html, image/gif, image/jpeg, audio/basic,
audio/vnf.wave, video/mp4, video/wmv, application/*, */*
Accept-Language: en-us, en-gb;q=0.5, en;q=0.1, fr, fr-ch, zh, cs
If-Modified-Since: Wed, 10 Jan 2018 13:13:03 -0800
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML,
like Gecko) Chrome/17.0.963.56 Safari/535.11
Answer the following questions:
1. What is the name of the file that is being retrieved in this GET message?
2. What version of HTTP is the client running?
CSE422 Section 002 – Computer Networking
Fall 2018
3. What formats of text, images, audio, and video does the client browser prefer to receive?
[Note: for this and the following questions on browser media and language preferences, you
will need to do a bit of additional reading on the Web. Here is a good place to start.]
4. What do the strings "application/*" and "*/*" signify in the Accept: header?
5. What languages is the browser indicating that it is willing to accept? [Note: you can look at
your own browser preferences to get a listing of language codes.]
6. What is the meaning of the "relative quality factor," q, associated with the various version of
English? [Note: Here is a good place to start. See also [RFC 2616].]
7. What is the client's preferred version of English? What is the browser's least preferred
version of English?
8. Does the browser sending the HTTP message prefer Swiss French over traditional French?
Explain.
9. Does the client already have a (possibly out-of-date) copy of the requested file? Explain. If
so, approximately how long ago did the client receive the file, assuming the GET request has
just been issued?
10. What is the type of client browser and the client's operating system? [Note: To answer this,
you'll need to understan.
an overview from the HTTP2 protocol including comparison with previous version, a deeper look over the protocol enhancements, compatibility matrix with the internet ecosystem and set of online demos that can show the performance optimization.
Presentation on Application layer_201.pdfprince2412001
A Network application is an application running on one host and provides a
communication to another application running on a different host.
▪ A network application development is writing programs that run on different
end systems and communicate with each other over the network.
▪ In the Web application there are two different programs that communicate with each other:
✔ Browser program running in the user's host.
✔ Web server program running in the Web server host.
Host
Host
2
Network Applications - Examples
▪ Email
▪ Web
▪ Remote Login
▪ P2P File Sharing
▪ Multi-user Network Games
▪ Streaming Stored Video (YouTube)
▪ Voice Over IP (Skype)
▪ Real-time Video Conference
▪ Social Networking
3
Network Application Architecture
1. Client-Server architecture
2. P2P (Peer to Peer) architecture
4
1. Client-Server Architecture
Client
Server:
✔ Its always-on host.
✔ It has a fixed IP address.
✔ Large cluster of host – Data Centers.
✔ E.g. Web Server
Client:
✔ It communicate with server.
✔ Its not like continuously connected.
✔ May have dynamic IP addresses.
✔ Do not communicate directly with each other.
✔ E.g. PCs, Mobiles
Server
5
2. P2P Architecture
Peer
▪ Peers (end systems) directly communicate.
▪ Get peers request service from other peers, provide service to other peers.
✔ Self Scalability – New peers bring new service capacity, as well as new service demands.
▪ Peers are alternatingly connected and change IP addresses.
✔ Complex management 6
Peer
Peer
Process Communicating
▪ What is Process?
▪ A process is an instance of a program running in a computer.
▪ We can say that process is program under execution.
▪ Within same host, two processes communicate using inter-process communication (IPC).
▪ Process in different hosts communicate by exchanging messages.
▪ Client process: A process that initiates communication.
▪ Server process: A process that waits to be contacted.
Process P1
Process P2
7
Socket
▪ A process sends messages into, and receives messages from; the
network through a software interface called a socket.
▪ A process is similar to a house and its socket is similar to its door.
✔ Sending process passes message out door.
✔ Sending process relies on transport infrastructure on other side of door to deliver message to socket at receiving process.
Process
application
proce ss
transport
network
link
physical
application
proce ss
transport
network
link
physical
socket
controlled by app developer
controlled
by OS
Internet
Socket
8
Transport Services to Applications
▪ Recall that a socket is the interface between the application process and the transport layer protocol.
▪ For develop an application, choose available transport layer protocol.
▪ Pick the protocol with the services that best match the needs of your application.
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.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
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/
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.
11. Web Performance Monitoring Synthetic: simulates End User activity Measures the end to end transaction Continuous, 24x7 Detect anomalies Track performance metrics over time Measures every component
13. Simple HTTP Transaction DNS Lookup: The client tries to resolve the domain name for the request. Client sends DNS Query to local ISP DNS server. DNS server responds with the IP address for hostname.com Connect: Client establishes TCP connection with the IP address of hostname.com Client sends SYN packet. Web server sends SYN-ACK packet. Client answers with ACK packet, concluding the three-way TCP connection establishment. Send: Client sends the HTTP request to the web server. Wait: Client waits for the server to respond to the request. Web server processes the request, finds the resource, and sends the response to the Client. Client receives the first byte of the first packet from the web server, which contains the HTTP Response headers and content. Load: Client loads the content of the response. Web server sends second TCP segment with the PSH flag set. Client sends ACK. (Client sends ACK every two segments it receives. from the host) Web server sends third TCP segment with HTTP_Continue. Close: Client sends a a FIN packet to close the TCP connection.
22. Connect DNS Lookup: The client tries to resolve the domain name for the request. Client sends DNS Query to local ISP DNS server. DNS server responds with the IP address for hostname.com Connect: Client establishes TCP connection with the IP address of hostname.com Client sends SYN packet. Web server sends SYN-ACK packet. Client answers with ACK packet, concluding the three-way TCP connection establishment. Send: Client sends the HTTP request to the web server. Wait: Client waits for the server to respond to the request. Web server processes the request, finds the resource, and sends the response to the Client. Client receives the first byte of the first packet from the web server, which contains the HTTP Response headers and content. Load: Client loads the content of the response. Web server sends second TCP segment with the PSH flag set. Client sends ACK. (Client sends ACK every two segments it receives. from the host) Web server sends third TCP segment with HTTP_Continue. Close: Client sends a a FIN packet to close the TCP connection.
23. Connect What impacts Connect times? Packet loss / network stability Latency Routers Load Balancers Network Cards Server Load Common issues: Bad configuration of Load Balancers, Routers, Switches and the NIC cards! Latency/Packet Loss/Link speed TCP offloading Capacity
26. Wait DNS Lookup: The client tries to resolve the domain name for the request. Client sends DNS Query to local ISP DNS server. DNS server responds with the IP address for hostname.com Connect: Client establishes TCP connection with the IP address of hostname.com Client sends SYN packet. Web server sends SYN-ACK packet. Client answers with ACK packet, concluding the three-way TCP connection establishment. Send: Client sends the HTTP request to the web server. Wait: Client waits for the server to respond to the request. Web server processes the request, finds the resource, and sends the response to the Client. Client receives the first byte of the first packet from the web server, which contains the HTTP Response headers and content. Load: Client loads the content of the response. Web server sends second TCP segment with the PSH flag set. Client sends ACK. (Client sends ACK every two segments it receives. from the host) Web server sends third TCP segment with HTTP_Continue. Close: Client sends a a FIN packet to close the TCP connection.
27. Wait What impacts Wait times? Network factors The Application code The Application Load / Capacity Any other dependencies (database lookups, other servers, apis…) Common issues: Application Load - Profile your capacity / perform load testing Database utilization, locks…, Memory Leaks, Bugs…
31. Load/Receive DNS Lookup: The client tries to resolve the domain name for the request. Client sends DNS Query to local ISP DNS server. DNS server responds with the IP address for hostname.com Connect: Client establishes TCP connection with the IP address of hostname.com Client sends SYN packet. Web server sends SYN-ACK packet. Client answers with ACK packet, concluding the three-way TCP connection establishment. Send: Client sends the HTTP request to the web server. Wait: Client waits for the server to respond to the request. Web server processes the request, finds the resource, and sends the response to the Client. Client receives the first byte of the first packet from the web server, which contains the HTTP Response headers and content. Load: Client loads the content of the response. Web server sends second TCP segment with the PSH flag set. Client sends ACK. (Client sends ACK every two segments it receives. from the host) Web server sends third TCP segment with HTTP_Continue. Close: Client sends a a FIN packet to close the TCP connection.
32. Load/Receive What impacts Wait times? Network factors The Application code The Application Load / Capacity Any other dependencies (database lookups, other servers, apis…) Common issues: Application Load - Profile your capacity / Load testing Database utilization, locks…, Memory Leaks, Bugs… Bad chunked encoding!
37. HTML Content Each request relies on HTTP - same rules apply! Pay attention to bottlenecks Primary URL Inline JavaScript requests Front end code impacts browser processing!
44. if Multiple datacenters, monitor them individuallyBaseline very often, track improvement or degradation Keep an eye on performance during critical business hours (Volume) Compare data pre-release and post release Review Daily / Weekly /Monthly Alerts on % delta
56. Closing the Loop Monitor Action Plan Optimize Monitor… do it again It isn’t over till it’s over. And it’s never over. It is not a sprint, it is a never ending marathon!