Zend Framework 1.11.X na EC2

1° Instale o LAMP – http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html

2° Envie sua aplicação para a pasta /var/www/html. Se for via FTP, use o Filezilla, este tutorial ensina como se conectar na EC2: https://www.youtube.com/watch?v=e9BDvg42-JI

3° Configurar o /etc/httpd/conf/httpd.conf com o caminho da pasta do seu projeto e os requisitos exigidos pelo Zend. Altere as linhas:

293: 
DocumentRoot "/var/www/html/sua_app"

318:
<Directory "/var/www/html/sua_app">
  Options Indexes Multiviews FollowSymLinks
  AllowOverride All
  Order allow, deny
  Allow from all
</Directory>

4° Reinicie o HTTPD:

sudo service httpd restart

Se deseja acessar o seu banco de dados por algum programa, como HeidiSQL, lembre-se de abrir uma porta 3306 no SecurityGroup da sua instância EC2. Você pode abri-lá, também, após a criação de sua instância. 

Tutorial ensinando como se conectar com o HeidiSQL na EC2: http://vtvlab.wordpress.com/2011/12/13/connect-to-mysql-server-from-heidisql-with-ssh/

 

Pronto! =] … Qualquer dúvida comentem.

ec2xs3-nginx

Criando um webserver em Nginx para website estáticos na AWS

Houve uma demanda por sites estáticos e fomos experimentar usar o S3 da Amazon e encontramos algumas vantagens e desvantagens em relação ao EC2:

Vantagens

  • O S3 possui uma interface bastante amigável de gerenciamento de arquivos, sem necessitar ter um conhecimento técnico de administração de servidores para o envio de arquivos via SFTP;
  • É muito fácil para gerenciar o domínio junto ao S3 e o Route 53 (Você pode ver através desse tutorial, é completo: http://chadthompson.me/2013/05/static-web-hosting-with-amazon-s3/);

Desvantagens

  • O S3 não permite você configurar o servidor HTTP com isso não é possível ativar compactação GZIP, Cache e entre outros recursos que são muito importantes para a performance de um site que pode reduzir em média 50% o tempo de carregamento;
  • Não permite personalizar o servidor, ao contrário do EC2 que te oferece total autonomia para configurar;

Como sempre procuramos performance, ainda vamos manter nossos sites no EC2, mesmo sendo estáticos, simples e que necessitam de um pouco mais de esforço, garantimos maior performance aos nossos trabalhos.

Presumo que você já possua sua instância criada na EC2. Estou usando para esse exemplo Ubuntu 14.04.

Então vamos começar:

1° Instale o Nginx

sudo apt-get install nginx

2° Crie as pastas onde serão armazenados os arquivos do site. Como estamos utilizando o usuário ubuntu, vamos sempre dar permissão para este.

sudo mkdir /var/www/seusite
sudo chown ubuntu:ubuntu /var/www/seusite
sudo chmod 774 /var/www/seusite

3° Vamos editar o arquivo de configuração do Nginx:

sudo vim /etc/nginx/nginx.conf

Dentro do arquivo você vai configurar da seguinte forma:

user ubuntu ubuntu;
worker_processes 4;
pid /run/nginx.pid;

events {
 worker_connections 1024;
 # multi_accept on;
}

http {

 ##
 # Basic Settings
 ##

 sendfile on;
 tcp_nopush on;
 tcp_nodelay on;
 keepalive_timeout 60;
 keepalive_requests 100000;
 types_hash_max_size 2048;
 # server_tokens off;
 ignore_invalid_headers on;
 send_timeout 60;

 access_log off;

 server_names_hash_bucket_size 128;
 # server_name_in_redirect off;

 include /etc/nginx/mime.types;
 default_type application/octet-stream;

 ##
 # Logging Settings
 ##

 access_log /var/log/nginx/access.log;
 error_log /var/log/nginx/error.log;

 ##
 # Gzip Settings
 ##

 gzip on;
 gzip_disable "msie6";

 # gzip_vary on;
 gzip_proxied any;
 gzip_comp_level 5;
 # gzip_buffers 16 8k;
 gzip_http_version 1.1;
 gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

 ##
 # nginx-naxsi config
 ##
 # Uncomment it if you installed nginx-naxsi
 ##

 #include /etc/nginx/naxsi_core.rules;

 ##
 # nginx-passenger config
 ##
 # Uncomment it if you installed nginx-passenger
 ##

 #passenger_root /usr;
 #passenger_ruby /usr/bin/ruby;

 ##
 # Virtual Host Configs
 ##

 include /etc/nginx/conf.d/*.conf;
 include /etc/nginx/sites-enabled/*;

 open_file_cache max=200000 inactive=20s;
 open_file_cache_valid 30s;
 open_file_cache_min_uses 2;
 open_file_cache_errors on;
}

Nessa configuração já estão atribuídos várias dicas de performance, que você também pode acompanhar por aqui: http://dak1n1.com/blog/12-nginx-performance-tuning

5° Vamos garantir que o nosso usuário tem acesso aos arquivos de configuração:

sudo chown ubuntu:ubuntu /var/log/nginx/error.log
sudo chown ubuntu:ubuntu /etc/nginx/nginx.conf

6° Ao final teste se a sintaxe do nginx está ok:

nginx -t

Possivelmente pode aparecer alguns erros de permissão, mas não se preocupe, o importante é a sintaxe está correta.

nginx: [warn] the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:1 nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 
nginx: [emerg] open() "/run/nginx.pid" failed (13: Permission denied) 
nginx: configuration file /etc/nginx/nginx.conf test failed

7° Agora vamos criar nosso virtual host:

cd /etc/nginx/conf.d/
sudo vim virtual.conf

No arquivo virtual.conf coloque a configuração para a pasta raiz do seu site:

server{
 listen 80;
 server_name seusite.com www.seusite.com;
 root /var/www/seusite;
}

Lembrando que isso só vai funcionar se a sua instância está configurada com Route 53, sendo o DNS do seu domínio também administrado pela Amazon.

É muito simples configurar um server Nginx na Amazon. Depois posso criar um bash para automatizar esse processo.

Referências:

http://wbotelhos.com/ruby-unicorn-e-nginx-na-amazon-ec2

http://charles.lescampeurs.org/2008/11/14/fix-nginx-increase-server_names_hash_bucket_size

http://www.tuicool.com/articles/jQFvma

http://omakoleg.blogspot.com.br/2012/04/install-nginx-on-amazom-ec-2-yum.html

http://dak1n1.com/blog/12-nginx-performance-tuning

http://chadthompson.me/2013/05/static-web-hosting-with-amazon-s3/

header_nav-abde493c8e96f0654446243c82f50560

RailsConf 2014 – Chicago

Todas as apresentações e os vídeos do RailsConf. =]

Slides

Concerns, Decorators, Presenters, Service Objects, Helpers, Help Me Decide! – Justin Gordon

https://www.icloud.com/iw/#keynote/BALu9Dy-Dcbu1PvWluyB_G-jq5C6URGmij2F/RailsConf-2014-Concerns-Decorators-Presenters-Service-Objects-Helpers-Help-Me-Decide-April-22-2014

GitHub repo for on boarding juniors devs
https://github.com/heddle317/onboarding

An Ode to 17 Databases in 33 minutes
http://slides.com/tobyhede/an-ode-to-17-database-in-33-minutes-railsconf-2014

Front-End: Fun, Not Frustration
http://roy.io/railsconf

Service Oriented Authentication – Jeremy Green
http://jagthedrummer.github.io/service_oriented_authentication/#/

Vídeos

Web applications with Ruby (not Rails)

 

Todos os vídeos: http://www.justin.tv/confreaks/b/523059070

Configurar Route 53 para usar o e-mail do Google

1° Acessa a sua conta da AWS, vá em Route 53 e selecione seu domínio:

1

2° Crie um nove Record Set do tipo MS e insira os valores do Google

2

3° Teste se deu certo.  Descubra o nome dos seus servidores através deste site http://www.kloth.net/services/nslookup.php . Insira o domínio e escolha a informação que você quer encontrar, no nosso caso escolha MX e veja se o resultado é o mesmo do Google.

3

 

Pronto =]

Permission denied public key bitbucket

Problema para fazer o push para seu repositório aqui está algumas dicas para resolver (em Windows):

1°: Encontre sua SSH id_rsa.pub. Geralmente ela se encontra no Windows nessa pasta C:\Users\seu-usuario\.ssh.

2° Copie o conteúdo da chave, que será semelhante a este:

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwrUAM8H5EsDBtaMy2/3w2sK9fIR2OLR2HyM/QHwX/KbKSq1B0t+3JMwVrihGOlQYV5hI8frPUR56ACbIwCHkYmORPnM/HZaonhWY2DMYLMohYPOAh6tFwNByV9v7R++15y1PvyXJv3DMnpaqorlautL3ffpZ2UwZH6oo9OqxbeZv4okSQb1LX45/PMMkQJ6NaLSDoYP0fT66qVeNyEpxdxz5HOGZJdR4fc7PlC72IOwcsDYuyXMUiqyS2e+NwyT6+NcpRE4xPOPbZ39o4x2uq5FuOvsbalWQlY0/nV37EYyLjjj/pD4+AbC5irV8E45Lagtp0vrKVO4aoxOQitu62Q== xxxxxxxxxxxxxxxxxxxxxxxxx

3° Acesse sua conta de usuário no Bitbucket. Manage Account > SSH Keys

4° Clique em Add Keys ou Adicionar Chave, crie um título e Cole o conteúdo da sua chave id_rsa.pub no campo Key. Em seguida salve.

5° Teste a conexão via terminal (eu uso o Git Bash).

ssh -T git@bitbucket.org

Apresentará esse resultado

logged in as seu-usuario

Pronto já pode realizar o push normalmente =] …

10 Effective Video Examples of Paper Prototyping

Paper prototyping is a commonly used low cost usability method for testing and evaluating web designs and applications. This method lets developers conduct tests before a single line of code has been written, and allows you to identify and fix any potential issues early on in development.

Paper prototyping is a variation of usability testing where representative users perform realistic tasks by interacting with a paper version of the interface that is manipulated by a person ‘playing computer,’ who doesn’t explain how the interface is intended to work.” Quote from Carolyn Snyder.

In this post we have collected our top 10 videos that not only illustrate how effective paper prototyping can be, they also show you how to cost effectively conduct your own tests and some of the videos have been animated, which are just amazing to view.

If you would like to know more about Paper Prototyping, you can try these useful resources:
• Paper Prototyping by Shawn Medero (A List Apart) »
• What is Paper Prototyping? (paperprototyping.com) »
• Paper Prototyping: Get User Data *Before* Coding (Jakob Nielsen’s Alertbox) »
• Paper Prototyping Methods (UsabilityNet) »
• Five Paper Prototyping Tips (uie.com) »
• Paper Prototyping on Wikipedia »
• Paper Prototyping PDF from ibm.com »

Paper Prototype Animation

Hanmail Paper Prototype


This video is a paper-based prototype for Daum’s web mail service, Hanmail.net made with Ajax.

Paper Prototype Website – Testing a Web Shop

The goal of this prototype is for the user to find and order a red (or purple)shirt with turtleneck for this prototype.

Usability Testing with a Paper Prototype

The video shows a Usability session with a paper prototype of a leave application.

Paper Mock-Up – Trip Plannin Concept

 

Lo-fi Web Prototyping

PhotoTron Paper Prototype

Paper Prototype Testing for User Centered Interface Design at Ai Minnesota.

Paper Prototype Demonstration

This is a demonstration of how to use a simple paper prototype technique to design the composition of a webpage.

iPhone App Paper Prototyping

 

Paper GMail Art

This video is not quite a paper prototype usability test, but it is pretty cool, and it has been built with paper after all. Its a video that Saatchi Moscow created and produced for Google to attract more Russian people on GMail. Enjoy.

Assim, é o que me interessa…

%d blogueiros gostam disto: