Submit Search
Upload
未来のwebに欠かせないREST APIをApache Solr + Drupal8で実装しよう@PHPカンファレンス2016 東京
•
3 likes
•
16,410 views
Masayuki Abe
Follow
PHPカンファレンス2016 東京で登壇時のスライドです。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 73
Recommended
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!
Shinichi Takahashi
Service workerとwebプッシュ通知
Service workerとwebプッシュ通知
zaru sakuraba
オフラインファーストの思想と実践
オフラインファーストの思想と実践
Shumpei Shiraishi
Jawsug chiba API Gateway
Jawsug chiba API Gateway
Takuro Sasaki
Spring Security 4.1 の新機能
Spring Security 4.1 の新機能
正和 井岡
Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】
dcubeio
ドローンの安全運転をささえるLambda
ドローンの安全運転をささえるLambda
真吾 吉田
Spring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作る
Go Miyasaka
Recommended
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!
Shinichi Takahashi
Service workerとwebプッシュ通知
Service workerとwebプッシュ通知
zaru sakuraba
オフラインファーストの思想と実践
オフラインファーストの思想と実践
Shumpei Shiraishi
Jawsug chiba API Gateway
Jawsug chiba API Gateway
Takuro Sasaki
Spring Security 4.1 の新機能
Spring Security 4.1 の新機能
正和 井岡
Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】
dcubeio
ドローンの安全運転をささえるLambda
ドローンの安全運転をささえるLambda
真吾 吉田
Spring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作る
Go Miyasaka
Build insider testingwithvs
Build insider testingwithvs
Tomoyuki Iwade
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
miso- soup3
50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック
miso- soup3
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Takakiyo Tanaka
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
Spring Framework ふりかえりと4.3新機能
Spring Framework ふりかえりと4.3新機能
kimulla
PHPカンファレンス2014セキュリティ対談資料
PHPカンファレンス2014セキュリティ対談資料
Yasuo Ohgaki
Laravelの認証について
Laravelの認証について
Takeo Noda
13_B_5 Who is a architect?
13_B_5 Who is a architect?
Atsushi Fukui
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
Shotaro Suzuki
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
Hiroshi Tokumaru
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo!デベロッパーネットワーク
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
Koichi Sakata
Scala + Finagleの魅力
Scala + Finagleの魅力
Kota Mizushima
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
Tomoki Oyamatsu
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
miso- soup3
Spring Security 5.0 解剖速報
Spring Security 5.0 解剖速報
Takuya Iwatsuka
RESTful Webサービス
RESTful Webサービス
Kentaro Inomata
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
Yosuke HASEGAWA
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
Akira Inoue
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
Yuji Takayama
More Related Content
What's hot
Build insider testingwithvs
Build insider testingwithvs
Tomoyuki Iwade
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
miso- soup3
50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック
miso- soup3
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Takakiyo Tanaka
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
Spring Framework ふりかえりと4.3新機能
Spring Framework ふりかえりと4.3新機能
kimulla
PHPカンファレンス2014セキュリティ対談資料
PHPカンファレンス2014セキュリティ対談資料
Yasuo Ohgaki
Laravelの認証について
Laravelの認証について
Takeo Noda
13_B_5 Who is a architect?
13_B_5 Who is a architect?
Atsushi Fukui
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
Shotaro Suzuki
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
Hiroshi Tokumaru
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo!デベロッパーネットワーク
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
Koichi Sakata
Scala + Finagleの魅力
Scala + Finagleの魅力
Kota Mizushima
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
Tomoki Oyamatsu
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
miso- soup3
Spring Security 5.0 解剖速報
Spring Security 5.0 解剖速報
Takuya Iwatsuka
RESTful Webサービス
RESTful Webサービス
Kentaro Inomata
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
Yosuke HASEGAWA
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
What's hot
(20)
Build insider testingwithvs
Build insider testingwithvs
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
Spring Framework ふりかえりと4.3新機能
Spring Framework ふりかえりと4.3新機能
PHPカンファレンス2014セキュリティ対談資料
PHPカンファレンス2014セキュリティ対談資料
Laravelの認証について
Laravelの認証について
13_B_5 Who is a architect?
13_B_5 Who is a architect?
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
Scala + Finagleの魅力
Scala + Finagleの魅力
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
Spring Security 5.0 解剖速報
Spring Security 5.0 解剖速報
RESTful Webサービス
RESTful Webサービス
[デブサミ2012]趣味と実益の脆弱性発見
[デブサミ2012]趣味と実益の脆弱性発見
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Similar to 未来のwebに欠かせないREST APIをApache Solr + Drupal8で実装しよう@PHPカンファレンス2016 東京
ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
Akira Inoue
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
Yuji Takayama
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
アシアル株式会社
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
Yuji Takayama
Data API 2.0
Data API 2.0
Yuji Takayama
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
fukuoka.ex
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Tsuyoshi Hirayama
Data API + AWS = (CMS どうでしょう 札幌編)
Data API + AWS = (CMS どうでしょう 札幌編)
Yuji Takayama
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
Yuji Takayama
AppExchangeパートナー&デベロッパー第2部:20070523版
AppExchangeパートナー&デベロッパー第2部:20070523版
Junichiro Tasaki
初めての Data api
初めての Data api
Yuji Takayama
AWS Black Belt Online Seminar AWS Amplify
AWS Black Belt Online Seminar AWS Amplify
Amazon Web Services Japan
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Toru Kawamura
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
Sho Ito
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Tasuku Otani
jsライブラリで実装する効率的なWeb制作
jsライブラリで実装する効率的なWeb制作
西畑 一馬
Chatterを使ったカスタムソーシャル
Chatterを使ったカスタムソーシャル
Salesforce Developers Japan
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Masayuki Abe
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Shotaro Suzuki
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
fukuoka.ex
Similar to 未来のwebに欠かせないREST APIをApache Solr + Drupal8で実装しよう@PHPカンファレンス2016 東京
(20)
ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
Data API 2.0
Data API 2.0
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Hybrid serverless architecture using open whisk ibm cloud functions and istio...
Data API + AWS = (CMS どうでしょう 札幌編)
Data API + AWS = (CMS どうでしょう 札幌編)
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
AppExchangeパートナー&デベロッパー第2部:20070523版
AppExchangeパートナー&デベロッパー第2部:20070523版
初めての Data api
初めての Data api
AWS Black Belt Online Seminar AWS Amplify
AWS Black Belt Online Seminar AWS Amplify
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
jsライブラリで実装する効率的なWeb制作
jsライブラリで実装する効率的なWeb制作
Chatterを使ったカスタムソーシャル
Chatterを使ったカスタムソーシャル
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
More from Masayuki Abe
JavaScriptライフを10倍楽しくする方法-HTML5fun-
JavaScriptライフを10倍楽しくする方法-HTML5fun-
Masayuki Abe
javascriptの基礎
javascriptの基礎
Masayuki Abe
Drupal7 Blockでサイト構築しよう@Drupal cafe
Drupal7 Blockでサイト構築しよう@Drupal cafe
Masayuki Abe
最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西
Masayuki Abe
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Masayuki Abe
Html5fun@東京 Bootstrapにアニメーションを付けよう
Html5fun@東京 Bootstrapにアニメーションを付けよう
Masayuki Abe
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Masayuki Abe
Google Material DesignをPolymerで表現しよう
Google Material DesignをPolymerで表現しよう
Masayuki Abe
Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )
Masayuki Abe
[okaweb × HTML5 fun] HTML5で人気のAPIを使って 未来価値を創造しよう
[okaweb × HTML5 fun] HTML5で人気のAPIを使って 未来価値を創造しよう
Masayuki Abe
Html5 fun@Tokyo Bootstrap Tips
Html5 fun@Tokyo Bootstrap Tips
Masayuki Abe
Word pressセミナー東京[マイナビ主催] 阿部20131216
Word pressセミナー東京[マイナビ主催] 阿部20131216
Masayuki Abe
WordBench ISHIKAWA
WordBench ISHIKAWA
Masayuki Abe
CSSフレームワークとCMS+RWDテンプレでレスポンシブWebデザインサイトを構築しよう
CSSフレームワークとCMS+RWDテンプレでレスポンシブWebデザインサイトを構築しよう
Masayuki Abe
関デジセミナー20130710
関デジセミナー20130710
Masayuki Abe
サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901
Masayuki Abe
Firebug×smart release20120904
Firebug×smart release20120904
Masayuki Abe
ちゃんとWeb会議
ちゃんとWeb会議
Masayuki Abe
More from Masayuki Abe
(18)
JavaScriptライフを10倍楽しくする方法-HTML5fun-
JavaScriptライフを10倍楽しくする方法-HTML5fun-
javascriptの基礎
javascriptの基礎
Drupal7 Blockでサイト構築しよう@Drupal cafe
Drupal7 Blockでサイト構築しよう@Drupal cafe
最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Html5fun@東京 Bootstrapにアニメーションを付けよう
Html5fun@東京 Bootstrapにアニメーションを付けよう
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Google Material DesignをPolymerで表現しよう
Google Material DesignをPolymerで表現しよう
Cordovaコトハジメ( Html5fun×senchUG )
Cordovaコトハジメ( Html5fun×senchUG )
[okaweb × HTML5 fun] HTML5で人気のAPIを使って 未来価値を創造しよう
[okaweb × HTML5 fun] HTML5で人気のAPIを使って 未来価値を創造しよう
Html5 fun@Tokyo Bootstrap Tips
Html5 fun@Tokyo Bootstrap Tips
Word pressセミナー東京[マイナビ主催] 阿部20131216
Word pressセミナー東京[マイナビ主催] 阿部20131216
WordBench ISHIKAWA
WordBench ISHIKAWA
CSSフレームワークとCMS+RWDテンプレでレスポンシブWebデザインサイトを構築しよう
CSSフレームワークとCMS+RWDテンプレでレスポンシブWebデザインサイトを構築しよう
関デジセミナー20130710
関デジセミナー20130710
サーバーの初歩的な話セミナー@大阪20120901
サーバーの初歩的な話セミナー@大阪20120901
Firebug×smart release20120904
Firebug×smart release20120904
ちゃんとWeb会議
ちゃんとWeb会議
Recently uploaded
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Recently uploaded
(8)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
未来のwebに欠かせないREST APIをApache Solr + Drupal8で実装しよう@PHPカンファレンス2016 東京
1.
未来のwebに欠かせないREST APIを Apache Solr
+ Drupalで実装しよう KDDIウェブコミュニケーションズ 阿部 正幸
2.
ACE01 / SmartRelease
プロダクトマネージャー CPI エバンジェリスト 統括 KDDIウェブ 公認 CPI スタッフブログ 編集長 TechAcademy講師 HTML5 Fun 理事 ANNAI株式会社 社外取締役(CMO) 阿部 正幸(あべ まさゆき) KDDIウェブコミュニケーションズ
3.
Venture Since 1998 Web Service Hosting
4.
5.
6.
7.
8.
9.
1. コンテンツ中心設計(personalized) 2. コンテンツの再利用 3.
柔軟なシステム 4. APIを通じてコンテンツの配信(REST) 5. ビジネスニーズ(UX、MA)
10.
11.
CMSは インタラクティブ と マルチチャネルプラットフォーム
の ための API に急速に進化
12.
注目が集まるREST API なぜ必要なのか
13.
CMS これまでのCMS
14.
IoT iPhone App Signage Android App a
Company Product B Recruit Event IR Product A Corporate Campaing Blog 増え続けるサイトとシステム
15.
Prodcut CMS RESTサーバー Event Blog Corporate Application Other System 担当者 これからのCMS
16.
たとえば - KWCの場合 -
17.
情報発信しているメディア
18.
情報発信しているメディア まだまだある ……
19.
たとえば - CPIのイベントを掲載する - 私
: CPIスタッフブログに掲載 広報 : コーポレートサイトに掲載 コンパネ担当 : コンパネに表示 メルマガ担当 : メルマガ発行 メルマガ担当 : Web閲覧用メルマガ作成 デザイン部 : CPIサイトに掲載
20.
たとえば - CPIのイベントを掲載する - 私
: CPIスタッフブログに掲載 広報 : コーポレートサイトに掲載 コンパネ担当 : コンパネに表示 メルマガ担当 : メルマガ発行 メルマガ担当 : Web閲覧用メルマガ作成 デザイン部 : CPIサイトに掲載多くの工数がかかってしまう
21.
KWC RESTサーバー メルマガ CPI ブログ コンパネ Other Application Other
System 担当者 これからのCMS
22.
23.
Internet 閲覧者 webサーバー (AWS) Drupal8 Views Drupal8 REST Service 検索 記事 記事一覧 DB S2Robot サイトクロール インデックス登録
24.
Internet チャットシステム MAツール Other
APICRMSMS web hook 何かをフックに 他システム連動
25.
webサーバー - AWS EC2
-
26.
webサーバー構築手順 (手順1) yumで適当にLAMP 構築 $ sudo
yum install -y httpd24 php56 mysql55-server php56-mysqlnd php56-opcache
27.
RESTサーバー - Drupal8インストール -
28.
RESTサーバー構築手順 (手順1) Drupal8 Coreダウンロードし解凍 https://www.drupal.org/project/drupal $ crul
–O http:// URL /drupal.tar.gz $ tar –xfv drupal.tar.gz
29.
RESTサーバー構築手順 (手順2) Drupal8用Database作成 # MySQL起動 $ sudo
service mysqld start $ sudo chkconfig mysqld on # MySQLログイン $ mysql -u root mysql > CREATE DATABASE drupal_db DEFAULT CHARACTER SET utf8 COLLATE utf8mb4_general_ci;
30.
RESTサーバー構築手順 (手順3) PHPモジュール追加 # gd # yum
list | grep gd でリストを出す $ sudo yum install php56-gd.x86_64 # mbstring # yum list | grep mgstring でリストを出す $ sudo yum install php56-mbstring.x86_64
31.
RESTサーバー構築手順 (手順4) .htaccess許可設定 # htaccess許可 $ sudo
vi /etc/httpd/conf/httpd.conf <Directory "/var/www"> AllowOverride All Require all granted </Directory> $ sudo service httpd restart
32.
RESTサーバー構築手順 (手順5) http://example.com/ にアクセスし、 Drupal8インストール(よしなに)
33.
RESTサーバー - Drupal8設定(記事単体) -
34.
Drupal8 REST API
機能 - 認証不要 GET Request (記事取得) - CSRF Token ユーザー認証必須 POST Request (記事新規作成) DELETE Request (記事削除) PATCH Request (記事更新) ※ リクエスト方法は後ほど
35.
Drupal8 REST 設定 (手順1) REST
UIモジュールをインストール https://www.drupal.org/project/restui
36.
Drupal8 REST 設定 (手順2) 「環境設定
> REST」から使用するMethodや、Data Type を選択
37.
Drupal8 REST 設定 (手順3) 「ユーザー
> 権限」からアクセスできる権限を指定
38.
RESTサーバー - GET Request
-
39.
Get Request https://example.com/node/<nid>?_format=json Request 200 OK Response
40.
RESTサーバー - POST, DELETE,
PATCH Request -
41.
Login 認証 https://example.com/user/login Request (metod
: post) 303 See Other Response application/x-www-form-urlencoded Content-Type name=USERID&pass=PASSWORD&form_id=user_login_form Body
42.
CSRF Token取得 https://example.com/rest/session/token Request (metod
: get) 200 OK Response
43.
POST Request (記事新規作成) https://example.com/entity/none Request
(metod : post) 201 Created Response application/hal+json Content-Type { Get from /rest/session/token } X-CSRF-Token
44.
POST Request (記事新規作成) { "_links":
{ "type": { "href": "https://example.com/rest/type/node/article" } }, "title": { "value": "Test Article" }, "type": { "target_id": "article" } } Body
45.
POST Request (記事新規作成)
46.
PATCH / DELETE
Request https://example.com/node/node_id Request (metod : PATCH) 204 No Contet Response application/hal+json Content-Type { Get from /rest/session/token } X-CSRF-Token
47.
{ "_links": { "type": { "href":
"http://examle.com/rest/type/node/article" }}, "title": [{ "value": "My page created via REST (Updated)" }], "body": [{ "value": "This updated too" }], "type": [{ "target_id": "article" }] } Body PATCH / DELETE Request
48.
PATCH / DELETE
Request
49.
RESTサーバー - Drupal8設定(記事一覧) -
50.
サイト構築 > ビューズ
> ビューを追加 「REST出力を提供する」にチェックをし「保存」 REST 記事一覧
51.
検索用REST - FESS Server
-
52.
Internet 閲覧者 webサーバー (AWS) Drupal8 Views Drupal8 REST Service 検索 記事 記事一覧 DB S2Robot サイトクロール インデックス登録
53.
Internet 閲覧者 Drupal8 Views Drupal8 REST Service 記事 記事一覧FESS 検索 DB S2Robot サイトクロール インデックス登録 webサーバー (AWS)
54.
Fess10構成 Fess9構成 画像元:http://fess.codelibs.org/ja/articles/article-1.html
55.
FESS(検索エンジン) 10系 Elasticsearch 9系 Apache Solr ※ 大規模向けに対応
56.
57.
クローラー、O/Rマッパー、シノニム、 サジェストなど検索に必要な コンポーネントを オールインワンパッケージで提供
58.
Fess9.4インストール - java 削除 $
sudo rpm -qa | grep java $ sudo rpm -e java-1.7.0-openjdk-1.7.0.101-2.6.6.1.67.amzn1.x86_64 - JDKインストール $ sudo yum install java-1.8.0-openjdk.x86_64 $ sudo yum install java-1.8.0-openjdk-devel.x86_64 - Fessインストール $ sudo wget https://github.com/codelibs/fess/archive/fess-9.4.2.tar.gz $ sudo tar xvzf fess.tar.gz $ sudo mv fess-server-9.4.2 /etc $ sudo cd /etc/fess-server-9.4.2 $ sudo chmod +x bin/*.sh
59.
Fess9.4インストール - Fess起動 # /etc/fess-server-9.4.2/bin/startup.sh -
FESSのProxy設定 $ sudo vi /etc/httpd/conf/httpd.conf Include /etc/httpd/conf.d/httpd-proxy.conf <- 追加 $ sudo vi httpd-proxy.conf ProxyPass /fess/ ajp://localhost:8009/fess/ <- 追加 - Apache再起動 # service httpd restart
60.
http://example.com/fess/admin Fess管理画面
61.
Fess10 インストール - java
削除 $ sudo rpm -qa | grep java $ sudo rpm -e java-1.7.0-openjdk-1.7.0.101-2.6.6.1.67.amzn1.x86_64 - JDKインストール $ sudo yum install java-1.8.0-openjdk.x86_64 $ sudo yum install java-1.8.0-openjdk-devel.x86_64 - Fessダウンロード https://github.com/codelibs/fess/releases - Fessダウンロード $ unzip /etc/fess-10.2.1.zip
62.
Fess10 インストール - FESS起動 #
bin/fess - FESS終了 $ ps aux | grep fess $ sudo kill -9 [pid]
63.
Java ヒープ・メモリ 適宜JAVAヒープ・メモリを調整 Javaヒープ・メモリ:2GB $ sudo
vim bin/fess.in.sh ----------------------------------------------- if [ "x$FESS_MIN_MEM" = "x" ]; then FESS_MIN_MEM=256m fi if [ "x$FESS_MAX_MEM" = "x" ]; then FESS_MAX_MEM=2g fi
64.
Fess10設定
65.
サジェスト http://example.com/suggest?query=fess&num10 検索 http://example.com/json/?type=search&q=drupal&num10 FESS10系 REST API q
:検索語(URLエンコード) start :開始件数位置 num :表示件数 fields.label :ラベル値 参考:http://fess.codelibs.org/ja/10.2/api/api-search.html
66.
他システム連携 - Web hook
-
67.
Internet チャットシステム MAツール Other
APICRMSMS web hook 何かをフックに 他システム連動
68.
(例)Web hook to
SMS web hook 投稿を検知 APIをキック Twilio API APIからSMS 送信 記事を投稿 CMS
69.
Drupla Rules moduleインストール https://www.drupal.org/project/rules Web
hook
70.
SMS送信用プログラム (Twilio)
71.
DEMO
72.
さいごに REST化メリット コンテツを効率よく配信できる システムとデザインの分離 他システムとの連携が容易になる CMS + REST 各CMSでREST対応モジュールが出ているので 後からREST化することが可能 WP
: WP REST API MT : Data API
73.
ありがとうございました ID:chiyo.abe 阿部 正幸 cpi-line
Editor's Notes
1. コンテンツが中心でなければならない コンテンツが接続されたシステムのハブになる。 コンテンツはパーソナライズされたデータを配信する方法を学ばなければいけない。 The CMS must learn how to deliver personalized, context-aware content 2. コンテンツの再利用 -> ベンダーロックインなどを避ける 3. 柔軟なシステム(タクソノミー、テンプレート、メタデータ) 4. APIを通じてコンテンツの配信 マルチプラットフォーム、REST、Decupledの話 5. ビジネスニーズ カスタマーエクスペリエンスなどのニーズに対して高速で技術を 選択できること