Submit Search
Elixirだ 第6回
22 likes
5,454 views
Joe_noh
社内Elixir勉強会 第5回の資料
Technology
Read more
1 of 36
Download now
Downloaded 10 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
More Related Content
PPTX
VMware Fusion と WiFi ネットワークでの注意点
tshiroyama
PPTX
Zabbixの分散構築~ConoHa VPSでのzabbix server構築~
真乙 九龍
PDF
開発チームもIaCやってみたい~VSOとDockerの組合せにチャレンジ~
CubedKachi
PDF
真Drone入門
Yutaka Matsubara
PPTX
実は怖くないDevOps
Masanori Ishigami
PDF
Drone.io のご紹介
Uchio Kondo
PDF
OSC 2014 Tokyo/Spring 「Zabbix 2.2を使ってみよう」
Atsushi Tanaka
PPTX
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
真乙 九龍
VMware Fusion と WiFi ネットワークでの注意点
tshiroyama
Zabbixの分散構築~ConoHa VPSでのzabbix server構築~
真乙 九龍
開発チームもIaCやってみたい~VSOとDockerの組合せにチャレンジ~
CubedKachi
真Drone入門
Yutaka Matsubara
実は怖くないDevOps
Masanori Ishigami
Drone.io のご紹介
Uchio Kondo
OSC 2014 Tokyo/Spring 「Zabbix 2.2を使ってみよう」
Atsushi Tanaka
自宅ラック勉強会 2.2 夏のZabbix特別教室 ~構築編~
真乙 九龍
What's hot
(16)
PPTX
Nagios大好きさんが喋るzabbixとAWS連携の話
Takayuki Saito
PPTX
3分間 開発環境クッキング 2012.07 #pyfes
Takeshi Komiya
PDF
Bot Framework v4 開発 Tips 2018-11
Atsushi Yokohama (BEACHSIDE)
KEY
Bundler kanazawa.rb meetup #2 2012/09/19
Hitoshi Kurokawa
PPTX
120315 cloud founry_java_ironfoundry
Takayoshi Tanaka
PDF
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
PDF
Firefox FAQ
dynamis
PPTX
Myfirst cloudfoundry intro_20161201
Tomohiro Ichimura
PDF
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
Hikari Fukasawa
PDF
Windowsを踏台にしてSSH接続
Nozomu KURASAWA
PDF
Vagrant & Dockerによるイマドキの開発環境構築
Nakazawa Yuichi
PDF
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Kazuhiro Hara
PDF
Circle ci and docker+serverspec
Tsuyoshi Yamada
PDF
Create android app can send SMS and Email by React Natice
GMO-Z.com Vietnam Lab Center
PDF
Firefox5+HTML5×5
dynamis
PDF
Windows コンテナを AKS に追加する
Yuto Takei
Nagios大好きさんが喋るzabbixとAWS連携の話
Takayuki Saito
3分間 開発環境クッキング 2012.07 #pyfes
Takeshi Komiya
Bot Framework v4 開発 Tips 2018-11
Atsushi Yokohama (BEACHSIDE)
Bundler kanazawa.rb meetup #2 2012/09/19
Hitoshi Kurokawa
120315 cloud founry_java_ironfoundry
Takayoshi Tanaka
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
Firefox FAQ
dynamis
Myfirst cloudfoundry intro_20161201
Tomohiro Ichimura
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
Hikari Fukasawa
Windowsを踏台にしてSSH接続
Nozomu KURASAWA
Vagrant & Dockerによるイマドキの開発環境構築
Nakazawa Yuichi
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Kazuhiro Hara
Circle ci and docker+serverspec
Tsuyoshi Yamada
Create android app can send SMS and Email by React Natice
GMO-Z.com Vietnam Lab Center
Firefox5+HTML5×5
dynamis
Windows コンテナを AKS に追加する
Yuto Takei
Ad
Viewers also liked
(7)
PDF
elixirを使ったゲームサーバ
Hidetaka Kojo
PDF
Elixirだ 第4回
Joe_noh
PDF
Elixirだ 第5回
Joe_noh
PDF
Elixirだ 第3回
Joe_noh
PDF
Elixirだ 第1回強化版 後半
Joe_noh
PDF
Elixirだ 第1回強化版 前半
Joe_noh
PPTX
Stream2の基本
shigeki_ohtsu
elixirを使ったゲームサーバ
Hidetaka Kojo
Elixirだ 第4回
Joe_noh
Elixirだ 第5回
Joe_noh
Elixirだ 第3回
Joe_noh
Elixirだ 第1回強化版 後半
Joe_noh
Elixirだ 第1回強化版 前半
Joe_noh
Stream2の基本
shigeki_ohtsu
Ad
Similar to Elixirだ 第6回
(7)
PPTX
Phoenixでblog作った
Norifumi Kawamoto
PDF
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
fukuoka.ex
PPTX
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
fukuoka.ex
PPTX
Elixirハンズオン2
Tsunenori Oohara
PPTX
hello waf, hello phoenix
Tsunenori Oohara
PDF
Phoenix Framework
Shigeru Kondoh
PPTX
2023-10-10_ElixirConf US 2023に参加してきました(レポート)
哲輝 周
Phoenixでblog作った
Norifumi Kawamoto
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
fukuoka.ex
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
fukuoka.ex
Elixirハンズオン2
Tsunenori Oohara
hello waf, hello phoenix
Tsunenori Oohara
Phoenix Framework
Shigeru Kondoh
2023-10-10_ElixirConf US 2023に参加してきました(レポート)
哲輝 周
More from Joe_noh
(20)
PDF
パフォーマンス改善のためにやったこと・やらなかったこと
Joe_noh
PDF
Vue.jsのユニットテスト
Joe_noh
PDF
Vuexと入力フォーム
Joe_noh
PDF
カラーミーAPIドキュメントの今後
Joe_noh
PDF
サイクルOJTイントロダクション
Joe_noh
PDF
お産ウィークイントロダクション
Joe_noh
PDF
モバイルアプリ研修イントロダクション
Joe_noh
PDF
Webオペレーション研修イントロダクション
Joe_noh
PDF
Web開発研修イントロダクション
Joe_noh
PDF
リーンキャンバス
Joe_noh
PDF
もっとgit
Joe_noh
PPTX
できないことはPortで外注
Joe_noh
PDF
DBにseedするライブラリつくった
Joe_noh
PDF
やってみた -URL外形監視-
Joe_noh
PDF
Elixirだ 第2回
Joe_noh
PDF
Elixirだ 第1回 - 基礎だ -
Joe_noh
PDF
Declaimerっていうやつつくった(つくってる)
Joe_noh
ODP
いつかどこかで使えそうな英語
Joe_noh
PDF
NUTハッカソン2014成果報告
Joe_noh
ODP
@nukokusa_botを支える技術
Joe_noh
パフォーマンス改善のためにやったこと・やらなかったこと
Joe_noh
Vue.jsのユニットテスト
Joe_noh
Vuexと入力フォーム
Joe_noh
カラーミーAPIドキュメントの今後
Joe_noh
サイクルOJTイントロダクション
Joe_noh
お産ウィークイントロダクション
Joe_noh
モバイルアプリ研修イントロダクション
Joe_noh
Webオペレーション研修イントロダクション
Joe_noh
Web開発研修イントロダクション
Joe_noh
リーンキャンバス
Joe_noh
もっとgit
Joe_noh
できないことはPortで外注
Joe_noh
DBにseedするライブラリつくった
Joe_noh
やってみた -URL外形監視-
Joe_noh
Elixirだ 第2回
Joe_noh
Elixirだ 第1回 - 基礎だ -
Joe_noh
Declaimerっていうやつつくった(つくってる)
Joe_noh
いつかどこかで使えそうな英語
Joe_noh
NUTハッカソン2014成果報告
Joe_noh
@nukokusa_botを支える技術
Joe_noh
Elixirだ 第6回
1.
第6回 - Phoenixだ
- GMO Pepabo, Inc. Joe Honzawa 2015/6/25 Elixir勉強会 Elixirだ
2.
前回やったこと > Mix > ドキュメンテーション >
タスクを作ろう > Dialyzerで型チェック
3.
今回の内容 > Phoenixをちょっと飛ばす > インストールとプロジェクト作成 >
ファイルを眺める > PhoenixのWebSocket > 実装 v0.13.1 使います
4.
ゴール リアルタイム通信できるWebアプリを Phoenixでつくる
5.
Phoenix
6.
> Elixirで1番イケてるWAF > Railsに強く影響されてる >
もちろんMVC > Plugベース > WebSocket標準装備 作者のChris McCord
7.
Plug > コネクションの抽象化 > Rubyで言うところのRack >
Plug.Conn構造体 RailsでRackを触る頻度よりも、 PhoenixでPlugを触る頻度のほうが高い
8.
インストール
9.
まずは公式 www.phoenixframework.org TOP > GUIDES
> Installation
10.
インストール $ mix archive.install
https://…/phoenix_new-0.X.Y.ez
11.
archive.install > $HOME/.mix/archivesに入る > どこでもタスクが使えるようになる >
どこでもphoenix.newし放題
12.
New!! $ mix phoenix.new
my_app $ cd ./my_app $ mix phoenix.server
13.
ファイルを眺める
14.
いっぱーい !"" README.md !"" brunch-config.js !""
config !"" deps !"" lib !"" mix.exs !"" mix.lock !"" node_modules !"" package.json !"" priv !"" test #"" web rails new したときの気分だぜ
15.
大事なディレクトリ web !"" channels ←
for WebSocket !"" controllers !"" models !"" router.ex !"" static ← sassやjs(ES6 OK) !"" templates ← .html.eex files !"" views ← templatesをレンダ #"" web.ex ← みんなこれをuseする
16.
設定 config !"" config.exs !"" dev.exs !""
prod.exs !"" prod.secret.exs #"" test.exs 共通設定と各環境設定 .gitignore済
17.
priv priv !"" repo $ #""
migrations #"" static !"" css !"" images !"" js #"" robots.txt web/staticから 生成されるので .gitignore済
18.
フロント周り !"" brunch-config.js !"" node_modules #""
package.json デフォルトでbrunchが使われる
19.
Phoenixの WebSocket
20.
ソ ケ ッ ト チ ャ ン ネ ル チ ャ ン ネ ル チ ャ ン ネ ル サーバ ざっくり クライアント(JavaScript)
21.
サーバ ざっくり クライアント(JavaScript) handle_out/3handle_in/3 chan.pushで送信 chan.onで受信 broadcast/3 push/3
22.
実装
23.
今日のレシピ https://github.com/Joe-noh/shout Pull Request #1 コミットを順に見ていきます コードとスライドをキョロキョロしてね
24.
※1 今回はecto無し $ mix
phoenix.new shout --no-ecto > Ecto > DBラッパー > 言語組み込みのクエリ言語 > デフォルトは要PostgreSQL
25.
※2 テスト > 一応書いてありますが >
参考程度に > 「へー」って感じで
26.
入力フォームを設置 > RootRouteのTemplateを編集 > web >
templates > page > index.html.eex
27.
WebSocket接続確立 > サーバ側 > channel
“topic:*”, … > ワイルドカード > join/3 > OKなら{:ok, socket}を返す > ダメなら{:error, msg}
28.
WebSocket接続確立 > クライアント側 > socket
= new Socket(“/ws”) > socket.connect() > WebSocketに接続 > chan = socket.chan(…) > chan.join > チャンネルに接続
29.
jQueryを読む > そのまんま > application.html.eexに書いとく
30.
クライアントの発言を… > クライアント側 > chan.push(id,
msg) > C→Sへメッセージを送る
31.
クライアントの発言を… > サーバ側 > handle_in/3 >
C→Sのメッセージを処理 > {:reply, rep, socket} > {:noreply, socket} > {:stop, why, socket} > {:stop, why, rep, socket}
32.
クライアントの発言を… > サーバ側 > broadcast!/3 >
接続済みの全クライアントに送信 > ここでのIDは ”bc:msg”
33.
サーバからのbroadcastを… > クライアント側 > chan.on(“bc:msg”,
callback) > “bc:msg”受信時に発火
34.
handle_outで発言に… > handle_out/3 > 送信されるメッセージをイジれる >
フィルタリングなど > ここでは”bc:msg”を処理 > body末尾に”!!!!”を追加
35.
サーバ ざっくり(再) クライアント(JavaScript) handle_out/3handle_in/3 chan.pushで送信 chan.onで受信 broadcast/3 push/3
36.
今回やったこと > Phoenixをちょっと飛ばした > インストールとプロジェクト作成 >
ファイルを眺める > PhoenixにおけるWebSocket > 流れを追った
Download