Abstracting Features Into Custom Reverse Proxies (Or: Making Better Lemonade From Chaos)
Life isn't always simple. We often have to deal with a mishmash of applications, languages, and servers. How can we begin to standardize functionality across this chaos? Custom reverse proxies to the rescue! Using Ruby and EventMachine, learn how you can abstract high-level features and functionality into fast reverse proxies that can improve scalability, save time, and make the world happy.
- See how we've applied this across a diverse set of web service APIs to standardize the implementation of authentication, request throttling, analytics, and more.
- See how this can save development time, eliminate code duplication, make your team happy, make the public happy, and make you a hero.
- See how this can be applied to any TCP-based application for a wide-variety of use cases.
- Still think your situation is complicated? Learn about the U.S. Government's plans to standardize API access across the entire federal government. With some reverse proxy magic, this isn't quite as difficult or as foolhardy as it may first sound. It also comes with some nice benefits for both the public audience and government developers.
From Ruby on Rails to RubyMotion - Writing your First iOS App with RubyMotionMichael Denomy
This talk is targeted to developers who have experience with Ruby on Rails, but with little to no iOS development experience. We look at a series of gems that can help you get started with RubyMotion, including
ProMotion
Formotion
MotionModel
BubbleWrap
Teacup
Sugarcube
MotionAwesome
We all know Mobile is different, but by how much?
This presentation attempts to quantify the difference between mobile and non-mobile, focusing on CPU, network and browser differences.
This document provides a whirlwind tour of different types of data visualization tools and examples, including tools for visualizing metadata, archives data, and other datasets. Screenshots are included of visualization tools like Series Browser, CommonsExplorer, ArchivesZ, Gridworks, and word clouds. Examples shown include visualizing Australian WW1 service records on Google Earth, color-coding tags assigned to collections, and visualizing tags and collection sizes from archives at Syracuse University.
This document provides tips for building archives websites that are optimized for search engines like Google. It discusses conducting keyword research to understand how users search, organizing the site structure clearly, constructing pages with unique titles, descriptions and images with alt text, analyzing website analytics to understand traffic and user behavior, and following SEO best practices and blogs to continuously improve search visibility.
The document contains links to 15 photos on Flickr with attribution to the photographers. The photos are from various photographers and there is no other accompanying text.
From Ruby on Rails to RubyMotion - Writing your First iOS App with RubyMotionMichael Denomy
This talk is targeted to developers who have experience with Ruby on Rails, but with little to no iOS development experience. We look at a series of gems that can help you get started with RubyMotion, including
ProMotion
Formotion
MotionModel
BubbleWrap
Teacup
Sugarcube
MotionAwesome
We all know Mobile is different, but by how much?
This presentation attempts to quantify the difference between mobile and non-mobile, focusing on CPU, network and browser differences.
This document provides a whirlwind tour of different types of data visualization tools and examples, including tools for visualizing metadata, archives data, and other datasets. Screenshots are included of visualization tools like Series Browser, CommonsExplorer, ArchivesZ, Gridworks, and word clouds. Examples shown include visualizing Australian WW1 service records on Google Earth, color-coding tags assigned to collections, and visualizing tags and collection sizes from archives at Syracuse University.
This document provides tips for building archives websites that are optimized for search engines like Google. It discusses conducting keyword research to understand how users search, organizing the site structure clearly, constructing pages with unique titles, descriptions and images with alt text, analyzing website analytics to understand traffic and user behavior, and following SEO best practices and blogs to continuously improve search visibility.
The document contains links to 15 photos on Flickr with attribution to the photographers. The photos are from various photographers and there is no other accompanying text.
Cloud Computing im Unternehmen / Jan 25th 2011Lothar Wieske
The document discusses the concept of cloud computing and how it represents an intelligent symbiosis between enterprise IT and internet IT. It explores the essential characteristics and service models of cloud computing, including infrastructure as a service, platform as a service, and software as a service. The document also examines challenges such as consistency, availability, and partitioning in cloud environments.
This document discusses various techniques for improving Rails application performance, including reducing roundtrips through CSS sprites and data URIs, using tools like Firebug and NewRelic to diagnose issues, avoiding N+1 queries, and leveraging caching, monitoring, and scaling. It also briefly mentions plugins like Bullet and tools like RubyProf that can help optimize applications.
Rackspace monitors tens of thousands of servers using several open source tools like Apache Cassandra, Zookeeper, and Scribe. They developed their own tools like Virgo and Dreadnot to deploy agents and configure clusters across datacenters. Regular testing, deployment automation with Dreadnot and Chef, and documentation help support the large-scale monitoring system.
BBC Backstage Web Horizon 2007 PresentationIan Forrester
The document discusses the evolution of the internet and web technologies. It summarizes that Web 2.0 emphasizes user collaboration and sharing through social media sites, wikis, and other tools. It also discusses key concepts in web development like collective intelligence, the architecture of participation, and how the internet has transitioned to being a platform for applications. Emerging technologies on the horizon are predicted to include improved data portability, identity management, and real-time communication capabilities.
Web services and APIs allow large websites like Yahoo to be built and maintained, enable internal innovation through mashups, and allow external developers to build new products and services using publicly available data and functionality. They help address issues like security, scaling, and making changes by separating concerns between interfaces and implementations. Events like d.Construct promote discussion and innovation around emerging technologies like Ajax, APIs, and mobile applications.
The document discusses how the mobile web is growing rapidly but many web developers are not optimizing their sites for mobile. It provides statistics on the growth of mobile phones and their usage. It then details tests the author conducted on various mobile browsers to analyze support for technologies like gzip compression and parallel HTTP requests. The author provides recommendations for optimizing sites for mobile like using gzip, minimizing files, caching aggressively, and limiting cookies. The document advocates for testing sites across mobile browsers due to variations in support.
Cloud Architecture + Cloud Architects / Jan 24th 2012Lothar Wieske
This document summarizes key concepts in cloud architecture. It discusses infrastructure as a service, platform as a service, and software as a service. Other topics covered include cost optimization, agility, availability, resiliency, stability, security, compute resources, storage, networking, platforms, information management, identity, enterprise applications, and social applications in the cloud. It also briefly discusses provisioning tools and deploying applications on cloud platforms.
API Management in the Federal Government (D.C. Web API User Group)nickblah
The document discusses API management in the federal government. It describes how the federal government has implemented API management through a shared API management service called api.data.gov, which provides API documentation, keys, access control, rate limiting, and analytics for federal agencies. The service started as a pilot project and now aims to help agencies manage and publish their APIs through a centralized platform.
This document discusses cloud computing adoption and contains the following information:
- Guy Rosen is the co-founder and CEO of Vircado and blogs about cloud computing at JackOfAllClouds.com.
- It discusses challenges with adopting cloud computing such as security issues and how to identify cloud computing resources.
- It provides statistics on the number of servers launched daily and all-time on Amazon EC2, Rackspace, and GoGrid cloud computing platforms.
The document summarizes the evolution of web design from the early 1990s to the present day. It discusses how technical factors like improved code, browsers, devices and access have enabled the rise of responsive design. The key stages discussed are the World Wide Web era from 1992-1996, the dot-com boom from 1997-2001, the era of web standards from 2002-2007, and the modern era from 2008 onward. It emphasizes how current design approaches like responsive design have emerged from the confluence of technical capabilities and shifts in how people access the web from any device.
The document discusses optimizing frontend performance. It recommends reducing HTTP requests by combining CSS files into one file and using sprites and data URIs for images. It also suggests automating minification, compression, and image optimization. Performance should be monitored using tools like WebPagetest, YSlow, and PageSpeed. Frontend optimizations like these can reduce page load times and bandwidth usage.
At Weaveworks we use gRPC extensively within Weave Cloud.
In this talk I discuss 5 of the stages we went through as we adopted gRPC, some of the problems we encountered and technologies we used to overcome them
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014Amazon Web Services
Log data contains some of the most valuable raw information you can gather and analyze about your infrastructure and applications. Amid the mess of confusing lines of seemingly random text can be hints about performance, security, flaws in code, user access patterns, and other operational data. Without the proper tools, finding insights in these logs can be like searching for a hay-colored needle in a haystack. In this session you learn what practices and patterns you can easily implement that can help you better understand your log files. You see how you can customize web logs to add more information to them, how to digest logs from around your infrastructure, and how to analyze your log files in near real time.
The document discusses improving mobile web performance. It notes that mobile is different than desktop due to limitations in power, memory, battery and connections on mobile devices. Sites are growing larger in size which slows performance, and users strongly prefer faster loading sites. A variety of tools can measure performance, and waterfalls charts show where time is spent loading pages between the server and client. Optimizations discussed include enabling caching, compression, image resizing, lazy loading images, inlining images and scripts where possible, minifying assets, and delivering scripts and styles in a single HTTP request through techniques like application caching.
Making the Web Fireproof: A Building Code for WebsitesDylan Wilbanks
The moment we start creating a website, we’re setting ourselves up for failure later. Bad code creates middle of the night fire drills. Lack of thinking about accessibility gets our employer sued. Not thinking ahead on mobile generates rework. We accept this as the normal course of business – but is there any way we could prevent (or lower) this cost? Is there anything we can learn from the building codes that dictate how our built environment is constructed?
We will talk about the lessons of building codes and what we can do today to build more robust web applications and sites, including:
- The need for design patterns in websites
- The need for patterns in user stories so that we build websites consistently
- Baking accessibility into websites comes from putting accessibility into user stories
- Planning a web application is different from planning a building, but it does share similar aspects of work
- The better we can becoming at creating best practices (building codes) the better we will get at building sites, and the closer we will come to Berners-Lee’s “one web for all” dream
Presented at MinneWebCon 2015.
OSCAL: Free and Open Source Tools for Image and Video PerformanceDoug Sillars
The document discusses optimizing images and video for faster load times and reduced data usage on mobile websites. It recommends using Scalable Vector Graphics (SVG) for vector images, lossy compression for raster images at 85% quality, WebP format, responsive images sized for different breakpoints, lazy loading images below the fold, and replacing animated GIFs with MP4 videos for smaller file sizes. Open source tools discussed include ImageMagick, Cloudinary, and LazySizes for implementing these optimizations.
Mobile Development across Different Platforms @ Immobilienscout24Hasan Hosgel
The presentation shows professional Android Development and Best Practices regarding API Development It presents several aspects of a professional Android Development like organizational setup as well as the technical environment like build infrastructure and API development. It also covers our best practices and lessons learned regarding software architecture for android applications and API development. This includes API compatibility, security and versioning.
Talk from The Web Is in Cardiff, October 2014 exploring the business case for web performance, and some of the underlying factors that can make sites slow
The document discusses middleware, which resides between applications and underlying platforms like operating systems and databases. Middleware coordinates communication between different layers or components while isolating the complexity of distribution. Its primary role is to enable communication between distributed applications, databases, and devices. Middleware provides services like event handling, streaming, and device categorization in both centralized and peer-to-peer models.
This document discusses single page applications (SPAs) and the Ember framework for building SPAs. It provides an overview of why developers build SPAs, describes key features of Ember like data binding and components, and demonstrates how Ember enables predictable and productive development. The presentation concludes by sharing examples of companies using Ember and encouraging the audience to try it.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Cloud Computing im Unternehmen / Jan 25th 2011Lothar Wieske
The document discusses the concept of cloud computing and how it represents an intelligent symbiosis between enterprise IT and internet IT. It explores the essential characteristics and service models of cloud computing, including infrastructure as a service, platform as a service, and software as a service. The document also examines challenges such as consistency, availability, and partitioning in cloud environments.
This document discusses various techniques for improving Rails application performance, including reducing roundtrips through CSS sprites and data URIs, using tools like Firebug and NewRelic to diagnose issues, avoiding N+1 queries, and leveraging caching, monitoring, and scaling. It also briefly mentions plugins like Bullet and tools like RubyProf that can help optimize applications.
Rackspace monitors tens of thousands of servers using several open source tools like Apache Cassandra, Zookeeper, and Scribe. They developed their own tools like Virgo and Dreadnot to deploy agents and configure clusters across datacenters. Regular testing, deployment automation with Dreadnot and Chef, and documentation help support the large-scale monitoring system.
BBC Backstage Web Horizon 2007 PresentationIan Forrester
The document discusses the evolution of the internet and web technologies. It summarizes that Web 2.0 emphasizes user collaboration and sharing through social media sites, wikis, and other tools. It also discusses key concepts in web development like collective intelligence, the architecture of participation, and how the internet has transitioned to being a platform for applications. Emerging technologies on the horizon are predicted to include improved data portability, identity management, and real-time communication capabilities.
Web services and APIs allow large websites like Yahoo to be built and maintained, enable internal innovation through mashups, and allow external developers to build new products and services using publicly available data and functionality. They help address issues like security, scaling, and making changes by separating concerns between interfaces and implementations. Events like d.Construct promote discussion and innovation around emerging technologies like Ajax, APIs, and mobile applications.
The document discusses how the mobile web is growing rapidly but many web developers are not optimizing their sites for mobile. It provides statistics on the growth of mobile phones and their usage. It then details tests the author conducted on various mobile browsers to analyze support for technologies like gzip compression and parallel HTTP requests. The author provides recommendations for optimizing sites for mobile like using gzip, minimizing files, caching aggressively, and limiting cookies. The document advocates for testing sites across mobile browsers due to variations in support.
Cloud Architecture + Cloud Architects / Jan 24th 2012Lothar Wieske
This document summarizes key concepts in cloud architecture. It discusses infrastructure as a service, platform as a service, and software as a service. Other topics covered include cost optimization, agility, availability, resiliency, stability, security, compute resources, storage, networking, platforms, information management, identity, enterprise applications, and social applications in the cloud. It also briefly discusses provisioning tools and deploying applications on cloud platforms.
API Management in the Federal Government (D.C. Web API User Group)nickblah
The document discusses API management in the federal government. It describes how the federal government has implemented API management through a shared API management service called api.data.gov, which provides API documentation, keys, access control, rate limiting, and analytics for federal agencies. The service started as a pilot project and now aims to help agencies manage and publish their APIs through a centralized platform.
This document discusses cloud computing adoption and contains the following information:
- Guy Rosen is the co-founder and CEO of Vircado and blogs about cloud computing at JackOfAllClouds.com.
- It discusses challenges with adopting cloud computing such as security issues and how to identify cloud computing resources.
- It provides statistics on the number of servers launched daily and all-time on Amazon EC2, Rackspace, and GoGrid cloud computing platforms.
The document summarizes the evolution of web design from the early 1990s to the present day. It discusses how technical factors like improved code, browsers, devices and access have enabled the rise of responsive design. The key stages discussed are the World Wide Web era from 1992-1996, the dot-com boom from 1997-2001, the era of web standards from 2002-2007, and the modern era from 2008 onward. It emphasizes how current design approaches like responsive design have emerged from the confluence of technical capabilities and shifts in how people access the web from any device.
The document discusses optimizing frontend performance. It recommends reducing HTTP requests by combining CSS files into one file and using sprites and data URIs for images. It also suggests automating minification, compression, and image optimization. Performance should be monitored using tools like WebPagetest, YSlow, and PageSpeed. Frontend optimizations like these can reduce page load times and bandwidth usage.
At Weaveworks we use gRPC extensively within Weave Cloud.
In this talk I discuss 5 of the stages we went through as we adopted gRPC, some of the problems we encountered and technologies we used to overcome them
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014Amazon Web Services
Log data contains some of the most valuable raw information you can gather and analyze about your infrastructure and applications. Amid the mess of confusing lines of seemingly random text can be hints about performance, security, flaws in code, user access patterns, and other operational data. Without the proper tools, finding insights in these logs can be like searching for a hay-colored needle in a haystack. In this session you learn what practices and patterns you can easily implement that can help you better understand your log files. You see how you can customize web logs to add more information to them, how to digest logs from around your infrastructure, and how to analyze your log files in near real time.
The document discusses improving mobile web performance. It notes that mobile is different than desktop due to limitations in power, memory, battery and connections on mobile devices. Sites are growing larger in size which slows performance, and users strongly prefer faster loading sites. A variety of tools can measure performance, and waterfalls charts show where time is spent loading pages between the server and client. Optimizations discussed include enabling caching, compression, image resizing, lazy loading images, inlining images and scripts where possible, minifying assets, and delivering scripts and styles in a single HTTP request through techniques like application caching.
Making the Web Fireproof: A Building Code for WebsitesDylan Wilbanks
The moment we start creating a website, we’re setting ourselves up for failure later. Bad code creates middle of the night fire drills. Lack of thinking about accessibility gets our employer sued. Not thinking ahead on mobile generates rework. We accept this as the normal course of business – but is there any way we could prevent (or lower) this cost? Is there anything we can learn from the building codes that dictate how our built environment is constructed?
We will talk about the lessons of building codes and what we can do today to build more robust web applications and sites, including:
- The need for design patterns in websites
- The need for patterns in user stories so that we build websites consistently
- Baking accessibility into websites comes from putting accessibility into user stories
- Planning a web application is different from planning a building, but it does share similar aspects of work
- The better we can becoming at creating best practices (building codes) the better we will get at building sites, and the closer we will come to Berners-Lee’s “one web for all” dream
Presented at MinneWebCon 2015.
OSCAL: Free and Open Source Tools for Image and Video PerformanceDoug Sillars
The document discusses optimizing images and video for faster load times and reduced data usage on mobile websites. It recommends using Scalable Vector Graphics (SVG) for vector images, lossy compression for raster images at 85% quality, WebP format, responsive images sized for different breakpoints, lazy loading images below the fold, and replacing animated GIFs with MP4 videos for smaller file sizes. Open source tools discussed include ImageMagick, Cloudinary, and LazySizes for implementing these optimizations.
Mobile Development across Different Platforms @ Immobilienscout24Hasan Hosgel
The presentation shows professional Android Development and Best Practices regarding API Development It presents several aspects of a professional Android Development like organizational setup as well as the technical environment like build infrastructure and API development. It also covers our best practices and lessons learned regarding software architecture for android applications and API development. This includes API compatibility, security and versioning.
Talk from The Web Is in Cardiff, October 2014 exploring the business case for web performance, and some of the underlying factors that can make sites slow
The document discusses middleware, which resides between applications and underlying platforms like operating systems and databases. Middleware coordinates communication between different layers or components while isolating the complexity of distribution. Its primary role is to enable communication between distributed applications, databases, and devices. Middleware provides services like event handling, streaming, and device categorization in both centralized and peer-to-peer models.
This document discusses single page applications (SPAs) and the Ember framework for building SPAs. It provides an overview of why developers build SPAs, describes key features of Ember like data binding and components, and demonstrates how Ember enables predictable and productive development. The presentation concludes by sharing examples of companies using Ember and encouraging the audience to try it.
Similar to RubyConf 2012: Custom Reverse Proxies (20)
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
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.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
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.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
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.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
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.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
GraphRAG for Life Science to increase LLM accuracy
RubyConf 2012: Custom Reverse Proxies
1. Abstracting Features Into
Custom Reverse Proxies
Or: Making Better Lemonade From Chaos
Photo by Lori Greig
http://www.flickr.com/photos/lori_greig/4906180111
Nick Muerdter • RubyConf 2012 • November 1, 2012
2. Photo by Brian Lane Winfield Moore
http://www.flickr.com/photos/doctabu/342220423
3. Internet Reverse Proxy Web Server
Internal Network
4. Internet Reverse Proxy Web Server
Internal Network
5. RUBY!
CUSTOM FEATURES!
EVENTMACHINE!
Internet Reverse Proxy Web Server
Internal Network
14. Users Don’t Care
Photo from National Media Museum
http://www.flickr.com/photos/nationalmediamuseum/3589381656
15. What We Wanted
• 1 entry point to all our APIs
• 1 user account for all our APIs
• API key access to all our APIs
• Rate limiting for all our APIs
• Analytics for all our APIs
18. • Authentication
• Rate Limiting
• Analytics
Department A
Department B
Internet Reverse Proxy
Department C
Department D
Internal Network
19. Better Lemonade?
Photo by Lara604
http://www.flickr.com/photos/lara604/4563803829
20. For API Users
• 1 API key for all our services
• Shielded from our internal
complexities
21. For Our Developers
• Old APIs: Do absolutely nothing
• New APIs: Do absolutely nothing
• Get for free:
–Authentication
–Rate Limiting
–Analytics
22. • Reduced implementation code
• Standardization is enforced
• New features in the reverse proxy
benefit everyone
• Reverse proxies can also be used
for scaling
23. Building these things…
Photo from The Library of Congress
http://www.flickr.com/photos/library_of_congress/217984968
25. Proxy.start(:host => "0.0.0.0", :port => 80) do |conn|
conn.server :srv, :host => "127.0.0.1", :port => 81
conn.on_data do |data|
# Do something with the incoming data...
data
end
conn.on_response do |backend, resp|
# Do something with the response...
resp
end
conn.on_finish do |backend, name|
# Do something when finished...
end
end
26. conn.on_data do |data|
# Modify the User-Agent on the incoming
# request
data.gsub(/User-Agent: .*?rn/,
"User-Agent: em-proxy/0.1rn")
end
27. redis = Redis.new(:host => "127.0.0.1")
conn.on_data do |data|
# Fun things with Ruby!
ip = peer[0]
redis.incr(ip)
data
end
50. • Reverse Proxies: Fun for the whole
family!
• Custom Reverse Proxies: You might
be able to implement more
functionality at this layer than you
realize.
• Think Different: They can provide a
different way to architect some
features of your apps.
51. Resources & Support
Photo by Musée McCord Museum
http://www.flickr.com/photos/museemccordmuseum/5348751435
52. API Umbrella
• Our full API management solution
– Includes custom Event Machine based proxy
• Open source
https://github.com/NREL/api-umbrella
(Just recently open sourced, so pardon the current state of things)
53. Ruby & Event Machine
• em-proxy
– https://github.com/igrigorik/em-proxy
– Simple and very capable
• ProxyMachine
– https://github.com/mojombo/proxymachine
– Simpler, but can only act on requests, not responses
• Goliath
– https://github.com/postrank-labs/goliath
– More of a framework, uses em-synchrony (Fibers)
54. Other Reverse Proxies
• HAProxy
– http://haproxy.1wt.eu/
– General proxy and load balancing awesomeness
• Varnish Cache
– https://www.varnish-cache.org/
– Proxy caching layer coolness
• nginx
– http://nginx.org/
– Web server powerhouse and nice proxy
57. nick.muerdter@nrel.gov @nickblah
Enjoyed this presentation? Enjoyed this ‘stache?
Enjoy charity?
http://bit.ly/rubystache
Editor's Notes
Sits in front of your serverDoes stuff, but is transparent to the user
Common usage in Ruby communityNginx’s role:Serve static filesDeal with slow clients
You can implement your own reverse proxyWrite it in Ruby and implement your own features
Why we’re using custom reverse proxiesWhy you might find them usefulThe basics of building one
About web servicesWanted to expose them to the world
About silosNot agriculture, organizationalAlso systematic (legacy apps, etc)
NREL~2000 employeesDifferent development teams scattered across lab
Another way to look at the segmentationDifferent groups have expertise in different languagesEven in smaller business, you might deal with segmentation
Trying to force all groups to make changes is a huge uphill battleAlso time consuming
Custom reverse proxy slips between the internet and our existing API serversProxy deals with common functionalityExisting APIs don’t changeExisting APIs can now just assume that those things are taken care of.Proxy is agnostic to backend technology
All our APIs are in one place and can be accessed in the same way.Users don’t need to understand our internal group structure to know where to find APIs.
Our API developers don’t need to worry about any of the high level functionalityAPIs simply need to exist for them to be put behind the proxy
Lot’s of other ways to achieve some of these goals, but nice benefits to the reverse proxy:Reduced code: Individual APIs don’t have to implement any code. With other solutions, even if you simplified and abstracted the code, having to do nothing wins.Enforced standardization: Individual apps can’t mess up things like authentication with a faulty implementation.New features: Everyone benefits. Example: Adding caching layer.Scaling: Load balancing between multiple backends.
- Basicem-proxy example
Doing something as data is receivedNote:You’re operating at a raw HTTP level here.You’re dealing with chunks of data, so you can’t assume you have the full request body.
It’s Ruby!This is the real power: access any arbitrary Ruby library and do custom things.
Remember you’re operating at a TCP level hereIf you want to deal with HTTP in an easy way, you’ll need to handle that manually.Other libraries to deal with HTTP.
Why do things at this low level when we’re used to nice high level frameworks like Rails and Sinatra?
Low level proxy makes it much easier to pass along the original request in it’s complete, unaltered format (headers, HTTP method, body, etc).With higher level frameworks, the raw HTTP request has already been parsed and processed by a web server by the time it hits your app.More difficult and error prone trying to recreate the original request.
EventMachine is fast.Evented systems very suitable for proxies
em-proxy adds 0.5msrack-reverse-proxy adds nearly 3msComparatively a lot, but is 3ms really worth it?
Larger requests, the problem is compounded.em-proxy adds 150msrack-reverse-proxy adds nearly 800msWhy?Rack deals with complete request and complete response.Must buffer complete request and response in memory before transferring them.Memory balloons with large file uploads and downloads.em-proxy deals with chunks of data.Streams requests and response as fast as it receives them.Memory use much lower for large file uploads and downloads, since only a single chunk is in memory at a time.
Low level by default, up to you to implement more.You make decisions like whether to buffer requests and responsesCan be used for non-HTTP things (websockets, any other TCP thing)
- Aside from authentication, rate limiting, and analytics
Imagine a 1GB file upload and 5GB data downloadIf your proxy layer buffers, there will be delays. Streaming to the server and to the client won’t be possible.Buffering is sometimes desirable (Unicorn & nginx).Other times not. Our API use case means we want the proxy to be as transparent as possible, since we don’t know what all the APIs will want to do.
If you want to modify the response body, it can be a little tricky.Be sure to update the Content-Length header appropriately.
If you want to modify the response body, and the backend returns a gzipped response.You must buffer the responseDecompress after fully received, then modify the body, then re-gzip.Be sure to update the Content-Length header too.
Digital Strategy for the Federal GovernmentInvolved in the API portion of things.
Heavy push for web servicesExpect to see a lot more federal agencies exposing their data and services as web APIs.
With more APIs, we need better organization.We also need to make it easier for agencies.
APIs spread across agencies.Just a bigger version of our internal issues.
Agencies like this model and want something like itCurrently evaluating using our API Umbrella platform, or other platforms that are variations on the same idea.Involved in getting something up and running within 6 months.
Lots of web service action in the federal government over the next year.
Not appropriate for everythingCan be useful for applying global features that can easily be layered
Custom reverse proxy does fun thingsRedis used for rate limitingMongDB for authentication and analytics