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
Crystal in production
Search
y2k2mt
June 21, 2018
Programming
1
400
Crystal in production
y2k2mt
June 21, 2018
Tweet
Share
More Decks by y2k2mt
See All by y2k2mt
luckyframeworkで驚異的なスループットを出した話
y2k2mt
1
260
Other Decks in Programming
See All in Programming
マルチモジュールにおけるテスト最適化
fxwx23
0
110
最高の構文木の設計 2024年版
yui_knk
7
2.3k
Amebaチョイス立ち上げの裏側 ~依存システムとの闘い~
daichi_igarashi
0
220
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
820
LangGraphでのHuman-in-the-Loopの実装
os1ma
1
260
null or undefined
susisu
12
2.3k
複雑さに立ち向かうための ソフトウェア開発入門
shiz
2
500
初めてのiOS関連GitHub ActionsをMarketplaceに公開するまでの実録
konifar
3
200
BasicBasic認証
sadnessojisan
5
2.5k
リョムキャットのパーフェクトSwiftネーミング教室
ktcryomm
0
440
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
170
快適な開発と高セキュリティを実現するCryptoKitを活用したCoreDataのデータ暗号化術
grandbig
1
290
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
GraphQLの誤解/rethinking-graphql
sonatard
65
9.7k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Being A Developer After 40
akosma
82
580k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Fantastic passwords and where to find them - at NoRuKo
philnash
47
2.7k
Automating Front-end Workflow
addyosmani
1365
200k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
Six Lessons from altMBA
skipperchong
26
3.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Adopting Sorbet at Scale
ufuk
72
8.9k
RailsConf 2023
tenderlove
26
790
Transcript
© DMM.com LLC Crystal in production 合同会社DMM.com 2018/06/21 東京Crystal勉強会 #6
in 渋谷 角本幸生
© DMM.com LLC 角本幸生 自己紹介 合同会社DMM.com クリプトマイニング事業部 暗号通貨まわりで仕事しています Crystal! Scala/Rust/Elixir/Node/Ruby
etc… Github: https://github.com/y2k2mt/
© DMM.com LLC Crystalへの道 3
© DMM.com LLC Crystalへの道 ・暗号通貨なシステムとか作ろう! ・高い処理能力を出せる素地のある言語を選びたい ・Goなんてどう? 4
© DMM.com LLC Crystalへの道 Goつらい 5 ※個人の見解です
© DMM.com LLC Crystalへの道 6 ・GO_PATH ・グローバルを汚染するネームスペース ・消えるエラーとその引き回し... ( if
err != nil ) ・あれ、map とか fold とかってないんだっけ...
© DMM.com LLC Crystalへの道 7 そうだ、せめて map と flatten があれば...!
© DMM.com LLC Crystalへの道 8 パフォーマンスが出ず、無理ゲーでした
© DMM.com LLC Crystalへの道 9 ・Scalaはどう? ・不慣れな関数型言語の壁 ・なにかいい言語はないか... Crystal !!!
© DMM.com LLC Crystalをつかってみて 10
© DMM.com LLC Crystalをつかってみて ・リファレンス見なくても何となく書けるのはまさにRuby! ・module や include の仕組みも同じ! ・勿論
map も fold もある! 11
© DMM.com LLC Crystalをつかってみて ・エコシステムが結構充実している ・Redis などとも連携に問題なし! → Elasticacheの暗号化通信だけ対応できなかったので作った 12
© DMM.com LLC Crystalをつかってみて crystal-redis にPR送ったらマージされたよ ! https://github.com/stefanwille/crystal-redis/pull/51 13
© DMM.com LLC Crystalをつかってみて ・ APIは Kemal が重たかったので router.cr を使う
14
© DMM.com LLC Crystalをつかってみて ・マイニングプールの報酬計算 15 (参考 : https://bitcoil.co.il/pool_analysis.pdf )
© DMM.com LLC 結論 Crystal よい! ので、みんなでCrystalを使おう
© DMM.com LLC ご清聴ありがとうございました。