Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
kumatch kumatch
6,883 views
Nodeを稼働させる
Node.js 大阪勉強会 2014-06-14
Software
◦
Related topics:
Node.js Development
•
Read more
4
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 35
2
/ 35
3
/ 35
4
/ 35
5
/ 35
6
/ 35
7
/ 35
8
/ 35
9
/ 35
10
/ 35
11
/ 35
12
/ 35
13
/ 35
14
/ 35
15
/ 35
16
/ 35
17
/ 35
18
/ 35
19
/ 35
20
/ 35
21
/ 35
22
/ 35
23
/ 35
24
/ 35
25
/ 35
26
/ 35
27
/ 35
28
/ 35
29
/ 35
30
/ 35
31
/ 35
32
/ 35
33
/ 35
34
/ 35
35
/ 35
More Related Content
PDF
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
by
zgock
PDF
Lxc で始めるケチケチ仮想化生活?!
by
Etsuji Nakai
PDF
Rancherで作る お手軽コンテナ運用環境!! ~ Kubenetes & Mesos 牧場でコンテナ牛を飼おう!~
by
Masataka Tsukamoto
PDF
多段LXC構成でOpenStackを構築 - LT@コンテナ型仮想化情報交換会LT
by
Yoshinari Kadokawa
PDF
GPU仮想化最前線 - KVMGTとvirtio-gpu -
by
zgock
ODP
自宅サーバ仮想化
by
anubis_369
PPTX
GitLabを16万8千光年ワープさせた話 GITLAB BIG UPGRADE PROJECT
by
Wataru NOGUCHI
PPTX
軽量Kubernetes環境 K3Sのご紹介
by
Tetsurou Yano
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
by
zgock
Lxc で始めるケチケチ仮想化生活?!
by
Etsuji Nakai
Rancherで作る お手軽コンテナ運用環境!! ~ Kubenetes & Mesos 牧場でコンテナ牛を飼おう!~
by
Masataka Tsukamoto
多段LXC構成でOpenStackを構築 - LT@コンテナ型仮想化情報交換会LT
by
Yoshinari Kadokawa
GPU仮想化最前線 - KVMGTとvirtio-gpu -
by
zgock
自宅サーバ仮想化
by
anubis_369
GitLabを16万8千光年ワープさせた話 GITLAB BIG UPGRADE PROJECT
by
Wataru NOGUCHI
軽量Kubernetes環境 K3Sのご紹介
by
Tetsurou Yano
What's hot
PDF
RancherでMesosクラスタをデプロイしてみる的ななにか
by
Masataka Tsukamoto
PDF
boot2docker の format-me の話
by
Kazuhiro Nishiyama
PDF
SocketStream入門
by
Kohei Kadowaki
PDF
LXC入門 - Osc2011 nagoya
by
Masahide Yamamoto
PDF
初心者がOpenIndianaで自宅サーバを作ったよって話
by
Masataka Tsukamoto
PPTX
これから始める人のための自動化入門~Ubuntu Jujuを使って〜– OpenStack最新情報セミナー 2015年7月
by
VirtualTech Japan Inc.
PDF
RancherがみつめるAWX 〜お前のコンテナ、息してるの?〜
by
Masataka Tsukamoto
PPTX
これから始める人のための自動化入門 〜Ubuntu Jujuを使って〜
by
VirtualTech Japan Inc.
PPTX
今時のDev opsの取り組み事例集
by
Wataru NOGUCHI
PDF
サーバ構築自動化 On aws sqaleの場合
by
Ryo Kuroda
PPTX
Ubuntu Jujuを使ったOpenStack環境構築 – OpenStack最新情報セミナー 2015年7月
by
VirtualTech Japan Inc.
PDF
Eucalyptus on OpenStack
by
irix_jp
PPTX
Dockerstart
by
chanwoopark29
PDF
20120731 c4 saリリースパーティlt
by
Kaz Watanabe
PDF
Eucalyptus 2.0 始めました!
by
Osamu Habuka
PPTX
shinken monitoringについて真剣に調べてみた結果
by
Tsuyoshi Torii
PDF
openSUSEの紹介とサーバ構築
by
Kento Kawakami
PPTX
SIerにおけるKubernetes活用(OSSユーザーによる勉強会-公開版)
by
Tetsurou Yano
PDF
20131019 Eucalyptus in OSC 2013 Tokyo/Fall
by
Osamu Habuka
PDF
最近のJuju/MAASについて 〜 15分版 - OpenStack最新情報セミナー 2017年11月
by
VirtualTech Japan Inc.
RancherでMesosクラスタをデプロイしてみる的ななにか
by
Masataka Tsukamoto
boot2docker の format-me の話
by
Kazuhiro Nishiyama
SocketStream入門
by
Kohei Kadowaki
LXC入門 - Osc2011 nagoya
by
Masahide Yamamoto
初心者がOpenIndianaで自宅サーバを作ったよって話
by
Masataka Tsukamoto
これから始める人のための自動化入門~Ubuntu Jujuを使って〜– OpenStack最新情報セミナー 2015年7月
by
VirtualTech Japan Inc.
RancherがみつめるAWX 〜お前のコンテナ、息してるの?〜
by
Masataka Tsukamoto
これから始める人のための自動化入門 〜Ubuntu Jujuを使って〜
by
VirtualTech Japan Inc.
今時のDev opsの取り組み事例集
by
Wataru NOGUCHI
サーバ構築自動化 On aws sqaleの場合
by
Ryo Kuroda
Ubuntu Jujuを使ったOpenStack環境構築 – OpenStack最新情報セミナー 2015年7月
by
VirtualTech Japan Inc.
Eucalyptus on OpenStack
by
irix_jp
Dockerstart
by
chanwoopark29
20120731 c4 saリリースパーティlt
by
Kaz Watanabe
Eucalyptus 2.0 始めました!
by
Osamu Habuka
shinken monitoringについて真剣に調べてみた結果
by
Tsuyoshi Torii
openSUSEの紹介とサーバ構築
by
Kento Kawakami
SIerにおけるKubernetes活用(OSSユーザーによる勉強会-公開版)
by
Tetsurou Yano
20131019 Eucalyptus in OSC 2013 Tokyo/Fall
by
Osamu Habuka
最近のJuju/MAASについて 〜 15分版 - OpenStack最新情報セミナー 2017年11月
by
VirtualTech Japan Inc.
Viewers also liked
PDF
Scalable Node.js with Redis Store
by
kamiyam .
PPTX
Node.js×mongo dbで3年間サービス運用してみた話
by
leverages_event
PDF
Iketeru Gopher 5 points
by
Takuya Ueda
PPTX
TitaniumとNode.jsは兄弟
by
Toshiro Yagi
PDF
東京Node学園 今できる通信高速化にトライしてみた
by
Yoshiki Shibukawa
PDF
Node.js patterns of module export / require
by
kumatch kumatch
PDF
Node.js勉強会 Framework Koa
by
kamiyam .
PDF
Extensible web
by
Jxck Jxck
PDF
9 anti-patterns for node.js teams
by
Jeff Harrell
PDF
webエンジニアのためのはじめてのredis
by
nasa9084
PDF
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
by
Mitsuru Ogawa
PDF
[AWSマイスターシリーズ]Amazon CloudWatch & Auto Scaling
by
Amazon Web Services Japan
PDF
ヒカルのGo 資料 Webアプリケーションの作り方
by
Yosuke Furukawa
PPTX
Socket.ioを使ってライフゲームで遊ぶ
by
孝平 高田
PDF
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
by
Yosaku Toyama
PDF
これからの Microservices
by
Toru Yamaguchi
PDF
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
by
Koichi Hamada
Scalable Node.js with Redis Store
by
kamiyam .
Node.js×mongo dbで3年間サービス運用してみた話
by
leverages_event
Iketeru Gopher 5 points
by
Takuya Ueda
TitaniumとNode.jsは兄弟
by
Toshiro Yagi
東京Node学園 今できる通信高速化にトライしてみた
by
Yoshiki Shibukawa
Node.js patterns of module export / require
by
kumatch kumatch
Node.js勉強会 Framework Koa
by
kamiyam .
Extensible web
by
Jxck Jxck
9 anti-patterns for node.js teams
by
Jeff Harrell
webエンジニアのためのはじめてのredis
by
nasa9084
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
by
Mitsuru Ogawa
[AWSマイスターシリーズ]Amazon CloudWatch & Auto Scaling
by
Amazon Web Services Japan
ヒカルのGo 資料 Webアプリケーションの作り方
by
Yosuke Furukawa
Socket.ioを使ってライフゲームで遊ぶ
by
孝平 高田
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
by
Yosaku Toyama
これからの Microservices
by
Toru Yamaguchi
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
by
Koichi Hamada
More from kumatch kumatch
PDF
AngularJSからReactに移ったケースの話
by
kumatch kumatch
PDF
Node platforms
by
kumatch kumatch
PDF
Node.js Error & Debug Leveling
by
kumatch kumatch
PDF
Learning a node stream
by
kumatch kumatch
PDF
[Node] Multiprocessing and runs continuously
by
kumatch kumatch
PDF
PHPカンファレンス関西2011/スマートフォン時代のWebシステム
by
kumatch kumatch
AngularJSからReactに移ったケースの話
by
kumatch kumatch
Node platforms
by
kumatch kumatch
Node.js Error & Debug Leveling
by
kumatch kumatch
Learning a node stream
by
kumatch kumatch
[Node] Multiprocessing and runs continuously
by
kumatch kumatch
PHPカンファレンス関西2011/スマートフォン時代のWebシステム
by
kumatch kumatch
Nodeを稼働させる
1.
Node を稼働させる in production 2014-06-14
2.
Yosuke Kumakura (kumatch) @kumatch Feedtailor
inc. Current game: Diablo3 reaper of souls
3.
「みんなどうやって Node を (production
で) 動かしているの?」 というお話があったので
4.
Agenda • これまでやった Node
production を振り返り ます。 • これから動かそうとしている人に参考になり そうな問題点をあげていきます。
5.
2011
6.
はじめての Node Node v0.4,
その後 v0.6 ! forever で起動するようにしていたが、Node v0.6.2 に上げたら プロセス操作できなくなってしまったので、しかたなく init.d ス クリプト + monit へ移行した。 node は nvm でインストール。deploy は独自 (rsync)
7.
2012
8.
Node 自体に慣れてきた Node v0.6
=> v0.8 ! 東京 Node 学園祭で「binary install しろ」と言 われて驚きながらも環境を作り直す。 プロセス管理は init.d or supervisord with monit
9.
2013
10.
インフラの構築&稼働方法の 転換期 Node v0.8 =>
v0.10 ! Chef + Capistrano によるインフラ構築へ移行 Node も nodejs recipe を使って binary install プロセス管理は upstart + monit へ。 (試験的に forever, pm2、最終的にはこの時は採用せず)
11.
Production Node サーバを 作るのに出くわす問題
12.
Node 実行環境 どうやって作るの?問題
13.
配布バイナリを使う • 公式配布バイナリに Windows,
OSX, Linux, Solaris 版あり • 各種 OS パッケージマネージャでも配布 • 少し古い場合あり
14.
配布バイナリを使う • Chef recipe
もあります。 • binary / source どちらからでも構築可能 • Version manager プログラムで入れる手も。 色んなバージョンで試せる。 導入するユーザと Path に注意
15.
Node 起動プログラム どうするの?問題
16.
機能性 柔軟性 pm2 / forever upstart init
scripts 先ほど色々あげていましたが… 環境に適した/やりやすい方法を選ぶ
17.
init scripts • shell
で出来ることなら大抵いけるはず • 自分で頑張れば何でもできる • 自分で全部頑張る必要あり
18.
upstart • init script
をもう少し書きやすく • 自動起動/プロセスが落ちたら再開など最低 限のプロセス管理機能が簡単に使える • その上で案外と色々できる
19.
forever (Node) • node
プロセスを常駐させるための module • プロセスが落ちても即時復帰 • 標準/エラー出力先, PID 管理なども自動で用意 される or 指定可能
20.
pm2 (Node) • forever
+ もっと便利な機能 • describe process • monitoring (CPU, memory) • Auto cluster (or fork)
21.
etc. • foreman • supervisor •
….
22.
自動起動させたい? • init.d +
node • upstart + node run • upstart + forever • upstart + pm2 もちろん • nohup node • forever start • pm2 start 別に…
23.
Node プロセス 誰で動かすの?問題
24.
意外と悩むプロセス所有権 • root or
専用ユーザ • 利用手段次第では、目的のユーザでプロセス を動かすのにちょっとだけ苦労する
25.
余談: root で動かせるならこんな手も var user
= “myapp”; ! if (process.getuid() == 0) { try { process.setuid(user); // 以後 myapp プロセスに } catch (e) { // undefined user } }
26.
Node プロセス メモリ い過ぎてない?問題
27.
基本的には GC されてないだけ •
V8 が自動的にタイミングを見つけて GC する • 一応手動で GC を起こすこともできる • --expose-gc オプション付きで Node 起動 • GC すると “Stop the world”
28.
(現実的な量で) メモリ利用量が多い傾向の内容 • (HTTP などの)
クライアント数が本当に多い • コード内で読み込む (require) ファイルが多い • (DB などの) コネクションインスタンスを扱っ ている
29.
Node プロセス CPU い過ぎてない?問題
30.
他に影響を与えない程度に CPU をがっつり使う傾向にある • 見てるタイミング次第で色々ある •
コード(処理のフロー)を見直す • (稀に) 本当に張り付いてしまっていることが ある • monit 等で CPU 張り付きプロセスを落とす
31.
Node Production サーバの ライフサイクル
32.
create server deploy application start /
run application Server lifecycle 1 initial setup stop application update / restart server
33.
create server (from template) deploy application start
application ($ pm2 start) destroy server Server lifecycle 2
34.
create server ($ heroku
create) deploy application ($ git push heroku) destroy server ($ heroku destroy) Server lifecycle 3 (heroku)
35.
まとめ • 「Node プロセスを動かす」部分のみに フォーカスして、考えるポイントとなる問題 を紹介 •
問題に対しての解法はいくつもある • サーバ/サービスをどう運用させたいかで 問題に対する解法を選ぶ
Download