Академический Документы
Профессиональный Документы
Культура Документы
para Desenvolvedores
By Douglas V. Pasqua
Zend Certified Engineer / LPI / SCJP
douglas.pasqua@gmail.com
Objetivos
- Google
9 Abril 2010
Tópicos Apache
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Tópicos MySQL
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Apache, AllowOverride
AuthUserFile /home/pathto/.htpasswd
AuthType Basic
AuthName "Secret Place"
DocumentRoot /var/www
<Directory />
AllowOverride None
</Directory>
Apache, AllowOverride
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Apache, ExtendedStatus
● status.conf:
<IfModule mod_status.c>
<Location /server-status>
SetHandler server-status
Allow from all
</Location>
ExtendedStatus Off
<IfModule mod_proxy.c>
ProxyStatus On
</IfModule>
</IfModule>
Apache
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Apache, SymLinks
DocumentRoot /www/htdocs
<Directory />
Options FollowSymLinks
</Directory>
Apache
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Apache, KeepAlive
KeepAlive On
Apache, KeepAlive
KeepAlive On
MaxKeepAliveRequests 10000
Apache, KeepAlive
KeepAlive On
MaxKeepAliveRequests 10000
KeepAliveTimeout 3
Apache
● AllowOverride
● ExtendedStatus
● SymLinks
● KeepAlive
● MaxClients
Apache, MaxClients
● RAM
# free -m (6109184)
[mysqld]
...
log-slow-queries
long_query_time = 1
log-slow-queries = /var/log/mysql-slow.log
MySQL, Consultas Lentas
[mysqld]
...
max_connections = 200
● Toda vez que o MySQL abre uma tabela, coloca ela em cache.
table_cache = max_connections * n
# cat /proc/sys/fs/file-max
MySQL
[mysqld]
...
query_cache_size = 128M
MySQL
Threads_created
Número de Threads criadas desde que o MySQL foi iniciado.
Connections
Número total de conexões desde que o MySQL foi iniciado.
MySQL, thread_cache_size
Threads_created
Threads_created: 636
MySQL, thread_cache_size
Connections:
Connections: 24340093
MySQL, thread_cache_size
Threads_created: 636
Connections: 24340093
zend_extension=/usr/lib/php5/20090626/xdebug.so
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = /log/xdebug
PHP, Profiler
zend_extension=/usr/lib/php5/20090626/xdebug.so
xdebug.profiler_enable = 1
xdebug.profiler_output_dir = /log/xdebug
● Finalizando:
● Instalando WebGrind
$ cd /var/www
$ sudo wget http://webgrind.googlecode.com/files/webgrind-release-1.0.zip
$ unzip webgrind-release-1.0.zip
PHP, Profiler
● Configurando webgrind
● config.php:
● Ideal para:
● Ideal para:
● Instalando:
session.save_handler = memcached
session.save_path = "127.0.0.1:11211"
PHP
● eAccelerator
○ Software Livre
○ Apresenta melhor desempenho que outros aceleradores de
código PHP e normalmente utiliza menos memória.
○ Requer mais tempo de administração e mais ajustes finos
comparado com APC.
○ Compátivel com Zend Optimizer
○ Suporte para PHP 5.3
PHP, aceleradores de código
● XCache
○ Software Livre
○ Apresenta desempenho próximo do eAccelerator
○ Mantido pelo mesmo desenvolvedor do lighttpd
○ Suporte para Windows
○ Suporte para PHP 5.3
PHP, aceleradores de código
● Zend Server
○ Opção comercial
● Instalando:
$ cp /usr/share/doc/php-apc/apc.php.gz /var/www
$ cd /var/www $ gunzip apc.php.gz
● Definindo senha de administração (apc.php):
PHP, APC
● Interface Administrativa:
PHP, APC
● Frontend
○ Core
○ Class
○ File
○ Function
○ Output
○ Page
○ Capture
PHP, Zend_Cache
● Backend
○ File
○ APC
○ Zend Server
○ XCache
○ Sqllite
○ memcached
○ TowLevels
○ Static
PHP, Zend_Cache
● IaaS (Infrastructure-as-a-Service)
○ Você é responsável pela infraestrutura
○ Configuração de webserver, banco de dados, etc.
○ Usuário root
PHP, Cloud
● IaaS (Infrastructure-as-a-Service)
○ Você é responsável pela infraestrutura
○ Configuração de webserver, banco de dados, etc.
○ Usuário root
● PaaS (Plataforme-as-a-Service)
○ Foco no desenvolvimento da aplicação
○ Interação com a plataforma através de APIs, Webservice,
REST
PHP, Cloud
● Amazon
○ Amazon S3 (Simple Storage Service)
○ Simple Queue Service
○ SimpleDB
○ EC2 (Elastic Compute Cloud)
○ Auto Scaling
http://aws.amazon.com/sdkforphp/
PHP, Cloud
● Windows Azure
○ Blob Storage
○ Table Storage
○ Queue Storage
http://phpazure.codeplex.com/
PHP, Cloud
● Outros
○ Nirvanix
○ Rackspace
○ IBM SmartCloud
http://www.phpcloud.com
PHP, Cloud
● Zend_Cloud
○ Componente do Zend Framework
○ "SimpleCloud"
○ Portabilidade
■ Amazon
■ Windows Azure
■ Nirvanix
http://www.simplecloud.org
http://framework.zend.com/manual/en/zend.cloud.html
PHP, Cloud
http://aws.amazon.com/s3/
PHP, Cloud
https://console.aws.amazon.com/s3/
PHP, Cloud
● cloud.ini:
PHP, Cloud
http://<bucket-name>.s3.amazonaws.com/imagens/zend-logo.png
ou
http://s3.amazonaws.com/<bucket-name>/imagens/zend-logo.png
PHP, Cloud
douglas.pasqua@gmail.com