Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
インフラ屋がRailsをやってみた #TechLunch
Search
Livesense Inc.
PRO
April 21, 2014
Technology
0
130
インフラ屋がRailsをやってみた #TechLunch
インフラ屋がRailsをやってみた
2013/11/16 (水) @ Livesense TechLunch
発表者:湖山 翔平
Livesense Inc.
PRO
April 21, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
2.4k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
51
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.5k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
440
26新卒_総合職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
37k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
260
EM候補者向け転職会議説明資料
livesense
PRO
0
130
Other Decks in Technology
See All in Technology
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
370
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
120
roppongirb_20250911
igaiga
0
190
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
330
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
210
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
210
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
190
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
260
2025年になってもまだMySQLが好き
yoku0825
8
4.5k
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
440
Obsidian応用活用術
onikun94
1
450
Featured
See All Featured
The Language of Interfaces
destraynor
161
25k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Unsuck your backbone
ammeep
671
58k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
How STYLIGHT went responsive
nonsquared
100
5.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Building Applications with DynamoDB
mza
96
6.6k
Gamification - CAS2011
davidbonilla
81
5.4k
Transcript
ϓϥοτϑΥʔϜ։ൃG γεςϜ։ൃ෦ɹ Copyright © LIVESENSE Inc. ބࢁ ᠳฏ Πϯϑϥ͕ RailsͰΞϓϦΛ࡞ͬͯΈͨ
·ͣ͡Ίʹ みなさん、僕のことを覚えてるでしょうか?
ࣗݾհ 湖山です。
ಛٕ 特技は・・・
ಛٕ ゲーム
-‐Counter-‐Strike 1.6-‐ MXP CUP 3位 (Team | Theory &
3pR) BIGLAN SOCKET 4 優勝(Team | Fellows) CS Code-‐Reality 準優勝(Team | Fellows) CSCTL Season2 優勝(Team | Speeder) CSCTL Season2.5 DeathMatch大会 優勝(個人) NightLAN 1on1 Match 優勝(個人) CSCTL Season3 優勝(Team | Speeder) Sion Shootout! 全勝(個人) ESWC日本予選 優勝(Team | Speeder) ESWC本選出場 (Team | Speeder) CCDT3 優勝(個人) CCDT4 優勝(個人) CCDT5 3位(個人) CS 1on1 Boom Headshot Cup 3Ґ (ݸਓ) CCDT6 優勝(個人) CCDT7 優勝(個人) CCDT8 準優勝(個人) FPS甲子園 in 秋葉原 出場(Team | Speeder) Survival of Fi[est 13 Expert部門優勝 (Team | Speeder) Survival of Fi[est 14 Expert部門優勝 (Team | Speeder) Survival of Fi[est 15 Expert部門優勝 (Team | Speeder) SteelSeriesとサポート契約 ドイツのmyRevengeとプロ契約 Asia e-‐Sports Cup 2012 日本予選優勝(Team | myRevenge) Asia e-‐Sports Cup 2012 本戦優勝(Team | myRevenge) -‐PaperMan-‐ 東京ゲームショウ2007 出演 PaperMan祭り in 秋葉原 出演 ゲームマスターとしてCykan社に勤務 -‐CrossFire-‐ Cross Fire Tournament League 優勝(Team | Fellows) Cross Fire オフラインイベント 特別講師として出演(Team | Fellows) -‐TV-‐ Road to ESWC (スカパー!) ήʔϜܦྺ 優勝
·ͣ͡Ίʹ 分かって頂けたところで、 本題に入りましょう。
·ͣ͡Ίʹ 事件はシステム開発部月次定例で発生
湖山 「稼働率出しました! みんなが見れるようにWebアプリにするよ!」 ((Webアプリそこまで難しくないだろう。Google先生もいるし)) ‑
ͳ͘ͳ͘ɻ ということで勉強も兼ねて RailsでWebアプリを作ることに。
ͳͥRailsΛબΜ͔ͩ ・会社がRailsに移行していってるから勉強も兼ねて ・Rubyを触ってみたかったから ・デザインがカッコいいし、楽そうだから(bootstrap) ・一度は「Railsでアプリ作った」と言ってみたかったから ・プラグインが便利でグラフにし易そう
Ͳͷఔͷϓϩάϥϛϯάྗʁ ちなみに。。 社会人4年目になります。 プログラムはPerl PHPをかじった程度。
Rubyは触ったことありません! アプリとか作ったこと有りません!
·ͣ࢝Ίͨ͜ͱ 流れを図にしてみた。
໊୳ఁί◦ϯ 図にして分かったこと。 とりあえずデータ取らないと始まらないということ。
ਅ࣮͍ͭҰͭ データを取る ‑ mysql 操作 ‑
グラフじゃない ‑ perlでいいんじゃね?
ग़དྷ·ͨ͠ Perlで作りました
Μͩɺվળͨ͠ ①時間の計算が難しかった➡エポック秒とやらで解決 ②エラー発生時間insertから復旧時間のinsertまで、 DBのconnectを切った。(DBに張り付きは良くない) ③テーブル見直しに時間がかかった
(誰かに見てもらうのが一番) ④executeで実行したらfinishできちんと閉じないと、 うまく動作しないことが分かったので修正
ބࢁؾ͍ͮͨ Railsでグラフ化するとき、 データを何度も再計算させると 負荷高くなるんじゃね?
·ͨ࡞Γ·ͨ͠ Rails用のテーブル(resultテーブル)を作成。 毎朝9時にでtotal_counts➡resultテーブルに計算 Perlで!
͜͜·ͰRailsͷͳ͠ あとはグラフにするだけ!順調!
ͱΓ͋͑ͣͲ͏͠Α͏͔ そういえば社内でグラフにするやつがあったような。 Gaiaさん
ಡΉ ソースコードを読んでみる。 分からないけど分かる。 というかこれパクればいけるんじゃね? ‑
それじゃ面白くないっ
Ұ͔Β࡞ͬͯΈΔ͜ͱʹ 一から作り直す判断が遅かったものの、 bootstrap + lazy_high_chartで作ってみることに。 そしてまずは初心者本を買ってみました。
͓՛ࢠϠϯΩʔొ この時期から、平山さんがお菓子を取りに来るときに グラフまだ? ・・・と恐喝される日々。 ? お菓子足りないんだけど?
? もうできてるでしょ 恐怖 恐 喝 逝 。 縦社会
ک͑ͳ͕Βϓϩάϥϛϯά Railsとmysqlの連携方法を理解したり、 Rubyの書式や言葉を覚えるのに苦戦。 ➡初心者本熟読 またRailsのコマンドの動きを覚えるのに時間もかかりました。
rails コマンド rake コマンド ➡初心者本熟読 Lazy_high_chartの挙動理解にも時間がかかりました。 ➡ブログ等のjps + highchartsのFAQ熟読
͍ͦͯͭ͠ʹ なんだかんだやって、 色んな人に教えてもらい。。
ग़དྷ·ͨ͠ h[p://10.29.3.101:3000/result2013
dev.livesense.jpʹ͋Γ·͢ Gaiaさんの隣にいるなんて恐れ多いっ。。 ‐こいつ
࡞ͬͯײͨ͜͡ͱ part1 ①Rubyから勉強してRailsしたほうが良い。絶対 ②変数操作はperlのほうが柔軟。 ただ、Rubyは見やすい
③lazy_high_chartはカスタマイズ出来る点が多くて便利 ④次回はhamlとかslim入れたい ⑤本という先行投資は必要。お早めに
࡞ͬͯײͨ͜͡ͱ part2 ⑥DB設計大事。早めに作ってレビューを貰うこと。 ⑦周りに素晴らしい先生がいっぱいいるので、 調べて分からなかったら聞いてみる
⑧vimを改造していきたい ⑨次回はテストを組み込んでいきたい ⑩何もないところから出来たときの感動が素晴らしい
Ͳͷ͘Β͍͔͔ͬͨͷʁ ちなみに ラック移設や障害対応などがあり、 かかった日数としては2〜3週間くらいです (時間掛け過ぎとか言わないでね!!)
࠷ޙʹ ソースはひどいです。 が、まだまだ分からないことだらけなので、 精神的に、肉体的に病まない程度の ご指摘お待ちしております。
罵倒してくれるドSな方、急募。
ࢀߟॻͳͲ h[p://colorschemedesigner.com/ 基礎 Ruby on Rails h[p://api.highcharts.com/highcharts Rails で Lazy
high charts を使ってチャートを実装してみた
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ