This talk is about optimizing your ruby and rails code. It focuses on the basics. Too many times people focus on using fun tools. Before you attack the fun stuff you should tackle the low hanging fruit. ror-e.com
ColdFusion is racecar fast according to the document. It discusses ColdFusion performance best practices and tuning based on the experience of Webapper, a company that co-founded in 2001 by former Allaire consultants. They share settings for optimizing ColdFusion performance including memory, thread settings, JVM configuration, and monitoring tools to identify bottlenecks. Live load testing is demonstrated on AWS to show how tuning ColdFusion can achieve high request per second throughput without slowdowns.
The document discusses various techniques for optimizing performance of a Mura CMS website. It covers server tuning including optimizing the web server configuration, compressing static assets, and setting far future expires headers. It also discusses Java Virtual Machine tuning and database optimization. For Mura tuning, it recommends settings in the Mura admin such as enabling site caching and restricting access. It provides code examples for optimizing primary navigation, using the CacheOMatic tag, implementing CfStatic, and using ShowTrace for debugging.
This document discusses Apache Traffic Server, an open source HTTP proxy server. It provides an overview of Traffic Server's history and capabilities. Key points include:
- Traffic Server can handle a high volume of requests (350,000/sec) and throughput (30Gbps) for content delivery networks (CDNs).
- It uses an event-driven, multithreaded model to solve concurrency problems faced by other proxy servers.
- Traffic Server makes operations easy through automatic restart on crash, configuration reload without restart, and command line utilities for stats and configs.
- It can be used for forward and reverse proxying, load balancing, caching, and building CDNs through remapping of URLs to
The document discusses various stages in architecting an application for the cloud as it grows in scale and complexity.
Stage 1 involves a simple architecture suitable for startups with low overhead. Stage 2 adds redundancy as the business grows. Stage 3 requires the addition of load balancers and more servers as publicity increases load. Stage 4 requires database replication and partitioning as single databases can no longer handle the load. Later stages involve rearchitecting the application and databases to support further scaling through techniques like data partitioning, database clustering, and optimizing code and resources.
This document discusses various techniques for optimizing website performance, including: reducing page generation time through caching and opcode caching; minimizing round-trip times by leveraging browser caching, combining files, and parallel downloads; decreasing response sizes by gzipping files, image optimization, and cookieless domains; and tools for analyzing performance like XDebug. The goal is to share experiences helping to increase traffic to websites with average resources.
Apache Traffic Server is a high performance caching proxy that can improve performance and uptime. It is open source software originally created by Yahoo and used widely at Yahoo. It can be used as a content delivery network, reverse proxy, forward proxy, and general proxy. Configuration primarily involves files like remap.config, records.config, and storage.config. Plugins can also be created to extend its functionality.
Connection Pooling in PostgreSQL using pgbouncer Sameer Kumar
The presentation was presented at 5th Postgres User Group, Singapore.
It explain how to setup pgbouncer and also shows a few demonstration graphs comparing the advantages/gains in performance when using pgbouncer instead of direct connections to PostgreSQL database.
ColdFusion is racecar fast according to the document. It discusses ColdFusion performance best practices and tuning based on the experience of Webapper, a company that co-founded in 2001 by former Allaire consultants. They share settings for optimizing ColdFusion performance including memory, thread settings, JVM configuration, and monitoring tools to identify bottlenecks. Live load testing is demonstrated on AWS to show how tuning ColdFusion can achieve high request per second throughput without slowdowns.
The document discusses various techniques for optimizing performance of a Mura CMS website. It covers server tuning including optimizing the web server configuration, compressing static assets, and setting far future expires headers. It also discusses Java Virtual Machine tuning and database optimization. For Mura tuning, it recommends settings in the Mura admin such as enabling site caching and restricting access. It provides code examples for optimizing primary navigation, using the CacheOMatic tag, implementing CfStatic, and using ShowTrace for debugging.
This document discusses Apache Traffic Server, an open source HTTP proxy server. It provides an overview of Traffic Server's history and capabilities. Key points include:
- Traffic Server can handle a high volume of requests (350,000/sec) and throughput (30Gbps) for content delivery networks (CDNs).
- It uses an event-driven, multithreaded model to solve concurrency problems faced by other proxy servers.
- Traffic Server makes operations easy through automatic restart on crash, configuration reload without restart, and command line utilities for stats and configs.
- It can be used for forward and reverse proxying, load balancing, caching, and building CDNs through remapping of URLs to
The document discusses various stages in architecting an application for the cloud as it grows in scale and complexity.
Stage 1 involves a simple architecture suitable for startups with low overhead. Stage 2 adds redundancy as the business grows. Stage 3 requires the addition of load balancers and more servers as publicity increases load. Stage 4 requires database replication and partitioning as single databases can no longer handle the load. Later stages involve rearchitecting the application and databases to support further scaling through techniques like data partitioning, database clustering, and optimizing code and resources.
This document discusses various techniques for optimizing website performance, including: reducing page generation time through caching and opcode caching; minimizing round-trip times by leveraging browser caching, combining files, and parallel downloads; decreasing response sizes by gzipping files, image optimization, and cookieless domains; and tools for analyzing performance like XDebug. The goal is to share experiences helping to increase traffic to websites with average resources.
Apache Traffic Server is a high performance caching proxy that can improve performance and uptime. It is open source software originally created by Yahoo and used widely at Yahoo. It can be used as a content delivery network, reverse proxy, forward proxy, and general proxy. Configuration primarily involves files like remap.config, records.config, and storage.config. Plugins can also be created to extend its functionality.
Connection Pooling in PostgreSQL using pgbouncer Sameer Kumar
The presentation was presented at 5th Postgres User Group, Singapore.
It explain how to setup pgbouncer and also shows a few demonstration graphs comparing the advantages/gains in performance when using pgbouncer instead of direct connections to PostgreSQL database.
Improving PHP Application Performance with APCvortexau
This document discusses how to improve PHP application performance using the APC opcode cache. Installing APC yields a performance gain with default settings by caching opcodes for faster execution. Further optimization includes increasing the shared memory size and disabling file stat checks, which requires a server restart when files change. Caching variables like database query results with APC can also boost performance. In conclusion, APC is an effective way to enhance PHP application speed with only minor configuration changes required.
- The document provides biographical information about Sri Rajan, including that he is from India, has worked in IT for over 10 years including 6 years at Rackspace, and has expertise in Linux, OpenStack, and automation.
- It also provides an overview of Rackspace, including that they have over 5,000 employees serving customers in over 120 countries from 9 data centers worldwide.
- Sri Rajan's contact information is included at the end.
This document discusses how to compress and decompress payloads in Mule flows. It describes using the gzip-compress-transformer to compress a payload, which reduces its size, and the gzip-uncompress-transformer to decompress it back to the original size. An example is provided of a flow that picks up a 83 KB file, compresses it reducing it to 21.99 KB, then decompresses it back to the original 83 KB size.
DATABASE AUTOMATION with Thousands of database, monitoring and backupSaewoong Lee
This is my presentation document at AnsibleFest 2018 in Austin, Texas.
This topic is ‘Database Automation with thousands of database, monitoring and backup’.
In this document I want to tell you database automation using Ansible.
So I expect to give more confidence to infra engineer like me.
MySQL 5.7 innodb_enhance_partii_20160527Saewoong Lee
Release Date : 2016.05.27
Version : MySQL 5.7
Index :
- Part I : InnoDB Performance
- Part I : InnoDB Buffer Pool Flushing
- Part I : InnoDB internal Transaction General
- Part I : InnoDB Improved adaptive flushing
- Part II : InnoDB Online DDL
- Part II : Tablespace management
- Part II : InnoDB Bulk Load for Create Index
- Part II : InnoDB Temporary Tables
- Part II : InnoDB Full-Text CJK Support
- Part II : Support Syslog on Linux / Unix OS
- Part II : Performance_schema
- Part II : Useful tips
Nginx is a web server that can also function as a reverse proxy, load balancer, and HTTP server. It is known for its stability, performance, simple configuration, rich feature set, and low resource usage. The document provides instructions on how to configure Nginx as a reverse proxy for virtual hosting. This involves deploying Nginx, configuring a domain to point to the Nginx server, creating a configuration file matching the domain name, and modifying the file to proxy requests to the actual application server. Once configured, requests for the domain will be handled by Nginx and routed to the backend application server.
This document discusses tuning Apache web server performance. It explains that there is no single solution and each site has unique requirements. It recommends monitoring the server to understand usage patterns and identify areas for tuning. Suggested tuning techniques include optimizing Apache and OS configuration, adding caching, and pre-rendering dynamic content. The document stresses acting based on monitoring results and not overloading the system.
The document discusses using plProxy and pgBouncer to split a PostgreSQL database horizontally and vertically to improve scalability. It describes how plProxy allows functions to make remote calls to other databases and how pgBouncer can be used for connection pooling. The RUN ON clause of plProxy is also summarized, which allows queries to execute on all partitions or on a specific partition.
Introduction to performance tuning perl web applicationsPerrin Harkins
This document provides an introduction to performance tuning Perl web applications. It discusses identifying performance bottlenecks, benchmarking tools like ab and httperf to measure performance, profiling tools like Devel::NYTProf to find where time is spent, common causes of slowness like inefficient database queries and lack of caching, and approaches for improvement like query optimization, caching, and infrastructure changes. The key messages are that performance issues are best identified through measurement and profiling, database queries are often the main culprit, and caching can help but adds complexity.
APC (Alternative PHP Cache) is a PHP extension that caches and optimizes the opcodes generated by the Zend Engine. It stores precompiled PHP scripts in shared memory, improving performance by avoiding the need to parse and compile scripts on each request. APC offers opcode caching, content caching using functions like apc_add(), and upload progress reporting. Benchmark tests showed that using APC can nearly double the requests per second and reduce the average request time by over half compared to not using a opcode cache.
This document discusses MongoDB configuration and operations in the cloud. It describes:
1) The authors' 12-node MongoDB cluster configuration running on AWS EC2 with several replica sets and a total data size of 110GB.
2) Key considerations for MongoDB in the cloud including memory usage, fragmentation, elections, and manual primary changes.
3) Additional topics like sharding, rebalancing data, mongos behavior during elections, failure handling, and monitoring with MMS and Nagios.
Installation of sap HANA DB system on SUSE Linuxmehboobhafz
The document outlines the steps to install SAP HANA on SUSE Linux, including creating partitions and logical volumes for the operating system and HANA database, setting passwords and IP addresses, extracting data files using SAPCAR, running the HANA database setup, and setting permissions on installation paths. Key steps are to create a 400GB volume for the HANA database, extract data files using SAPCAR, and give full access permissions to installation directories.
/* pOrt80BKK */ - PHP Day - PHP Performance with APC + Memcached for WindowsFord AntiTrust
This document discusses using APC and Memcached to improve PHP performance on Windows. It provides an overview of how APC works as an opcode cache to improve performance by caching compiled PHP scripts. Memcached is described as an in-memory database for additional caching of data like sessions. The document outlines how to install and configure both APC and Memcached on Windows and provides benchmark results showing significant performance improvements from using the caches.
This document discusses various techniques for optimizing website performance, including:
1. Network optimizations like compression, HTTP caching, and keeping connections alive.
2. Structuring content efficiently and using tools like YSlow to measure performance.
3. Application caching of pages, database queries, and other frequently accessed content.
4. Database tuning through indexing, query optimization, and offloading text searches.
5. Monitoring resource usage and business metrics to ensure performance meets targets.
Enterprise grade deployment and security with PostgreSQLHimanchali -
This document summarizes an enterprise deployment of PostgreSQL at a large mobile advertising company. It discusses:
1) The company uses PostgreSQL for transaction processing and reporting across 60 servers storing 10GB to 20TB of data each, with the critical databases averaging 80GB and handling 18,000 queries per second.
2) To achieve 99.99% uptime, the company employs disaster recovery planning including cascaded replication across data centers and regular disaster drills to test backups.
3) The company uses Puppet for configuration management, stored procedures to optimize queries, monitoring tools, and access control and encryption to secure user access and network traffic.
The document provides instructions for installing and configuring various Linux server applications and services, including Jabberd, Sendmail, Qpopper, Squirrelmail, Samba, and others. It describes downloading and extracting source files, editing configuration files, and commands to compile, install, and start the servers. The instructions are provided in a step-by-step format intended for novice Linux system administrators.
Out of the box replication in postgres 9.4(pg confus)Denish Patel
This document contains notes from a presentation on PostgreSQL replication. It discusses write-ahead logs (WAL), replication history in PostgreSQL from versions 7.0 to 9.4, how to set up basic replication, tools for backups and monitoring replication, and demonstrates setting up replication without third party tools using pg_basebackup, replication slots, and pg_receivexlog. It also includes contact information for the presenter and an invitation to join the PostgreSQL Slack channel.
Today's high-traffic web sites must implement performance-boosting measures that reduce data processing and reduce load on the database, while increasing the speed of content delivery. One such method is the use of a cache to temporarily store whole pages, database recordsets, large objects, and sessions. While many caching mechanisms exist, memcached provides one of the fastest and easiest-to-use caching servers. Coupling memcached with the alternative PHP cache (APC) can greatly improve performance by reducing data processing time. In this talk, Ben Ramsey covers memcached and the pecl/memcached and pecl/apc extensions for PHP, exploring caching strategies, a variety of configuration options to fine-tune your caching solution, and discusses when it may be appropriate to use memcached vs. APC to cache objects or data.
This document summarizes a presentation given by Muga Nishizawa on recent updates to Embulk. Some key points include:
- Embulk is an open-source tool for parallel bulk data loading between various sources and destinations using plugins.
- Recent updates include new plugins, performance improvements, and over 150 pull requests merged since the last meetup.
- Future plans include improving tolerance to input source changes and a new "embulk-filter-calcite" plugin to transform data via SQL queries.
Embulk is an open-source tool for bulk loading data between various data sources. It provides parallel execution, data validation, error recovery, and other features. Customers use Embulk to upload various file formats and data sources to Treasure Data. The architecture includes a data connector that submits Embulk jobs to connector workers, which generate Embulk configurations and load data directly into Treasure Data using a private output plugin. To scale to large data loads, an optional MapReduce executor can run Embulk tasks on Hadoop clusters in parallel.
So, you know how to deploy your code, what about your database? This talk will go through deploying your database with LiquiBase and DBDeploy a non-framework based approach to handling migrations of DDL and DML.
This document discusses profiling PHP applications to improve performance. It recommends profiling during development to identify inefficiencies. The document introduces Xdebug for profiling PHP code and Webgrind, a PHP frontend for visualizing Xdebug profiles. It provides an example of profiling a sample PHP application, identifying issues, making code changes, and verifying performance improvements through re-profiling.
Improving PHP Application Performance with APCvortexau
This document discusses how to improve PHP application performance using the APC opcode cache. Installing APC yields a performance gain with default settings by caching opcodes for faster execution. Further optimization includes increasing the shared memory size and disabling file stat checks, which requires a server restart when files change. Caching variables like database query results with APC can also boost performance. In conclusion, APC is an effective way to enhance PHP application speed with only minor configuration changes required.
- The document provides biographical information about Sri Rajan, including that he is from India, has worked in IT for over 10 years including 6 years at Rackspace, and has expertise in Linux, OpenStack, and automation.
- It also provides an overview of Rackspace, including that they have over 5,000 employees serving customers in over 120 countries from 9 data centers worldwide.
- Sri Rajan's contact information is included at the end.
This document discusses how to compress and decompress payloads in Mule flows. It describes using the gzip-compress-transformer to compress a payload, which reduces its size, and the gzip-uncompress-transformer to decompress it back to the original size. An example is provided of a flow that picks up a 83 KB file, compresses it reducing it to 21.99 KB, then decompresses it back to the original 83 KB size.
DATABASE AUTOMATION with Thousands of database, monitoring and backupSaewoong Lee
This is my presentation document at AnsibleFest 2018 in Austin, Texas.
This topic is ‘Database Automation with thousands of database, monitoring and backup’.
In this document I want to tell you database automation using Ansible.
So I expect to give more confidence to infra engineer like me.
MySQL 5.7 innodb_enhance_partii_20160527Saewoong Lee
Release Date : 2016.05.27
Version : MySQL 5.7
Index :
- Part I : InnoDB Performance
- Part I : InnoDB Buffer Pool Flushing
- Part I : InnoDB internal Transaction General
- Part I : InnoDB Improved adaptive flushing
- Part II : InnoDB Online DDL
- Part II : Tablespace management
- Part II : InnoDB Bulk Load for Create Index
- Part II : InnoDB Temporary Tables
- Part II : InnoDB Full-Text CJK Support
- Part II : Support Syslog on Linux / Unix OS
- Part II : Performance_schema
- Part II : Useful tips
Nginx is a web server that can also function as a reverse proxy, load balancer, and HTTP server. It is known for its stability, performance, simple configuration, rich feature set, and low resource usage. The document provides instructions on how to configure Nginx as a reverse proxy for virtual hosting. This involves deploying Nginx, configuring a domain to point to the Nginx server, creating a configuration file matching the domain name, and modifying the file to proxy requests to the actual application server. Once configured, requests for the domain will be handled by Nginx and routed to the backend application server.
This document discusses tuning Apache web server performance. It explains that there is no single solution and each site has unique requirements. It recommends monitoring the server to understand usage patterns and identify areas for tuning. Suggested tuning techniques include optimizing Apache and OS configuration, adding caching, and pre-rendering dynamic content. The document stresses acting based on monitoring results and not overloading the system.
The document discusses using plProxy and pgBouncer to split a PostgreSQL database horizontally and vertically to improve scalability. It describes how plProxy allows functions to make remote calls to other databases and how pgBouncer can be used for connection pooling. The RUN ON clause of plProxy is also summarized, which allows queries to execute on all partitions or on a specific partition.
Introduction to performance tuning perl web applicationsPerrin Harkins
This document provides an introduction to performance tuning Perl web applications. It discusses identifying performance bottlenecks, benchmarking tools like ab and httperf to measure performance, profiling tools like Devel::NYTProf to find where time is spent, common causes of slowness like inefficient database queries and lack of caching, and approaches for improvement like query optimization, caching, and infrastructure changes. The key messages are that performance issues are best identified through measurement and profiling, database queries are often the main culprit, and caching can help but adds complexity.
APC (Alternative PHP Cache) is a PHP extension that caches and optimizes the opcodes generated by the Zend Engine. It stores precompiled PHP scripts in shared memory, improving performance by avoiding the need to parse and compile scripts on each request. APC offers opcode caching, content caching using functions like apc_add(), and upload progress reporting. Benchmark tests showed that using APC can nearly double the requests per second and reduce the average request time by over half compared to not using a opcode cache.
This document discusses MongoDB configuration and operations in the cloud. It describes:
1) The authors' 12-node MongoDB cluster configuration running on AWS EC2 with several replica sets and a total data size of 110GB.
2) Key considerations for MongoDB in the cloud including memory usage, fragmentation, elections, and manual primary changes.
3) Additional topics like sharding, rebalancing data, mongos behavior during elections, failure handling, and monitoring with MMS and Nagios.
Installation of sap HANA DB system on SUSE Linuxmehboobhafz
The document outlines the steps to install SAP HANA on SUSE Linux, including creating partitions and logical volumes for the operating system and HANA database, setting passwords and IP addresses, extracting data files using SAPCAR, running the HANA database setup, and setting permissions on installation paths. Key steps are to create a 400GB volume for the HANA database, extract data files using SAPCAR, and give full access permissions to installation directories.
/* pOrt80BKK */ - PHP Day - PHP Performance with APC + Memcached for WindowsFord AntiTrust
This document discusses using APC and Memcached to improve PHP performance on Windows. It provides an overview of how APC works as an opcode cache to improve performance by caching compiled PHP scripts. Memcached is described as an in-memory database for additional caching of data like sessions. The document outlines how to install and configure both APC and Memcached on Windows and provides benchmark results showing significant performance improvements from using the caches.
This document discusses various techniques for optimizing website performance, including:
1. Network optimizations like compression, HTTP caching, and keeping connections alive.
2. Structuring content efficiently and using tools like YSlow to measure performance.
3. Application caching of pages, database queries, and other frequently accessed content.
4. Database tuning through indexing, query optimization, and offloading text searches.
5. Monitoring resource usage and business metrics to ensure performance meets targets.
Enterprise grade deployment and security with PostgreSQLHimanchali -
This document summarizes an enterprise deployment of PostgreSQL at a large mobile advertising company. It discusses:
1) The company uses PostgreSQL for transaction processing and reporting across 60 servers storing 10GB to 20TB of data each, with the critical databases averaging 80GB and handling 18,000 queries per second.
2) To achieve 99.99% uptime, the company employs disaster recovery planning including cascaded replication across data centers and regular disaster drills to test backups.
3) The company uses Puppet for configuration management, stored procedures to optimize queries, monitoring tools, and access control and encryption to secure user access and network traffic.
The document provides instructions for installing and configuring various Linux server applications and services, including Jabberd, Sendmail, Qpopper, Squirrelmail, Samba, and others. It describes downloading and extracting source files, editing configuration files, and commands to compile, install, and start the servers. The instructions are provided in a step-by-step format intended for novice Linux system administrators.
Out of the box replication in postgres 9.4(pg confus)Denish Patel
This document contains notes from a presentation on PostgreSQL replication. It discusses write-ahead logs (WAL), replication history in PostgreSQL from versions 7.0 to 9.4, how to set up basic replication, tools for backups and monitoring replication, and demonstrates setting up replication without third party tools using pg_basebackup, replication slots, and pg_receivexlog. It also includes contact information for the presenter and an invitation to join the PostgreSQL Slack channel.
Today's high-traffic web sites must implement performance-boosting measures that reduce data processing and reduce load on the database, while increasing the speed of content delivery. One such method is the use of a cache to temporarily store whole pages, database recordsets, large objects, and sessions. While many caching mechanisms exist, memcached provides one of the fastest and easiest-to-use caching servers. Coupling memcached with the alternative PHP cache (APC) can greatly improve performance by reducing data processing time. In this talk, Ben Ramsey covers memcached and the pecl/memcached and pecl/apc extensions for PHP, exploring caching strategies, a variety of configuration options to fine-tune your caching solution, and discusses when it may be appropriate to use memcached vs. APC to cache objects or data.
This document summarizes a presentation given by Muga Nishizawa on recent updates to Embulk. Some key points include:
- Embulk is an open-source tool for parallel bulk data loading between various sources and destinations using plugins.
- Recent updates include new plugins, performance improvements, and over 150 pull requests merged since the last meetup.
- Future plans include improving tolerance to input source changes and a new "embulk-filter-calcite" plugin to transform data via SQL queries.
Embulk is an open-source tool for bulk loading data between various data sources. It provides parallel execution, data validation, error recovery, and other features. Customers use Embulk to upload various file formats and data sources to Treasure Data. The architecture includes a data connector that submits Embulk jobs to connector workers, which generate Embulk configurations and load data directly into Treasure Data using a private output plugin. To scale to large data loads, an optional MapReduce executor can run Embulk tasks on Hadoop clusters in parallel.
So, you know how to deploy your code, what about your database? This talk will go through deploying your database with LiquiBase and DBDeploy a non-framework based approach to handling migrations of DDL and DML.
This document discusses profiling PHP applications to improve performance. It recommends profiling during development to identify inefficiencies. The document introduces Xdebug for profiling PHP code and Webgrind, a PHP frontend for visualizing Xdebug profiles. It provides an example of profiling a sample PHP application, identifying issues, making code changes, and verifying performance improvements through re-profiling.
This document provides strategies for optimizing MySQL performance as databases grow in complexity and size. It discusses ways to optimize queries, schemas, hardware, software configuration, caching, and monitoring. The key lessons are to optimize queries, choose appropriate data types and storage engines, configure MySQL and cache settings properly, benchmark and monitor performance, and scale reads and writes separately.
The document provides an overview of PHP web development. It discusses the history and basics of PHP, including setting up a development environment and writing simple PHP code. It also covers MySQL databases and how to connect to and query a database from PHP. Content management systems (CMS) are explained, using the mbstu.ac.bd site as an example. Advanced topics like frameworks, Ajax, and JavaScript libraries are briefly introduced.
Redis provides better performance than Memcached as a cache backend for Magento. Testing showed Redis handled 50,000 cache records in 6 hours compared to Memcached handling over 10 million in the same time. Full page cache performance tests found Redis was 17-20% faster than Memcached. While Redis has some limitations, its support for tagging, replication, and larger object sizes make it a more reliable and scalable alternative to Memcached for Magento caching.
Preparing for Upgrade to SharePoint 2010 with Joel Oleson Quest Software WebcastJoel Oleson
As we ramp up to SharePoint 2010, most still haven't done the basic things to get their systems and clients ready for the bits when they arrive. There is a lot that can be done today, and tools that have been shipped in SP2 to get us ready. Here's quick practical ways to use these tools with a quick rundown to getting prepared for SharePoint 2010
This presentation discusses performance and scalability testing and optimization for Drupal websites. It covers capacity planning, tools for testing and analysis, common bottlenecks, caching, database optimization, and Apache configuration tips. Specific technologies and modules mentioned include Varnish, APC, MySQL query cache, and Drupal caching.
Performance Optimization of Rails ApplicationsSerge Smetana
The document discusses optimizing the performance of Ruby on Rails applications. It covers optimizing Ruby code, Rails code, database queries, using alternative Ruby implementations like JRuby, and optimizing for production environments including shared filesystems, load balancing, and the frontend. Specific optimizations discussed include rewriting parts of the Date class in C, template inlining in Rails, pushing SQL conditions into subqueries, and using memcached instead of filesystem caching on a shared network.
A complete guide of optimizing Magento performance systematically, including LAMP(Linux, Apache, MySQL, PHP) optimization, tuning inside Magento and useful tools.
The document provides an overview of scaling principles for web applications, beginning with optimizing a single server application and progressing to more advanced architectures involving load balancing, multiple web/application servers, and multiple database servers. It discusses profiling applications to identify bottlenecks, various caching and optimization strategies, Apache configuration for handling load, and links to additional resources on related topics.
The document provides an overview of scaling principles for web applications, beginning with optimizing a single server application and progressing to more advanced architectures involving load balancing, multiple web/application servers, and multiple database servers. It discusses profiling applications to identify bottlenecks, various caching and optimization strategies, Apache configuration for prefork MPM, and load balancing technologies like DNS round robin, Apache reverse proxy, HAProxy and Pound. Links are provided to additional resources on related topics.
This document provides information on improving Drupal performance through various techniques including performance testing, caching, optimizing database and server configurations, using tools like Varnish, load balancers, and CDNs, and addressing inefficient code. It also discusses a case study of using scalable cloud hosting and caching strategies to handle peak traffic for a site during major awards events.
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. http://www.allpass4sure.com/microsoft-pdf-70-410.html
Matteo Moretti discusses scaling PHP applications. He covers scaling the web server, sessions, database, filesystem, asynchronous tasks, and logging. The key aspects are decoupling services, using caching, moving to external services like Redis, S3, and RabbitMQ, and allowing those services to scale automatically using techniques like auto-scaling. Sharding the database is difficult to implement and should only be done if really needed.
Drupal performance optimization best practices include:
- Disabling unused modules and cron on production to reduce overhead
- Configuring caching at the application level with modules like Boost and Memcache
- Optimizing server configuration through APC caching, CDN integration, browser caching, and cron job configuration
- Improving database performance by optimizing InnoDB settings and enabling the query cache
The document provides best practices for optimizing Drupal performance at the application, server, and database levels to reduce bottlenecks and improve load times.
My slides from WordCamp Dhaka 2019 on WordPress Scaling. In this session I explained performance optimisation using HTTP/2, Caching and compressing resources.
I also explained how to Dockerize WordPress to make it easier to scale.
This document contains a sample exam for the Microsoft 70-412 certification exam. It includes 6 multiple choice questions about configuring advanced Windows Server 2012 services. Key points covered in the questions include:
- Using the Dfsdiag tool to check domain controller configuration and DFS namespace settings.
- Creating site links between Active Directory sites to support replication of all naming contexts.
- Enabling migrated users from a trusted forest to access resources by disabling SID filtering on an external trust.
- Configuring a server as the first domain controller in a new test forest while matching the functional level of an existing production forest.
- Running Adprep.exe on a Windows Server 2008 R2 domain controller to update
1. The document provides instructions for installing CentOS and setting up a DNS server on the installed CentOS system.
2. It describes downloading and burning the CentOS ISO, installing it on a computer, and configuring the network interfaces and other installation options.
3. It also explains how to generate an rndc key for bind, edit the rndc.conf and named.conf files, and enable DNS services on the new CentOS server.
28. Take a look at the RailsCast http://railscasts.com/episodes/181-include-vs-joins Use includes if you need to use the method on the associated model Use joins if you need to filter the objects loaded by SQL.
35. Know your API If you are doing something that you think should be part of ruby. It probably is. inject map join compact uniq DON’T RECREATE THESE METHODS (maybe inject but….)
36. INJECT SUCKS when…. object.inject({}) do |h, new_h| new_h[h.id] = h.some_method new_h end new_array = Object.map do |obj| [obj.id , obj.some_method] end Hash[new_array]
38. Class SomeController < ActionController::Base def edit @post = Post.find(id) form_info end def update @post = Post.find(id) if @post.update_attributes(params[:post]) redirect_to :action => :index else form_info render :edit end end end private defform_info @states = State.find(:all).map{|s| [s.name, s.id]} end end
45. You need to make sure that your Gemfile specifies that the ruby-debug19 gem is available in both the test and development environments by specifying it using group :test, :development in the Gemfile
61. Set the value to about 2.5Gig less than your system RAM If you share your DB with memcached or passenger or anything else you need to set this value to have less RAM
69. Index the first 10 charactersexecute('CREATE INDEX users_last_name_ten ON users (last_name(8));') execute('CREATE UNIQUE INDEX users_email_ten ON users (email(10));')
78. Jammitvs Asset Packager Both work. I like Jammit. Asset Packager works on Heroku http://www.viget.com/extend/static-asset-packaging-rails-3-heroku/
81. Counter Cache Great when you do things like: User.groups.size This value would be stored in the users table. http://railscasts.com/episodes/23-counter-cache-column
83. Background Processes Delayed Job resque Workling & Starling Rabbit MQ Lot of tasks don’t need to be real time. Give your users inboxes or emails with tokens to receive the info. Example: PDF generation, reports, cleanup of your cart.
84. COOL STUFF MemProf NewRelic Memcached Combine your SQL DB with noSQL
My name is David Henner, and today I’ll talk about optimizing the obvious.
This is my web site, twitter, github, and you can contact me at drhenner@rorecommerce.com
Ask question and listen. Memcached, noSQL, memprof.Tell them about a project manager you had that thought it was adding a lot more functionality to one page. More glitter, and bells and whistles.
Paperclip does no optimize images after they are re-sized. Make sure your images are optimized for each size.
This is my web site, twitter, github, and you can contact me at drhenner@rorecommerce.com