Quanto è importante la velocità di caricamento di un sito?
Nell'intervento verranno presentate l’insieme delle best practices da utilizzare per rendere il sito il più veloce e performante possibile. E’ inutile avere un sito bello se poi una pagina impiega 10 secondi per essere caricata, o se il server non riesce a gestire più di 20 utenti contemporaneamente. All'interno è presente anche un case study di un sito reale con gli ottimi risultati ottenuti.
Like many other messaging systems, Kafka has put limit on the maximum message size. User will fail to produce a message if it is too large. This limit makes a lot of sense and people usually send to Kafka a reference link which refers to a large message stored somewhere else. However, in some scenarios, it would be good to be able to send messages through Kafka without external storage. At LinkedIn, we have a few use cases that can benefit from such feature. This talk covers our solution to send large message through Kafka without additional storage.
IBM Spectrum Protect and IBM Spectrum Protect Plus - What's new! June '18Pawel Maczka
Subject: IBM Spectrum Protect, Plus - What's new! June '18
When: June 7th 10AM ET, 4PM CET
Speakers: Harley Puckett (IBM), Pawel Maczka (Storware)
Harley Puckett is the Program Director for IBM #SpectrumProtect development. He has over 30 years experience in Storage and Data Protection, regularly presenting at client briefings and user conferences. Harley spent 6 ½ years as an Executive Storage Software Consultant and manager of the Client Workshop Program in the Tucson Executive Briefing Center. He was the Solutions Architect for IBM’s Global Archive Solutions Center in Guadalajara Mexico. Prior to a temporary assignment as the technical assistant to the GM of System Storage he spent 9 ½ years as a senior development manager for IBM Tivoli Storage Manager (TSM). He led IBM’s efforts to implement Systems Managed Storage on its internal systems and outsourced accounts. Graduated University of Arizona with BS MIS
Pawel Maczka - CTO, VP at Storware Company. Addicted to Storage and Data Protection Solutions serve in every combination - cloud, hybrid, on premise.More than 10 years work with Enterpise Backup & Recovery platforms. Technology evangelist, always with strong cooperation among IBM Spectrum Storage team.
Wide Column Store NoSQL vs SQL Data ModelingScyllaDB
NoSQL schemas are designed with very different goals in mind than SQL schemas. Where SQL normalizes data, NoSQL denormalizes. Where SQL joins ad-hoc, NoSQL pre-joins. And where SQL tries to push performance to the runtime, NoSQL bakes performance into the schema. Join us for an exploration of the core concepts of NoSQL schema design, using Scylla as an example to demonstrate the tradeoffs and rationale.
Like many other messaging systems, Kafka has put limit on the maximum message size. User will fail to produce a message if it is too large. This limit makes a lot of sense and people usually send to Kafka a reference link which refers to a large message stored somewhere else. However, in some scenarios, it would be good to be able to send messages through Kafka without external storage. At LinkedIn, we have a few use cases that can benefit from such feature. This talk covers our solution to send large message through Kafka without additional storage.
IBM Spectrum Protect and IBM Spectrum Protect Plus - What's new! June '18Pawel Maczka
Subject: IBM Spectrum Protect, Plus - What's new! June '18
When: June 7th 10AM ET, 4PM CET
Speakers: Harley Puckett (IBM), Pawel Maczka (Storware)
Harley Puckett is the Program Director for IBM #SpectrumProtect development. He has over 30 years experience in Storage and Data Protection, regularly presenting at client briefings and user conferences. Harley spent 6 ½ years as an Executive Storage Software Consultant and manager of the Client Workshop Program in the Tucson Executive Briefing Center. He was the Solutions Architect for IBM’s Global Archive Solutions Center in Guadalajara Mexico. Prior to a temporary assignment as the technical assistant to the GM of System Storage he spent 9 ½ years as a senior development manager for IBM Tivoli Storage Manager (TSM). He led IBM’s efforts to implement Systems Managed Storage on its internal systems and outsourced accounts. Graduated University of Arizona with BS MIS
Pawel Maczka - CTO, VP at Storware Company. Addicted to Storage and Data Protection Solutions serve in every combination - cloud, hybrid, on premise.More than 10 years work with Enterpise Backup & Recovery platforms. Technology evangelist, always with strong cooperation among IBM Spectrum Storage team.
Wide Column Store NoSQL vs SQL Data ModelingScyllaDB
NoSQL schemas are designed with very different goals in mind than SQL schemas. Where SQL normalizes data, NoSQL denormalizes. Where SQL joins ad-hoc, NoSQL pre-joins. And where SQL tries to push performance to the runtime, NoSQL bakes performance into the schema. Join us for an exploration of the core concepts of NoSQL schema design, using Scylla as an example to demonstrate the tradeoffs and rationale.
Sphinx autodoc - automated api documentation - PyCon.MY 2015Takayuki Shimizukawa
Using the automated documentation feature of Sphinx, you can make with ease the extensive documentation of Python program.
You just write python function documents (docstrings), Sphinx organizes them into the document, can be converted to a variety of formats.
In this session, I'll explain a documentation procedure that uses with sphinx autodoc and autosummary extensions.
Ever tried to get get clarity on what kinds of memory there are and how to tune each of them ? If not, very likely your jobs are configured incorrectly. As we found out, its is not straightforward and it is not well documented either. This session will provide information on the types of memory to be aware of, the calculations involved in determining how much is allocated to each type of memory and how to tune it depending on the use case.
From common errors seen in running Spark applications, e.g., OutOfMemory, NoClassFound, disk IO bottlenecks, History Server crash, cluster under-utilization to advanced settings used to resolve large-scale Spark SQL workloads such as HDFS blocksize vs Parquet blocksize, how best to run HDFS Balancer to re-distribute file blocks, etc. you will get all the scoop in this information-packed presentation.
From cache to in-memory data grid. Introduction to Hazelcast.Taras Matyashovsky
This presentation:
* covers basics of caching and popular cache types
* explains evolution from simple cache to distributed, and from distributed to IMDG
* not describes usage of NoSQL solutions for caching
* is not intended for products comparison or for promotion of Hazelcast as the best solution
Are you looking to automate backup and archiving of your business-critical data workloads? Attend this session to understand key use cases, best practices, and considerations for protecting your data with AWS and CommVault. This session will feature lessons learned from CommVault customers that have: migrated onsite backup data into Amazon S3 to reduce hardware footprint and improve recoverability; implemented data-tiering and archived data in Amazon Glacier for long term retention and compliance; performed snapshot-based protection and recovery for applications running in Amazon EC2; and, provisioned and managed VMs in Amazon EC2.
Speaker: Chris Gondek, Principal Architect, CommVault Australia and New Zealand
Optimizing MariaDB for maximum performanceMariaDB plc
When it comes to optimizing the performance of a database, DBAs have to look at everything from the OS to the network. In this session, MariaDB Enterprise Architect Manjot Singh shares best practices for getting the most out of MariaDB. He highlights recommended OS settings, important configuration and tuning parameters, options for improving replication and clustering performance and features such as query result caching.
Disaster Recovery for Multi-Region Apache Kafka Ecosystems at Uberconfluent
Speaker: Yupeng Fu, Staff Engineer, Uber
High availability and reliability are important requirements to Uber services, and the services shall tolerate datacenter failures in a region and fail over to another region. In this talk, we will present the active-active Apache Kafka® at Uber and how it facilitates disaster discovery across regions for Uber services. In particular, we will highlight the key components including topic replication, topic aggregation, offsets sync and then walk through several use cases of their disaster recovery strategy using active-active Kafka. Lastly, we will present several interesting challenges and the future work planned.
Yupeng Fu is a staff engineer in Uber Data Org leading the streaming data platform. Previously, he worked at Alluxio and Palantir, building distributed data analysis and storage platforms. Yupeng holds a B.S. and an M.S. from Tsinghua University and did his Ph.D. research on databases at UCSD.
Downscaling: The Achilles heel of Autoscaling Apache Spark ClustersDatabricks
Adding nodes at runtime (Upscale) to already running Spark-on-Yarn clusters is fairly easy. But taking away these nodes (Downscale) when the workload is low at some later point of time is a difficult problem. To remove a node from a running cluster, we need to make sure that it is not used for compute as well as storage.
But on production workloads, we see that many of the nodes can’t be taken away because:
Nodes are running some containers although they are not fully utilized i.e., containers are fragmented on different nodes. Example. – each node is running 1-2 containers/executors although they have resources to run 4 containers.
Nodes have some shuffle data in the local disk which will be consumed by Spark application running on this cluster later. In this case, the Resource Manager will never decide to reclaim these nodes because losing shuffle data could lead to costly recomputation of stages.
In this talk, we will talk about how we can improve downscaling in Spark-on-YARN clusters under the presence of such constraints. We will cover changes in scheduling strategy for container allocation in YARN and Spark task scheduler which together helps us achieve better packing of containers. This makes sure that containers are defragmented on fewer set of nodes and thus some nodes don’t have any compute. In addition to this, we will also cover enhancements to Spark driver and External Shuffle Service (ESS) which helps us to proactively delete shuffle data which we already know has been consumed. This makes sure that nodes are not holding any unnecessary shuffle data – thus freeing them from storage and hence available for reclamation for faster downscaling.
Scylla Summit 2022: Scylla 5.0 New Features, Part 1ScyllaDB
Discover the new features and capabilities of Scylla Open Source 5.0 directly from the engineers who developed it. This second block of lightning talks will cover the following topics:
- New IO Scheduler and Disk Parallelism
- Per-Service-Level Timeouts
- Better Workload Estimation for Backpressure and Out-of-Memory Conditions
- Large Partition Handling Improvements
- Optimizing Reverse Queries
To watch all of the recordings hosted during Scylla Summit 2022 visit our website here: https://www.scylladb.com/summit.
In this presentation we describe the design and implementation of Kafka Connect, Kafka’s new tool for scalable, fault-tolerant data import and export. First we’ll discuss some existing tools in the space and why they fall short when applied to data integration at large scale. Next, we will explore Kafka Connect’s design and how it compares to systems with similar goals, discussing key design decisions that trade off between ease of use for connector developers, operational complexity, and reuse of existing connectors. Finally, we’ll discuss how standardizing on Kafka Connect can ultimately lead to simplifying your entire data pipeline, making ETL into your data warehouse and enabling stream processing applications as simple as adding another Kafka connector.
24시간 365일 서비스를 위한 MySQL DB 이중화.
MySQL 이중화 방안들에 대해 알아보고 운영하면서 겪은 고민들을 이야기해 봅니다.
목차
1. DB 이중화 필요성
2. 이중화 방안
- HW 이중화
- MySQL Replication 이중화
3. 이중화 운영 장애
4. DNS와 VIP
5. MySQL 이중화 솔루션 비교
대상
- MySQL을 서비스하고 있는 인프라 담당자
- MySQL 이중화에 관심 있는 개발자
For a long time, relational database management systems have been the only solution for persistent data store. However, with the phenomenal growth of data, this conventional way of storing has become problematic.
To manage the exponentially growing data traffic, largest information technology companies such as Google, Amazon and Yahoo have developed alternative solutions that store data in what have come to be known as NoSQL databases.
Some of the NoSQL features are flexible schema, horizontal scaling and no ACID support. NoSQL databases store and replicate data in distributed systems, often across datacenters, to achieve scalability and reliability.
The CAP theorem states that any networked shared-data system (e.g. NoSQL) can have at most two of three desirable properties:
• consistency(C) - equivalent to having a single up-to-date copy of the data
• availability(A) of that data (for reads and writes)
• tolerance to network partitions(P)
Because of this inherent tradeoff, it is necessary to sacrifice one of these properties. The general belief is that designers cannot sacrifice P and therefore have a difficult choice between C and A.
In this seminar two NoSQL databases are presented: Amazon's Dynamo, which sacrifices consistency thereby achieving very high availability and Google's BigTable, which guarantees strong consistency while provides only best-effort availability.
Nello sviluppo di progetti complessi sono richiesti efficienza, efficacia ed appropriatezza.
Questi 3 aspetti possono rappresentare il cuore di un modello di qualità capace di favorire la gestione delle complessità.
Considerando come “macro-obiettivo” la pubblicazione di un sito saranno presentati i requisiti generalmente considerati di “efficienza” e gli strumenti che possono rendere il lavoro più “efficace”
Sphinx autodoc - automated api documentation - PyCon.MY 2015Takayuki Shimizukawa
Using the automated documentation feature of Sphinx, you can make with ease the extensive documentation of Python program.
You just write python function documents (docstrings), Sphinx organizes them into the document, can be converted to a variety of formats.
In this session, I'll explain a documentation procedure that uses with sphinx autodoc and autosummary extensions.
Ever tried to get get clarity on what kinds of memory there are and how to tune each of them ? If not, very likely your jobs are configured incorrectly. As we found out, its is not straightforward and it is not well documented either. This session will provide information on the types of memory to be aware of, the calculations involved in determining how much is allocated to each type of memory and how to tune it depending on the use case.
From common errors seen in running Spark applications, e.g., OutOfMemory, NoClassFound, disk IO bottlenecks, History Server crash, cluster under-utilization to advanced settings used to resolve large-scale Spark SQL workloads such as HDFS blocksize vs Parquet blocksize, how best to run HDFS Balancer to re-distribute file blocks, etc. you will get all the scoop in this information-packed presentation.
From cache to in-memory data grid. Introduction to Hazelcast.Taras Matyashovsky
This presentation:
* covers basics of caching and popular cache types
* explains evolution from simple cache to distributed, and from distributed to IMDG
* not describes usage of NoSQL solutions for caching
* is not intended for products comparison or for promotion of Hazelcast as the best solution
Are you looking to automate backup and archiving of your business-critical data workloads? Attend this session to understand key use cases, best practices, and considerations for protecting your data with AWS and CommVault. This session will feature lessons learned from CommVault customers that have: migrated onsite backup data into Amazon S3 to reduce hardware footprint and improve recoverability; implemented data-tiering and archived data in Amazon Glacier for long term retention and compliance; performed snapshot-based protection and recovery for applications running in Amazon EC2; and, provisioned and managed VMs in Amazon EC2.
Speaker: Chris Gondek, Principal Architect, CommVault Australia and New Zealand
Optimizing MariaDB for maximum performanceMariaDB plc
When it comes to optimizing the performance of a database, DBAs have to look at everything from the OS to the network. In this session, MariaDB Enterprise Architect Manjot Singh shares best practices for getting the most out of MariaDB. He highlights recommended OS settings, important configuration and tuning parameters, options for improving replication and clustering performance and features such as query result caching.
Disaster Recovery for Multi-Region Apache Kafka Ecosystems at Uberconfluent
Speaker: Yupeng Fu, Staff Engineer, Uber
High availability and reliability are important requirements to Uber services, and the services shall tolerate datacenter failures in a region and fail over to another region. In this talk, we will present the active-active Apache Kafka® at Uber and how it facilitates disaster discovery across regions for Uber services. In particular, we will highlight the key components including topic replication, topic aggregation, offsets sync and then walk through several use cases of their disaster recovery strategy using active-active Kafka. Lastly, we will present several interesting challenges and the future work planned.
Yupeng Fu is a staff engineer in Uber Data Org leading the streaming data platform. Previously, he worked at Alluxio and Palantir, building distributed data analysis and storage platforms. Yupeng holds a B.S. and an M.S. from Tsinghua University and did his Ph.D. research on databases at UCSD.
Downscaling: The Achilles heel of Autoscaling Apache Spark ClustersDatabricks
Adding nodes at runtime (Upscale) to already running Spark-on-Yarn clusters is fairly easy. But taking away these nodes (Downscale) when the workload is low at some later point of time is a difficult problem. To remove a node from a running cluster, we need to make sure that it is not used for compute as well as storage.
But on production workloads, we see that many of the nodes can’t be taken away because:
Nodes are running some containers although they are not fully utilized i.e., containers are fragmented on different nodes. Example. – each node is running 1-2 containers/executors although they have resources to run 4 containers.
Nodes have some shuffle data in the local disk which will be consumed by Spark application running on this cluster later. In this case, the Resource Manager will never decide to reclaim these nodes because losing shuffle data could lead to costly recomputation of stages.
In this talk, we will talk about how we can improve downscaling in Spark-on-YARN clusters under the presence of such constraints. We will cover changes in scheduling strategy for container allocation in YARN and Spark task scheduler which together helps us achieve better packing of containers. This makes sure that containers are defragmented on fewer set of nodes and thus some nodes don’t have any compute. In addition to this, we will also cover enhancements to Spark driver and External Shuffle Service (ESS) which helps us to proactively delete shuffle data which we already know has been consumed. This makes sure that nodes are not holding any unnecessary shuffle data – thus freeing them from storage and hence available for reclamation for faster downscaling.
Scylla Summit 2022: Scylla 5.0 New Features, Part 1ScyllaDB
Discover the new features and capabilities of Scylla Open Source 5.0 directly from the engineers who developed it. This second block of lightning talks will cover the following topics:
- New IO Scheduler and Disk Parallelism
- Per-Service-Level Timeouts
- Better Workload Estimation for Backpressure and Out-of-Memory Conditions
- Large Partition Handling Improvements
- Optimizing Reverse Queries
To watch all of the recordings hosted during Scylla Summit 2022 visit our website here: https://www.scylladb.com/summit.
In this presentation we describe the design and implementation of Kafka Connect, Kafka’s new tool for scalable, fault-tolerant data import and export. First we’ll discuss some existing tools in the space and why they fall short when applied to data integration at large scale. Next, we will explore Kafka Connect’s design and how it compares to systems with similar goals, discussing key design decisions that trade off between ease of use for connector developers, operational complexity, and reuse of existing connectors. Finally, we’ll discuss how standardizing on Kafka Connect can ultimately lead to simplifying your entire data pipeline, making ETL into your data warehouse and enabling stream processing applications as simple as adding another Kafka connector.
24시간 365일 서비스를 위한 MySQL DB 이중화.
MySQL 이중화 방안들에 대해 알아보고 운영하면서 겪은 고민들을 이야기해 봅니다.
목차
1. DB 이중화 필요성
2. 이중화 방안
- HW 이중화
- MySQL Replication 이중화
3. 이중화 운영 장애
4. DNS와 VIP
5. MySQL 이중화 솔루션 비교
대상
- MySQL을 서비스하고 있는 인프라 담당자
- MySQL 이중화에 관심 있는 개발자
For a long time, relational database management systems have been the only solution for persistent data store. However, with the phenomenal growth of data, this conventional way of storing has become problematic.
To manage the exponentially growing data traffic, largest information technology companies such as Google, Amazon and Yahoo have developed alternative solutions that store data in what have come to be known as NoSQL databases.
Some of the NoSQL features are flexible schema, horizontal scaling and no ACID support. NoSQL databases store and replicate data in distributed systems, often across datacenters, to achieve scalability and reliability.
The CAP theorem states that any networked shared-data system (e.g. NoSQL) can have at most two of three desirable properties:
• consistency(C) - equivalent to having a single up-to-date copy of the data
• availability(A) of that data (for reads and writes)
• tolerance to network partitions(P)
Because of this inherent tradeoff, it is necessary to sacrifice one of these properties. The general belief is that designers cannot sacrifice P and therefore have a difficult choice between C and A.
In this seminar two NoSQL databases are presented: Amazon's Dynamo, which sacrifices consistency thereby achieving very high availability and Google's BigTable, which guarantees strong consistency while provides only best-effort availability.
Nello sviluppo di progetti complessi sono richiesti efficienza, efficacia ed appropriatezza.
Questi 3 aspetti possono rappresentare il cuore di un modello di qualità capace di favorire la gestione delle complessità.
Considerando come “macro-obiettivo” la pubblicazione di un sito saranno presentati i requisiti generalmente considerati di “efficienza” e gli strumenti che possono rendere il lavoro più “efficace”
5 consigli SEO da tenere a mente durante lo sviluppo di temi e plugin @ WpCam...Andrea Cardinali
Concentrato di best practices relative alla seo “on site”. Si parla di indicizzazione, linking interno,status code e microformati e di tanti piccoli accorgimenti che possono portare grandi risultati. Ogni consiglio è accompagnato da diversi snippet di codice
Webperformance, come ottimizzare il tempo di caricamento di una pagina web!Stefano Marchisio
Accelerate le #webperformance aiuta ad aumentare le opportunità di #guadagno e portare il vostro business su qualsiasi dispositivo, ovunque in tutto il mondo. Minimizzare la #latenza portando i contenuti più vicino agli utenti non solo nelle principali aree metropolitane, ma anche nelle regioni interne. Ottimizzare i percorsi e #minimizzare i #roundtrip per la distribuzione più rapida di contenuti web.
3 secondi di attesa basterebbero all’80% dei visitatori per decidere di abbandonare un sito web lento.
Questo è particolarmente importante in un contesto mobile dove le connessioni possono non essere particolarmente veloci.
Eseguire test sintetici delle Web Performance con webpagetest.orgOlegs Belousovs
Queste slide sono dal talk che ho fatto al Turin Web Performance Group Meetup il 27 settembre 2016, tenutosi presso Login Coworking di Via Pietro Micca 12 a Torino.
Prima di spiegare come si usava WebPageTest.org, ci tenevo a parlare un po’ di cultura generale e dei concetti base delle web performance, oltre anche ad alcuni temi fondamentali e le loro differenze.
La versione con le note: https://goo.gl/7KlGLR
SMConnect 2022 - Con lo sviluppo del web, delle nuove tecnologie e web API, i motori di ricerca hanno iniziato ad utilizzare veri e propri browser per il rendering delle pagine web, creare un Web Rendering Service per il rendering su larga scala nasconde però molte insidie. In questo talk parliamo della session isolation nel rendering delle pagine web, da parte di motori di ricerca e tool, e di come questa può influenzare i dati di crawling.
Google PageSpeed Insights è uno degli strumenti di misurazione della performance web più utilizzati al mondo: i suoi suggerimenti possono darti degli indizi preziosi per migliorare le prestazioni del tuo sito. Peccato che il suo sistema di “punteggi e semafori“ tenda a far trarre conclusioni affrettate sullo stato di salute di un sito web.
Il sito veloce senza codice, versione originale WordCamp 2020Stefania Massenza
Guarda la versione aggiornata qui: https://www.slideshare.net/StefaniaMW/aggiornato-il-sito-veloce-senza-codice
Il deck del mio intervento al WordCamp Italia 2020 su come migliorare la velocità del proprio sito, senza mettere mano al codice.
I linguaggi del web - seconda edizione (3° giornata)Diego La Monica
Modulo 4 – AJAX
- Interazioni client/server
- Framework a confronto:
- jQuery
- Mootools
- YUI
- JAST
Modulo 5 – ARIA e l’accessibilità lato client
- Prendere un po' di ARIA
- Le tecnologie assistive
- Ruoli, stati e proprietà
- Strumenti per lo sviluppo accessibile
"Alla ricerca della formula magica". Presentazione usata per il ciclo di webinar su traduzione e adattamento di siti web per AITI Emilia Romagna, novembre-dicembre 2016.
Come e perché ($) migliorare le prestazioni web - Aprile 2023.pptxAndrea Verlicchi
Durante questo talk sulle prestazioni web, scoprirai come rendere il tuo sito web più veloce ed usabile, e come questo comporti un miglioramento dell’esperienza utente e l’aumento della visibilità del tuo sito sui motori di ricerca, riducendo persino i costi di marketing digitale.
Andrea condividerà la sua esperienza nel campo delle web performance e fornirà suggerimenti pratici, ad alto impatto e facilmente applicabili alla maggior parte dei siti web su come migliorare le performance nel 2023.
Andrea Verlicchi, web performance consultant @ Cognizant Netcentric, ha acquisito una vasta esperienza nel settore lavorando ad ottimizzare le prestazioni web, prima di alcuni tra i più grandi brand nel settore e-commerce della moda e del lusso, poi di clienti nel settore della chimica e dell'automotive.
Andrea è da qualche mese Google Developer Expert per le Web Performance, ha scritto di web su importanti riviste online specializzate, e condivide regolarmente quello che ha imparato a conferenze e Meetup, in Italia e all'estero.
5 falsi miti su Woocommerce - Andrea Cardinali - WordCamp Catania 2019Andrea Cardinali
Video: https://www.slideshare.net/AndreaCardinali/5-falsi-miti-su-woocommerce-andrea-cardinali-wordcamp-catania-2019
5 falsi miti sfatati da Andrea Cardinali esperto di siti performanti e WooCommerce
“WooCommerce va bene per ecommerce fino a massimo X prodotti”, “WooCommerce non è sicuro”, “WooCommerce non può gestire traffico elevato”
Quante volte hai sentito almeno una di queste affermazioni?
Al termine dello speech sarai in grado di diffondere la verità sull’argomento e rispondere adeguatamente a questa e ad altre affermazioni infondate.
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...Andrea Cardinali
In this speech I talk about how ajax requests work in WordPress and how to use them correctly. I compare wp-ajax and WordPress Rest API from authentication and performance point of view.
==========================================
Vuoi cambiare dinamicamente il contenuto della pagina e non sai come fare? Ti sei sempre chiesto come funziona l’infinite scroll o l’invio di un messaggio con Contact Form 7?
In questo speech ti mostrerò come funzionano le richieste ajax in WordPress, cosa sono le REST api e quando è più indicato utilizzare un metodo rispetto all’altro.
Speech tenuto durante il WordCamp Bari 2019
From Cache to Ca$h - Advanced use of WP Cache - Andrea CardinaliAndrea Cardinali
Advanced Use of WordPress Cache.
In this speech I've shown many different caching mechanism provided by WordPress and how to make good use of them.
You'll learn how to make a website resiliant,more performant and more profitable.
Talk @ WordCamp Turin 2019
======================
Sapevi che WordPress dispone già di un meccanismo di caching nativo e che ha molteplici utilizzi?
In questo speech mostrerò come utilizzare i diversi meccanismi di caching offerti da WordPress per rendere un sito resiliente e performante anche in condizioni di altro traffico e in grado di generare maggiori profitti.
Talk tenuto durante il WordCamp Torino 2019
Se il tuo sito WordPress non sta ottenendo il traffico desiderato probabilmente stai commettendo uno o più di questi errori. In questo speech, non parlerò di plugin, keyword density e semaforini ma ti spiegherò come risolvere i 5 principali errori che stanno annullando la seo del tuo sito.
Speech tenuto durante il WMF - Festival del Web Marketing 2018
Rivoluziona il tuo sito con le WP REST API - Andrea CardinaliAndrea Cardinali
Cosa sono le rest API? Come iniziare a utilizzarle velocemente? Come estenderne le funzionalità? Quali sono i vantaggi per design, blogger, developer? In questo talk ti fornirò tutte le risposte e ti mostrerò perché è fondamentale conoscerle
Speech tenuto al WordCamp Roma 2017
Realizzare siti velocissimi che si caricano in un secondo - WordCamp Milano 2...Andrea Cardinali
Perché è importante avere un sito veloce? Cosa significa veloce? Si può essere veloci senza usare plugins? In questo talk oltre a fornirti tutte le risposte, ti mostrerò le strategie più efficaci ed attuali che utilizzo per rendere i siti più veloci e abbattere il muro del secondo.
In questo talk vengono sfatati i 9 falsi miti più comuni su WordPress. Per ogni mito spiego la causa che lo ha generato e la realtà dei fatti.
I miti trattati sono:
So installare plugin quindi sono uno Sviluppatore WordPress
WordPress va bene solo per fare i blog
WordPress non è adatto per siti aziendali
WordPress non è adatto per gli e-commerce
WordPress non è sicuro
WordPress non è veloce
WordPress non è scalabile / non adatto a siti ad alto traffico
Per fare SEO con WordPress è sufficiente Yoast SEO
Speech tenuto durante il WordPress Romagna Meetup il 3 Ottobre 2017.
ATTENZIONE: Guida pratica anti cuggini, sviluppatori improvvisati e web guru (che sono una specializzazione del cuGGino).
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...Andrea Cardinali
WP-CLI è un ottimo strumento per abbattere i tempi di sviluppo e per automatizzare i task ripetitivi ed è un vero e proprio coltellino svizzero a disposizione dello sviluppatore. In questo talk parlerò di alcuni utilizzi avanzati e di come è possibile comandare i plugin realizzati attraverso WP-CLI
Talk tenuto durante il WordCamp Torino 2017- 8 Aprile 2017
WP-CLI is a great tool to cut down deployment time and to automate repetitive tasks. During the speech I'll talk about WP CLI and some of advanced tasks you can perform thanks to WP-CLI and its functionalities.
Talk @WordCamp Turin 2017
I vantaggi di utilizzare un Visual Composer - WordCamp Torino 2017 - Andrea C...Andrea Cardinali
Breve speech sui vantaggi ottenibili dall'utilizzo di un Visual Composer / Page Builder all'interno di WordPress.
Speech tenuto durante il WordCamp Torino 2017
5 Errori Seo Da Non Commettere Sul Tuo E-CommerceAndrea Cardinali
VIDEO: http://wordpress.tv/2016/12/08/andrea-cardinali-5-errori-seo-da-non-commettere-nel-tuo-e-commerce/
In questo speech parlo dei 5 errori seo commessi negli e-commerce e di come risolverli. Parlo di schede prodotto, schema.org, linking interno, gestione dei prodotti esauriti, redirect e https
Speech tenuto durante il Romagna WordPress Meetup il 1° Dicembre 2016
Professional WordPress Development with Vagrant - Andrea Cardinali - WordCam...Andrea Cardinali
Ti è mai capitato di sviluppare un sito in locale per poi ritrovarti con un sito non funzionante in produzione?
I tuoi colleghi utilizzano un’altra versione di php/MySql e ogni volta che unite il progetto emergono problemi? Ti trovi a dover ripetere le stesse operazioni ogni volta che crei un nuovo sito?
In questo talk risolverò tutti i tuoi problemi grazie all’utilizzo di Vagrant e VVV, è finita l’era del “Sulla mio computer funziona.”
Speech tenuto durante il WordCamp tenutosi a Milano il 22 Ottobre 2016
CMS in ottica SEO per i contenuti - SEMrush WebStudy Marathon - SEO Tecnico -...Andrea Cardinali
Link alla registrazione del webinar: http://bit.ly/AndreaCardinaliWebinarSEOcmsSEMRush
Se è vero che “content is the king” è altrettanto vero che anche il contenuto migliore del mondo, se non correttamente analizzato e indicizzato dagli spider dei motori di ricerca, non si posizionerà mai.
In questo speech parlo delle caratteristiche che un buon Cms deve avere per garantire una corretta indicizzazione e di come organizzare i contenuti per ottenere un’indicizzazione ottimale.
Nel dettaglio parlerò di indicizzazione, crawl budget, crawl rate, linking interno architettura informativa, google hummingbird e rank brain.
Slide della presentazione per la SEMrush WebStudy Marathon sul SEO Tecnico di Giovedì 15 Settembre 2016.
Questa presentazione è stata caricata la prima volta qui: http://www.slideshare.net/semrush_webinars/semrush-webstudy-marathon-seo-tecnico-cms-in-ottica-seo-per-i-contenuti
My WordPress Toolbox - WordPress Meetup Romagna #13 - 15 Settembre 2016Andrea Cardinali
In questo speech presento i plugin WordPress sia free che a pagamento che fanno parte della mia cassetta degli attrezzi e che utilizzo abitualmente nei progetti che realizzo. I plugin presentati riguardano sicurezza, gestione cliente, seo, performance, e automazione / risparmio tempo.
SEO On Site & WordPress - Errori da Evitare - #10 WordPress Meetup Romagna C...Andrea Cardinali
e li conosci li eviti: in questo talk parlerò dei principali
problemi presenti nei siti in WordPress ( Duplicazione dei
contenuti, gestione di tag/categorie,paginazione, status code ecc..)
e di come risolverli per ottimizzare al meglio il proprio sito.
Speech tenuto al 10° WordPress Meetup Romagna il 05 Maggio 2016 a Cesena
WordPress, migrazioni e re-branding: don't try this at home. #wmf15Andrea Cardinali
Talk tenuto al Web Marketing Festival 2015 a Rimini (#wmf15) nel quale ho presentato un case study sull'unione di 4 portali turistici realizzati con WordPress e 4 lingue su un un unico dominio e un'unica installazione di WordPress Multi Utente (Wordpress MU) Nello speech verranno mostrate le soluzioni tecniche e le best practices SEO utilizzate per portare a termine correttamente le migrazioni senza perdere traffico.
Se pensi che il tempo di caricamento della pagina non sia importante o di non poter migliorare la velocità del tuo sito perché è il server ad essere lento, ti stai sbagliando :) In questo talk parlerò del perché è importante realizzare siti veloci, delle principali best practices per realizzarli e del come migliorare le perfomances in modo rapido e senza fatica.
Seo on site - La stai facendo nel modo giusto? | GT Conference Torino 2013Andrea Cardinali
Best practices relative all'ottimizzazione del sito. Indicizzazione, linking interno e tanti altri piccoli accorgimenti che possono portare grandi risultati.
Seo on site - La stai facendo nel modo giusto? | GT Conference Torino 2013
50 tips su Web Performance Optimization per siti ad alto traffico @ WpCamp Bologna 2013
1. 50 tips su Web Performance
Optimization per siti ad alto traffico
di ANDREA CARDINALI
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013
@WORDCAMPBOLOGNA # WPCAMPBO13
2. “If it is fast and ugly, they will use it
and curse you;
if it is slow, they will not use it”
David Cheriton
(Docente Univ.Stanford)
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
3. WEB PERFORMANCE OPTIMIZATION
PERCHE’ LA VELOCITA’ E’ IMPORTANTE?
• Migliora la User Experience
• Diminuisce il bounce rate (tasso d’abbandono)
• Aumentano le pageviews ( a parità di tempo speso sul sito)
• Aumentano le conversioni (soprattutto negli ecommerce)
• Diminuiscono i costi (hardware e banda)
Inoltre…
E’ un fattore di ranking
“You may have heard that here at Google we're obsessed with speed, in our
products and on the web. As part of that effort, today we're including a new
signal in our search ranking algorithms: site speed.”
Amit Singhal & Matt Cuts - 09 Aprile 2010
http://googlewebmastercentral.blogspot.it/2010/04/using-site-speed-in-web-search-ranking.html
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
4. WEB PERFORMANCE OPTIMIZATION
QUANTO VELOCE?
LA RISPOSTA E’ NELLA PSICOLOGIA UMANA.
L’utente arriva sul nostro sito con un intento ben preciso.
Memoria a breve termine limitata: più aspettiamo, più il compito da eseguire risulta
difficile.
Bisogno di controllo: l’attesa e l’impossibilità di controllare la situazione genera
frustrazione e ansia.
3 LIMITI PER I TEMPI DI RISPOSTA:
0.1 secondi – risposta istantanea
1 secondo – l’utente percepisce un ritardo e sa che è dovuto al computer che sta
elaborando le informazioni e quindi il flusso dei pensieri non viene interrotto.
10 secondi – Tempo massimo per mantenere l’attenzione dell’utente. L’utente non ha il
controllo su quello che sta accadendo e inizia a crescere il senso di frustrazione.
ABBANDONO DEL SITO
Fonte: Jackob Nielsen http://www.nngroup.com/articles/website-response-times/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
5. WEB PERFORMANCE OPTIMIZATION
QUANTO VELOCE? (NEL MONDO REALE)
GLOBALE:
DESKTOP: 2,8 sec
MOBILE: 4,5 sec
ITALIA:
DESKTOP: 3,4 sec
MOBILE: 5,6 sec
DESKTOP: <15% 1sec
Fonte: http://analytics.blogspot.it/2012/04/global-site-speed-overview-how-fast-are.html
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
6. WEB PERFORMANCE OPTIMIZATION
DA COSA DIPENDE LA VELOCITA’?
Potenza dell’hardware?
Velocità del database?
Velocità del codice?
http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
8. WEB PERFORMANCE OPTIMIZATION
90 % DEL TEMPO DI CARICAMENTO
È UTILIZZATO PER LE RISORSE ESTERNE
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
9. WEB PERFORMANCE OPTIMIZATION
http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
10. WEB PERFORMANCE OPTIMIZATION
http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
12. WEB PERFORMANCE OPTIMIZATION
COME VELOCIZZARE IL SITO?
1. Ridurre il peso della pagina e delle risorse che la compongono
• Minify
• Immagini ottimizzate
• Compressione gzip
2. Ridurre il n° di richieste http
3. Parallelizzare il download
4. Caching
5. Lazy Loading (principalmente immagini)
6. Ritardare l’esecuzione degli script non fondamentali (es. social buttons)
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
13. WEB PERFORMANCE OPTIMIZATION
ELABORAZIONE PAGINA HTML
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
14. WEB PERFORMANCE OPTIMIZATION
ANALISI PERFORMANCE
Metrica Valore
Load time 3,62 sec
Peso 560kb
N° richieste http 25
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
15. WEB PERFORMANCE OPTIMIZATION
DIMINUIRE PESO DELLA PAGINA
• Minify html
• Minify js
• Minify css
• immagini ottimizzate (Yahoo smush.it)
• non scalare immagini con html
RISORSE UTILI:
http://www.minifycss.com/css-compressor/
http://refresh-sf.com/yui/ (YUI Compressor)
http://jscompress.com/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
16. WEB PERFORMANCE OPTIMIZATION
RIDURRE RICHESTE HTTP
• combine dei files
• combine intelligente
• css sprites
• utilizzare @media print invece di un foglio di stile per la stampa
• image inline (data uri)
• css3 per sfondi con gradient
ATTENZIONE: Immagini inline non supportate da <IE7
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
17. WEB PERFORMANCE OPTIMIZATION
VELOCIZZARE IL RENDERING DELLA PAGINA
• Css nell’header
• Script nel footer
• Diminuire il numero di elementi del DOM
• Script eseguiti al .load() invece che al .ready().
• Lazy load Immagini
• Script che interagiscono con il DOM devono utilizzare selettori efficienti
• Script asincroni
• Regole css efficienti
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
18. WEB PERFORMANCE OPTIMIZATION
ANALISI PERFORMANCE
Metrica Valore
Load time 3,60 sec
Peso 546kb
N° richieste http 16
Diminuito # richieste
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
19. WEB PERFORMANCE OPTIMIZATION
PARALLELIZZARE DOWNLOAD
CSS IN CIMA (NELL’HEAD)
• vengono scaricati in parallelo
• permettono al browser di eseguire più velocemente il rendering della pagina
JAVASCRIPT IN FONDO (ideale prima di </body> o comunque dopo i css)
• bloccano il rendering della pagina
• vengono scaricati ed eseguiti
• caricarli solo dove necessario
add_action(‘wp_enqueue_scripts’,’crd_registra_js’);
function crd_registra_js()
{
$path=get_template_directory_uri().'/assets/js/’;
wp_register_script(‘myscript’,‘script.min.js', array('jquery'),null, true);
//5 parametro per caricare lo script nel footer
if(is_page())
{
wp_enqueue_script(‘myscript’);
}
}
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
20. WEB PERFORMANCE OPTIMIZATION
PARALLELIZZARE DOWNLOAD - 2
• Utilizzare domini diversi Browser N° max per host *
• Utilizzare librerie ospitate su domini esterni
IE <8 2
• Utilizzare Fake CDN [link a post]
IE 8 -9 6
ATTENZIONE: numero max di connessioni /host IE 10 8
Chrome 6
FF 6
Non utilizzare più di 3-4 domini differenti
add_action('wp_enqueue_scripts',’crd_inizializza_js'));
function crd_inizializza_js()
{
wp_deregister_script('jquery‘);
wp_register_script('jquery', 'https://ajax.googleapis.com/ajax/libs/j
query/1.8.3/jquery.min.js',null,null,true);
}
Elenco completo: http://www.browserscope.org/?category=network
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
21. WEB PERFORMANCE OPTIMIZATION
ABILITARE COMPRESSIONE GZIP
• Riduce notevolmente il peso della pagina (anche del 80%)
• Vantaggi maggiori sui files con contenuto testuale
Abilitare compressione su Apache: [link]
ABILITARE SU APACHE
Inserire nel .htaccess
Meglio se in httpd.conf (più performante)
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain
text/xml text/css application/x-javascript
application/javascript
</IfModule>
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
22. WEB PERFORMANCE OPTIMIZATION
ANALISI PERFORMANCE
Metrica Valore
Load time 2,9 sec
Peso 228kb
N° richieste http 13
Metrica Valore
Load time -17 %
Peso -43 %
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
23. WEB PERFORMANCE OPTIMIZATION
ABILITARE KeepAlive
• Creare una nuova connessione http è dispendioso (tempo e risorse)
• Una singola connessione http viene utilizzata per rispondere a più richieste
Abilitare KeepAlive su Apache (httpd.conf)
KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 30
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
24. WEB PERFORMANCE OPTIMIZATION
ANALISI PERFORMANCE -KEEPALIVE
Metrica Valore
Load time 2,79 sec
Peso 228kb
N° richieste http 13
Metrica Valore
Load time -9,6 %
Peso -
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
25. WEB PERFORMANCE OPTIMIZATION
DOMINI COOKIELESS PER RISORSE STATICHE
Nel caso utilizziate una fake cdn, mpostare in wp-config il solo dominio principale.
define ('COOKIE_DOMAIN', 'www.domain.com');
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
26. WEB PERFORMANCE OPTIMIZATION
CACHING DELLE RISORSE STATICHE
VANTAGGI
• Caricamenti successivi della pagina (o del sito) molto più veloci
• Si risparmia banda
-98 %
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
27. WEB PERFORMANCE OPTIMIZATION
IMPOSTARE IL CACHING
• La query string nell’url della risorsa impedisce il caching
ERRATO (NON CORRETTO):
wp_enqueue_script (‘myscript’,$path.’script.js’);
<script src='/wp-content/themes/test/script.js?ver=3.5.1'></script>
CORRETTO:
wp_enqueue_script (‘myscript’,$path.’script.js’,false,null);
<script src='/wp-content/themes/test/script.js'></script>
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
28. WEB PERFORMANCE OPTIMIZATION
ABILITARE CACHING APACHE
• Con Apache, necessario mod_header e mod_expires
<IfModule mod_headers.c>
<FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf|cur)$">
Header unset ETag
FileETag None
#caching per un mese
Header set Cache-Control "max-age=2678400, public"
</FilesMatch>
</IfModule>
Se il vostro sito utilizza un solo server si possono abilitare gli ETAG
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
29. WEB PERFORMANCE OPTIMIZATION
DEFER JAVASCRIPT (SOCIAL BUTTONS)
non caricarli al document ready
Soluzioni:
• setTimeout
• immagine statica sostituita all’hover dai widget (mashable.com)
• cambio viewport
• mia con getScript
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
33. WEB PERFORMANCE OPTIMIZATION
CACHING IN WORDPRESS
TRANSIENT API
• Utile per salvare il risultato di elaborazioni lunghe (richieste http, query complesse)
• Persistente: viene salvato in wp_options come array serializzato
set_transient(‘nome_valore’, $valore, $scadenza)
get_transient (‘nome_valore’)
WP_Object_Cache
• Non persistente di default (viene eliminato alla fine del ciclo di vita della pagina)
• Diversi plugin (W3TC, APC Object Cache, WP File Cache) la rendono persistente
wp_cache_*
http://codex.wordpress.org/Transients_API http://codex.wordpress.org/Class_Reference/WP_Object_Cache
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
34. WEB PERFORMANCE OPTIMIZATION
APC (ADVANCED PHP CACHING)
• Php è un linguaggio interpretato
• APC salva l’opcode in RAM
• WP supporta APC a livello di Object Cache (http://wordpress.org/extend/plugins/apc/)
• W3TC supporta APC a tutti i livelli (Db,Page,Object)
http://pecl.php.net/package/APC
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
36. WEB PERFORMANCE OPTIMIZATION
APC (BENCHMARK)
1
3
2
Configurazione Req/sec. Aumento
Default (Apache + php) 3,37 -
APC On (solo opcode) 8 +237%
APC + Object Cache 65 +2000%
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
37. WEB PERFORMANCE OPTIMIZATION
ANALISI PERFORMANCE - APC
Metrica Valore
Load time 1,97 sec
Peso 277kb *
N° richieste http 13
Metrica Valore
Load time -7,5 %
Peso -
Response time -57%
* Il peso è aumentato perché è stata aggiunta un immagine. Ininfluente ai fini del test
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
38. WEB PERFORMANCE OPTIMIZATION
CONFRONTO RESPONSE TIME
APC OFF: 902 ms
-57 %
APC OFF: 396ms
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
39. WEB PERFORMANCE OPTIMIZATION
MYSQLND
• Disponibile a partire da php 5.3
• Default per php 5.4
• Ottimizzata per php (non è general purpose come mysqlibclient)
• Utilizza la il 50% in meno di memoria rispetto a php-mysql
• Su PECL c’è un estensione (mysqlnd_qc) per il caching delle query tramite apc
http://dev.mysql.com/downloads/connector/php-mysqlnd/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
40. WEB PERFORMANCE OPTIMIZATION
• Di default (ovvero senza tuning) è in grado di gestire 10k connessioni simultanee con
circa 2M di RAM (chiedete di fare lo stesso ad Apache)
• Può essere utilizzato come reverse proxy, web server o entrambi
• Utilizzato da wordpress.com, gravatar. com, cloudflare,pinterest, andreacardinali.it :)
http://nginx.com/cs/nginx-automattic.html
http://codex.wordpress.org/Nginx
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
41. WEB PERFORMANCE OPTIMIZATION – STRUMENTI BENCHMARKING
PLUGIN BROWSER
• Yslow
• Google Page Speed
SERVIZI ONLINE
• http://www.loadimpact.com (test di carico con connessione contemporanee)
• http://www.gtmetrix.com (confronta i risultati di Yslow e Google Page Speed)
• http://tools.pingdom.com
JAVASCRIPT
• Google Analytics (_trackPageSpeed)
• New Relic (RUA: Real User Monitoring: aggiunge un file js in fondo ad ogni pagina)
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
42. WEB PERFORMANCE OPTIMIZATION – NEW RELIC
• Installazione in 5 minuti
• Real time
• Pagine più lente
• Query più dispendiose
• Storico
http://newrelic.com
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
43. WEB PERFORMANCE OPTIMIZATION – CLOUD FLARE
• cdn automatico per pagine e contenuti statici con data center in 23 stati
• Dns anycast
• Threats protection
• Caching automatico
• Implementazione tutte le best practices esposte
• Combine, minify,gzip ecc..
http://www.cloudflare.com/
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13
44. WEB PERFORMANCE OPTIMIZATION – MOD PAGE SPEED
• Fa tutto lui
• Modulo x Apache ed Nginx
• 40 filtri configurabili
https://developers.google.com/speed/pagespeed/mod?hl=it
http://seoblog.giorgiotave.it/sito-veloce-mod-pagespeed/2770
WORDCAMP BOLOGNA - 9 FEBBRAIO 2013 @WORDCAMPBOLOGNA # WPCAMPBO13