рдХреНрд▓рд╛рдЙрдб рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЧрд╣рди рд╡рд┐рдХрд╛рд╕ рдХреЛрдИ рднреА рдЙрджрд╛рд╕реАрди рдирд╣реАрдВ рдЫреЛрдбрд╝рддрд╛ рд╣реИред рд╣рдорд╛рд░рд╛ рдзреНрдпрд╛рди Amazon - Elasctic Cloud Compute рдкрд░ рд╣реИред
рдбрд░реНрдмреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ
рдиреЛрдб.рдЬреЗрдПрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░реНрдп рдерд╛ред Amazon Elastic Beanstalk рднреА рдиреЛрдб.рдЬреЗрдПрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╣рдо рдЦреБрдж рдХреЛ рдХреЗрд╡рд▓ Amazon EC2 рддрдХ рд╣реА рд╕реАрдорд┐рдд рд░рдЦреЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд╣рд▓реЗ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдиреЛрдб.js + nginx рдХреЗ рд╕рд╛рде рдЕрдореЗрдЬрд╝рди рд▓рд┐рдирдХреНрд╕ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдЕрдореЗрдЬрд╝реЕрди рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рдмреАрдирд╕реНрдЯреЙрдХ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдореЗрдЬрд╝реЕрди рд▓рд┐рдирдХреНрд╕ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ, рдиреЛрдб.рдЬреЗрдПрд╕ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдиреЛрдб рдХрд╛ рдЧреБрдЪреНрдЫрд╛ред рдЬреЗрдПрд╕ + рдирдЧреНрдиреЗрдХреНрд╕ рднреАред
ред
рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдПрдБ рдФрд░ EC2 рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк AWS рдХреЗ рд╕рд╛рде рдкрдВрдЬреАрдХреГрдд рд╣реИрдВ рдФрд░
AWS рдкреНрд░рдмрдВрдзрди рдХрдВрд╕реЛрд▓ рддрдХ рдкрд╣реБрдБрдЪ рд░рдЦрддреЗ рд╣реИрдВред
EC2 рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ:- AWS рдкреНрд░рдмрдВрдз рдХрдВрд╕реЛрд▓ рдкрд░ рдЬрд╛рдПрдВ
- рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпреВрдПрд╕ рдИрд╕реНрдЯ (рдПрдиред рд╡рд░реНрдЬреАрдирд┐рдпрд╛))
- рд╕реЗрд╡рд╛рдУрдВ рдкрд░ рдЬрд╛рдПрдВ -> рдХрдореНрдкреНрдпреВрдЯ рдФрд░ Nerworking -> EC2
- рд▓реЙрдиреНрдЪ рдЗрдВрд╕реНрдЯреЗрдВрд╕: рд╣рдо рдЙрдмрдВрдЯреВ рд╕рд░реНрд╡рд░ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ 13.04 x64 , рд╣рдо рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдиреНрдп рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рдХрд╛рд░ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ t1.micro)
- рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдХреЛ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рд╕реЗ рд╕реНрдЯреЗрдЯ рд░рдирд┐рдВрдЧ рдорд┐рд▓рддреА рд╣реИ
- рд╕рд░реНрд╡рд░ рдХреЛ ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ: рдЗрд╕рдХреЗ рд▓рд┐рдП, рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рдПрдХ рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдХрдиреЗрдХреНрдЯ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ -> рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди SSH рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд╕рд╛рде рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛:
$ ssh -i yourkey.pem ubuntu@ec2-184-119-234-139.us-east-1.compute.amazonaws.com
- рдкреИрд░рд╛ 6 рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
рд╣рдо рдЗрд╕ рдмрдВрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ:
node.js + derby + redis + mongodbрдПрдХ-рдПрдХ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред
Node.js. рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
Derby.js рдХреЗ рд▓рд┐рдП рд╣рдо
node.js 0.10.17 рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ
- рдбрд╛рдЙрдирд▓реЛрдб рд╕реНрд░реЛрдд:
$ wget http://nodejs.org/dist/v0.10.17/node-v0.10.17.tar.gz
- рдирд┐рдХрд╛рд▓реЗрдВ:
$ tar -xvf node-v0.10.17.tar.gz $ cd node-v0.10.17
- рд╕реЗрдЯ рдХрд░реЗрдВ:
$ sudo apt-get -y install checkinstall $ checkinstall -D --install=no --nodoc --pkgversion=0.10.17 --pkgname="Node.js 0.10.17" $ sudo dpkg -i node*.deb
- DerbyJS рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
$ sudo npm install -g derby
Redis 2.6.16 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
- рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛:
$ wget http://download.redis.io/releases/redis-2.6.16.tar.gz
- рдирд┐рдХрд╛рд▓реЗрдВ:
$ tar -xvf redis-2.6.16.tar.gz $ cd redis-2.6.16
- рд╕реЗрдЯ рдХрд░реЗрдВ:
$ sudo checkinstall -D --install=no --nodoc --pkgversion=2.6.16 --pkgname="Redis 2.6.16" $ sudo dpkg -i redis*.deb
- рдЕрдиреБрдХреВрд▓рди
$ sudo mkdir /etc/redis $ sudo mkdir /var/redis $ sudo cp utils/redis_init_script /etc/init.d/redis $ sudo cp redis.conf /etc/redis/6379.conf $ sudo vi /etc/redis/6379.conf
рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ
daemonize yes logfile /var/log/redis.log dir /var/redis/
рдлрд╝рд╛рдЗрд▓ рд╕рд╣реЗрдЬреЗрдВ - рд╣рдо рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:
$ sudo service redis start
- рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:
$ sudo update-rc.d redis defaults
- рд╣рдо рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реИрдВ:
$ redis-cli redis 127.0.0.1:6379> ping PONG redis 127.0.0.1:6379> exit
MongoDB рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
- рд╕реНрдерд╛рдкрдирд╛:
sudo apt-get -y install mongodb
- рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
$ service mongodb status
рдЙрддреНрддрд░ рдЙрджрд╛рд╣рд░рдг:
mongodb start/running, process 24815
рдбрд░реНрдмреА рдРрдк рдмрдирд╛рдПрдВ
- рд╕реГрдЬрди
$ mkdir ~/www $ cd ~/www $ derby new myapp $ cd myapp
- рд▓реЙрдиреНрдЪ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
$ nmp start
рдбреЗрдореЙрди рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдПрдВ
рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ:
$ cd ~/www/myapp $ nohup node server.js &
рдЖрдк
рдкрд░реНрдпрд╡реЗрдХреНрд╖рдХ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрджрд░реНрдн / рд╕реВрддреНрд░