This document summarizes a presentation about scaling PHP applications to handle large traffic volumes. Some key points:
- The speaker is a performance engineer at Etsy who helped scale their PHP application to support 60 million unique visitors per month.
- Etsy's PHP application handles 1.5 billion page views per month on Apache and PHP servers. They use techniques like opcode caching, static arrays for translations, and atomic deploys to optimize performance.
- The presentation covers tools and technologies used at Etsy like Memcached, MySQL, and offloading static content to CDNs. It also discusses challenges of scaling further and potential architecture changes.
Apache and PHP: Why httpd.conf is your new BFF!Jeff Jones
Apache's configuration files can be used to configure how Apache operates, but they can also be used to configure PHP and how Apache httpd interacts with PHP. In this talk, Jeff explains the different ways Apache can be configured, explains many of the useful config options available for Apache modules, including our own mod_php, and showcases example of how they can be used with, and instead of, your PHP code.
In this presentation, I show the audience how to implement HTTP caching best practices in a non-intrusive way in PHP Symfony 4 code base.
This presentation focuses on topics like:
- Caching using cache-control headers
- Cache variations using the Vary header
- Conditional requests using headers like ETag & If-None-Match
- ESI discovery & parsing using headers like Surrogate-Capability & Surrogate-Control
- Caching stateful content using JSON Web Token Validation in Varnish
More information about this presentation is available at https://feryn.eu/speaking/developing-cacheable-php-applications-php-limburg-be/
Handling 10k requests per second with Symfony and Varnish - SymfonyCon Berlin...Alexander Lisachenko
It is believed that the Symfony framework is quite heavy and it can be difficult to develop a website that will be able to work under the high load. It is true, but does this mean that it is impossible to implement a dynamic caching and to update only a small part of entire page as data is updated? This talk will give your an answer to that. It is Varnish, ESI-blocks and load balancing. With hundreds of thousands of unique visitors and million hits a day, we continue to use Symfony, and do not see any problems.
Apache and PHP: Why httpd.conf is your new BFF!Jeff Jones
Apache's configuration files can be used to configure how Apache operates, but they can also be used to configure PHP and how Apache httpd interacts with PHP. In this talk, Jeff explains the different ways Apache can be configured, explains many of the useful config options available for Apache modules, including our own mod_php, and showcases example of how they can be used with, and instead of, your PHP code.
In this presentation, I show the audience how to implement HTTP caching best practices in a non-intrusive way in PHP Symfony 4 code base.
This presentation focuses on topics like:
- Caching using cache-control headers
- Cache variations using the Vary header
- Conditional requests using headers like ETag & If-None-Match
- ESI discovery & parsing using headers like Surrogate-Capability & Surrogate-Control
- Caching stateful content using JSON Web Token Validation in Varnish
More information about this presentation is available at https://feryn.eu/speaking/developing-cacheable-php-applications-php-limburg-be/
Handling 10k requests per second with Symfony and Varnish - SymfonyCon Berlin...Alexander Lisachenko
It is believed that the Symfony framework is quite heavy and it can be difficult to develop a website that will be able to work under the high load. It is true, but does this mean that it is impossible to implement a dynamic caching and to update only a small part of entire page as data is updated? This talk will give your an answer to that. It is Varnish, ESI-blocks and load balancing. With hundreds of thousands of unique visitors and million hits a day, we continue to use Symfony, and do not see any problems.
You know how HTTP caching works but need more? In this talk we look into ways to cache personalized content. We will look at Edge Side Includes (ESI) to tailor caching rules of fragments, and at the user context concept to differentiate caches not by individual user but by permission groups.
It's no denying that rich Javascript applications (sometimes called One Page Applications) are a big thing, but what if you want to leverage Drupal on the backend, or have an existing site? Tools like Angular.JS and EmberJS are great when you have an API, but Drupal 7 doesn't really have an API layer. I'll explore the parts of a one page application and how to integrate it into either an existing or a new Drupal site, and the pitfalls that one must watch out for.
Horizontal scaling in the Cloud is the way to adapt resources to load of systems. The Cloud allows users to scale virtually indefinitely, or enough for their needs.
This way the number of servers follows trend of requests, and TCO (Total Cost of Owneship) of IT infrastructure can be reduced. Nonetheless companies can avoid dealing with capacity planning and pre-provisioning issues.
This talk will show how to use Python and Rackspace/OpenStack API and SDK to implement an event-based scaling solution (software released under the open-source Apache License: stay tuned).
Slide for a talk I presented internally at Opera in December 2009 about the deployment of varnish in our production environment at my.opera.com, the social network community.
With the Varnish caching proxy you can make websites blazingly fast. The basics are quite simple once you understand how cache handling in HTTP works. For starters, we will look into HTTP and Varnish configuration. The main course is going to be test-driven cache invalidation and the cache tagging strategy. For desserts, there will be an introduction to Edge Side Includes (ESI). All of this will be liberally sprinkled with examples from the FOSHttpCache library and some ideas from the FOSHttpCacheBundle for Symfony2.
Встраиваем python для появления аналитики в проекте на С++. Александр Боргард...corehard_by
Многие привыкли слышать: "Хотим в проект (на С++) встроить скриптовый язык для простого
добавления точек кастомизации проекта".
Обычно новые технические запросы обусловлены запросами бизнеса.
В моем случае запросом служила необходимость очень быстрого появления аналитики в проекте.
Стандартным выбором у С++ разработчиков является скриптовый язык lua, но на мое решение повлияло богатство библиотеки для машинного обучения на python.
При интеграции С++ и python возникли проблемы, связанные с размером и сложностью кастамизации run-time python.
Как мне удалось совместить в проект С++ и python и с какими проблемами мне пришлось столкнуться -- обо всем этом будет рассказано в моем докладе.
In this last years a lot of high traffic web sites have been built in PHP. One of the main problem to design a distributed PHP architecture is how to share session data between multiple servers. In this presentation we showed the most used solutions to scale a PHP application along multiple servers. We presented different solutions to share session data using open source solutions (nfs, databases, memcached, redis, etc). Moreover we talk about Zend Server Cluster Manager, an enterprise ready Web Application Server for running and managing an HA Cluster of PHP servers.
You know how HTTP caching works but need more? In this talk we look into ways to cache personalized content. We will look at Edge Side Includes (ESI) to tailor caching rules of fragments, and at the user context concept to differentiate caches not by individual user but by permission groups.
It's no denying that rich Javascript applications (sometimes called One Page Applications) are a big thing, but what if you want to leverage Drupal on the backend, or have an existing site? Tools like Angular.JS and EmberJS are great when you have an API, but Drupal 7 doesn't really have an API layer. I'll explore the parts of a one page application and how to integrate it into either an existing or a new Drupal site, and the pitfalls that one must watch out for.
Horizontal scaling in the Cloud is the way to adapt resources to load of systems. The Cloud allows users to scale virtually indefinitely, or enough for their needs.
This way the number of servers follows trend of requests, and TCO (Total Cost of Owneship) of IT infrastructure can be reduced. Nonetheless companies can avoid dealing with capacity planning and pre-provisioning issues.
This talk will show how to use Python and Rackspace/OpenStack API and SDK to implement an event-based scaling solution (software released under the open-source Apache License: stay tuned).
Slide for a talk I presented internally at Opera in December 2009 about the deployment of varnish in our production environment at my.opera.com, the social network community.
With the Varnish caching proxy you can make websites blazingly fast. The basics are quite simple once you understand how cache handling in HTTP works. For starters, we will look into HTTP and Varnish configuration. The main course is going to be test-driven cache invalidation and the cache tagging strategy. For desserts, there will be an introduction to Edge Side Includes (ESI). All of this will be liberally sprinkled with examples from the FOSHttpCache library and some ideas from the FOSHttpCacheBundle for Symfony2.
Встраиваем python для появления аналитики в проекте на С++. Александр Боргард...corehard_by
Многие привыкли слышать: "Хотим в проект (на С++) встроить скриптовый язык для простого
добавления точек кастомизации проекта".
Обычно новые технические запросы обусловлены запросами бизнеса.
В моем случае запросом служила необходимость очень быстрого появления аналитики в проекте.
Стандартным выбором у С++ разработчиков является скриптовый язык lua, но на мое решение повлияло богатство библиотеки для машинного обучения на python.
При интеграции С++ и python возникли проблемы, связанные с размером и сложностью кастамизации run-time python.
Как мне удалось совместить в проект С++ и python и с какими проблемами мне пришлось столкнуться -- обо всем этом будет рассказано в моем докладе.
In this last years a lot of high traffic web sites have been built in PHP. One of the main problem to design a distributed PHP architecture is how to share session data between multiple servers. In this presentation we showed the most used solutions to scale a PHP application along multiple servers. We presented different solutions to share session data using open source solutions (nfs, databases, memcached, redis, etc). Moreover we talk about Zend Server Cluster Manager, an enterprise ready Web Application Server for running and managing an HA Cluster of PHP servers.
High Performance Php My Sql Scaling TechniquesZendCon
This talk will discuss issues and solutions when attempting to scale PHP and MySQL to high volume websites (such as digg.com). It will discuss some of the problems at hand, and go into (at a high level) some of the solutions, such as using memcache, DB partitioning, etc. As well as how to handle these solutions within PHP.
Scaling a High Traffic Web Application: Our Journey from Java to PHP120bi
What makes an application scale? What should you worry about early on and what can wait?
Over the last 3 years, Achievers has learned many lessons and gained fundamental knowledge on scaling our SaaS platform. CTO Dr. Aris Zakinthinos will present and discuss the decisions we’ve made including language choice, server architecture, and much more; join us while we share tips, tricks, and things to absolutely avoid.
Throughout the evening you will have the opportunity to talk to the development team behind the Achievers Platform and ask questions on scaling best practices.
Redis in Practice: Scenarios, Performance and Practice with PHPChen Huang
Knowledge sharing about Redis, mainly focusing on:
Why to use Redis? Comparison of some in-memory storages and their scenarios
How to make Redis faster? Consider time complexity, communication latency and serialization
Practice of replication and sentinel in PHP
This presentation covers some techniques for improving performance, as well as some business metrics around performance that Etsy has gathered recently.
The 10 minute opening talk for the Rendering Performance panel at Edge NY, September 23rd 2013. This was just designed to give a brief overview of the topic before the Q&A portion of the panel.
I gave this talk at Velocity NY 2013, and it covers the installation and use of a private WebPagetest instance, as well as the open source tool wpt-script which Etsy built.
Talk by Jonathan Oxer at Open Source Developers Conference 2004 about writing high-performance and scalable PHP applications. Originally presented 2004-12-02. More information at http://jon.oxer.com.au/talks/id/11
Redis is a NoSQL technology that rides a fine line between database and in-memory cache. Redis also offers "remote data structures", which gives it a significant advantage over other in-memory databases. This session will cover several PHP clients for Redis, and how to use them for caching, data modeling and generally improving application throughput.
Node Tools For Your Grails Toolbox - Gr8Conf 2013zanthrash
Grails has many tools available but when it comes to front end asset management (compile, concatenate, minify, cache-busting) there are a lot of nice tools coming out of the node.js space,
Use drupal 8 as a framework the romance recalibrationKevin Wenger
Ce talk s’inscrit dans une lignée de démystification de Drupal 8 et vous introduit comment utiliser pleinement son potentiel (sans uniquement cliquer dans l’interface).
La dernière monture de Drupal, le v8 remplaçant émérite d’un vieillissant – néanmoins valeureux – Drupal 7, permet d’ambitieux projet PHP allant d’une plateforme business à un ecommerce en passant par un site de contenu.
Kevin Wenger nous présente un rapide overview des nouvelles API de Drupal 8, partage ses retours d’expériences sur des développement de projets intranet, de plateformes communautaires et de business applications. Il illustre ensuite quelques contre exemple D7 vs D8 et termine par les bonnes pratiques appliquées au quotidien sur les projet Drupal chez Antistatique.
Ab(Using) the MetaCPAN API for Fun and Profit v2013Olaf Alders
This talk builds on the previous Ab(Using) the MetaCPAN API talk from 2012. There are links to comprehensive examples and there is a more in-depth look at the available endpoints.
Hammering Responsive Web Design Into ShapeKen Tabor
This BigDesign 2013 session helps you develop and more importantly debug responsive web design. Why? Because it’s not easy. These are nuts and bolts hands-on concepts to help you get through one of the most difficult things we can tackle building websites and webapps.
Lone StarPHP 2013 - Building Web Apps from a New AnglePablo Godel
AngularJS is a new JavaScript framework, backed by Google, for building powerful, complex and rich client-side web applications. We will go over the features and basics of building a web application with AngularJS and we will demonstrate how to communitate with a REST server built with PHP.
Writing infinite scalability web applications with PHP and PostgreSQLGabriele Bartolini
PostgreSQL 9.2 introduced native support for the JSON data type, as well as V8/Javascript and Coffeescript procedural languages.
Learn how you can write web applications in PHP using an intelligent and horizontally sharded cluster of PostgreSQL databases, bringing you infinite scalability and parallel processing.
This talk will guide you through the development lifecycle of the application, focusing on architecture, technologies, testing and deployment.
Become Master of Your Own Universe - DIBI 2013Phil Sturgeon
Being a developer for years its very easy to get type-cast. You become "The CodeIgniter Guy", the one dev in the office that knows how FooCMS works or just end up farming out CRUD day after day. Well I decided to say "nope" to that & accepted a job where I'd need to know how to do…everything.
This talk aims to give you an overview of what you should be looking to learn next if you want to stop being "just a developer" & move into the devops/architecture arena.
Tek 2013 - Building Web Apps from a New Angle with AngularJSPablo Godel
AngularJS is a new JavaScript framework, backed by Google, for building powerful, complex and rich client-side web applications. We will go over the features and basics of building a web application with AngularJS and we will demonstrate how to communicate with a REST server built with PHP.
It is clear that HTML5 is revolutionising the web, but there have been some doubts about whether the mobile web is ready to take over native. In this talk I will explain why the mobile web is the only way to go, how Firefox OS is leading that revolution, and why this will empower both users and developers in ways they can’t start to imagine yet.
Consegi 2010 - Dicas de Desenvolvimento Web com RubyFabio Akita
Esta é a palestra que dei no Consegi 2010 em Brasília. Sobre dicas gerais sobre web, em particular implementando com Ruby on Rails. YSlow, Full Text Search e Tarefas Assíncronas.
An overview of the current state of WebRTC - what it is and how it works. Also included are several example applications showing why WebRTC matters and how it may be deployed in the future.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
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.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
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.
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.
5. Who Am I?
• Performance Engineer at Etsy
Saturday, August 17, 13
6. Who Am I?
• Performance Engineer at Etsy
• Boston Web Perf Meetup Organizer
Saturday, August 17, 13
7. Who Am I?
• Performance Engineer at Etsy
• Boston Web Perf Meetup Organizer
• Previously at Wayfair
Saturday, August 17, 13
8. Who Am I?
• Performance Engineer at Etsy
• Boston Web Perf Meetup Organizer
• Previously at Wayfair
• Led team that converted to PHP
Saturday, August 17, 13
12. Some Etsy Stats
• 1.5 billion page views/month
Saturday, August 17, 13
13. Some Etsy Stats
• 1.5 billion page views/month
• Almost $1B in sales last year
Saturday, August 17, 13
14. Some Etsy Stats
• 1.5 billion page views/month
• Almost $1B in sales last year
• Over 1M lines of PHP
Saturday, August 17, 13
15. Some Etsy Stats
• 1.5 billion page views/month
• Almost $1B in sales last year
• Over 1M lines of PHP
• 60M+ unique visitors/month
Saturday, August 17, 13
43. Optimizing PHP
• See last year’s talk
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
44. Optimizing PHP
• See last year’s talk
• Use an Opcode Cache
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
45. Optimizing PHP
• See last year’s talk
• Use an Opcode Cache
• xhprof
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
46. Optimizing PHP
• See last year’s talk
• Use an Opcode Cache
• xhprof
• StatsD/Graphite
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
47. Optimizing PHP
• See last year’s talk
• Use an Opcode Cache
• xhprof
• StatsD/Graphite
• Find hotspots
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
48. Optimizing PHP
• See last year’s talk
• Use an Opcode Cache
• xhprof
• StatsD/Graphite
• Find hotspots
• Upgrade it
http://www.slideshare.net/jnklein/northeast-php-high-performance-php
Saturday, August 17, 13
73. Memcached
• Roughly same hardware as webs
• More memory (48GB)
• Shard keys across servers
Saturday, August 17, 13
74. Memcached
• Roughly same hardware as webs
• More memory (48GB)
• Shard keys across servers
• mctop - https://github.com/etsy/mctop
Saturday, August 17, 13