Crystal in production

A266dae7eb6010dc836af7e20c427701?s=47 y2k2mt
June 21, 2018

Crystal in production

A266dae7eb6010dc836af7e20c427701?s=128

y2k2mt

June 21, 2018
Tweet

Transcript

  1. © DMM.com LLC Crystal in production 合同会社DMM.com 2018/06/21 東京Crystal勉強会 #6

    in 渋谷 角本幸生
  2. © DMM.com LLC 角本幸生 自己紹介 合同会社DMM.com クリプトマイニング事業部 暗号通貨まわりで仕事しています Crystal! Scala/Rust/Elixir/Node/Ruby

    etc… Github: https://github.com/y2k2mt/
  3. © DMM.com LLC Crystalへの道 3

  4. © DMM.com LLC Crystalへの道 ・暗号通貨なシステムとか作ろう! ・高い処理能力を出せる素地のある言語を選びたい ・Goなんてどう? 4

  5. © DMM.com LLC Crystalへの道 Goつらい 5 ※個人の見解です

  6. © DMM.com LLC Crystalへの道 6 ・GO_PATH ・グローバルを汚染するネームスペース ・消えるエラーとその引き回し... ( if

    err != nil ) ・あれ、map とか fold とかってないんだっけ...
  7. © DMM.com LLC Crystalへの道 7 そうだ、せめて map と flatten があれば...!

  8. © DMM.com LLC Crystalへの道 8 パフォーマンスが出ず、無理ゲーでした

  9. © DMM.com LLC Crystalへの道 9 ・Scalaはどう? ・不慣れな関数型言語の壁 ・なにかいい言語はないか... Crystal !!!

  10. © DMM.com LLC Crystalをつかってみて 10

  11. © DMM.com LLC Crystalをつかってみて ・リファレンス見なくても何となく書けるのはまさにRuby! ・module や include の仕組みも同じ! ・勿論

    map も fold もある! 11
  12. © DMM.com LLC Crystalをつかってみて ・エコシステムが結構充実している ・Redis などとも連携に問題なし! → Elasticacheの暗号化通信だけ対応できなかったので作った 12

  13. © DMM.com LLC Crystalをつかってみて crystal-redis にPR送ったらマージされたよ ! https://github.com/stefanwille/crystal-redis/pull/51 13

  14. © DMM.com LLC Crystalをつかってみて ・ APIは Kemal が重たかったので router.cr を使う

    14
  15. © DMM.com LLC Crystalをつかってみて ・マイニングプールの報酬計算 15 (参考 : https://bitcoil.co.il/pool_analysis.pdf )

  16. © DMM.com LLC 結論 Crystal よい! ので、みんなでCrystalを使おう

  17. © DMM.com LLC ご清聴ありがとうございました。