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
120
インフラ屋が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.
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
240
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
960
26新卒_総合職採用_会社説明資料
livesense
PRO
0
4.1k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
13k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
7.7k
中途セールス職_会社説明資料
livesense
PRO
0
190
EM候補者向け転職会議説明資料
livesense
PRO
0
82
コロナで失われたノベルティ作成ノウハウを復活させた話
livesense
PRO
0
200
転職会議でGPT-3を活用した企業口コミ要約機能をリリースした話
livesense
PRO
0
1.3k
Other Decks in Technology
See All in Technology
テストアーキテクチャ設計で実現する高品質で高スピードな開発の実践 / Test Architecture Design in Practice
ropqa
3
710
依存関係があるコンポーネントは Barrel ファイルでまとめよう
azukiazusa1
3
530
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
16
6.5k
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
670
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1k
Postmanを使いこなす!2025年ぜひとも押さえておきたいPostmanの10の機能
nagix
2
120
Bounded Context: Problem or Solution?
ewolff
1
210
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
480
君はPostScriptなウィンドウシステム 「NeWS」をご存知か?/sunnews
koyhoge
0
720
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
7
1k
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
730
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
2
880
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Building Applications with DynamoDB
mza
93
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Bash Introduction
62gerente
610
210k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Side Projects
sachag
452
42k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
29
4.6k
Docker and Python
trallard
44
3.3k
How to train your dragon (web standard)
notwaldorf
90
5.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Become a Pro
speakerdeck
PRO
26
5.1k
It's Worth the Effort
3n
184
28k
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 を使ってチャートを実装してみた
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ