ytake blog

Web Application Developer

デブサミ2018でApache Kafka、PHPerKaigi 2018でHackの話をします

デブサミ2018! 開発者にはおなじみのデブサミですが、 今年は弊社(アイスタイル)もスポンサーとして参加し、急遽わたくしも登壇することになりました。 (先週決まりました・・・) event.shoeisha.jp event.shoeisha.jp ゴールドスポンサー! 今年は登壇だけ…

気軽にHackチャレンジ マイクロフレームワーク公開

PHPと分離し始めたHHVM/Hackですが、 折角なので多くの方が やってみた で終わらないように、 シンプルで薄いマイクロなフレームワーク、というか、 Web Applicationのボイラープレートと言ってもいいくらいの簡単なものを公開しました。 github.com *名前は…

New Year's Resolution 2018

2018年になりましたので、今年の抱負とか アウトプット 登壇とか 引き続きPHP系のカンファレンスにはお邪魔しながら、 登壇なりをしていこうと思ってます。 去年はビッグデータ系のミドルウェア、アーキテクチャが中心でした。 面白いテーマではありながらも…

ytake/gardening(VagrantBox) 更新のお知らせ

laravel/homesteadのCentOS7版ともいえるVagrantBoxを公開していますが、 実はちゃんと定期的に更新しています。 ytake.hateblo.jp app.vagrantup.com 利用したい場合は次のコマンドで追加してください。 $ vagrant box add ytake/gardening 更新内容 今回は…

Laravelで作る分析・分散処理アプリケーション その2

Kafka Consumer + Prestodb例 ytake.hateblo.jp 上記のエントリの続編です。 その1 ではApache Kafkaを組み合わせて、 データの分散やアプリケーション自体をスケールするアプローチを紹介しました。 今回は分散したサービスのデータの集約をKafkaとPrestoを…

Laravelで作る分析・分散処理アプリケーション その1

先日のPHPカンファレンスやPHPカンファレンス関西、buildersconでお話しした内容を元にして、 Laravel(PHP)を使って分析処理の簡単な実装や、 ミドルウェアを組み合わせた分散処理の実装を紹介します。 本ブログのサンプルアプリケーションは下記になります…

PHPカンファレンス2017でApache Kafkaについて話しました

PHPカンファレンス2017 今年も参加してきました 2017/10/08 PHPカンファレンス2017で発表に使ったスライドです speakerdeck.com 巨大化してしまったアプリケーションを分解する場合や、 マイクロサービス化するにあたって、 こうしたメッセージミドルウェア…

PHPでビッグデータを操作しよう!Presto編 2

ytake.hateblo.jp *上記の続き 異なるデータベース、NoSQLなどを結合できるということが理解できたと思います。 それではPHPのアプリケーションから実際に利用してみましょう。 PHP Prestodb Client PHPのPrestoクライアントライブラリは、古いものがありま…

PHPでビッグデータを操作しよう!Presto編 1

引き続きビッグデータ関連のミドルウェアを使った開発ばかりしてます。 もうすぐスーパーファミコンですね。 PHPを使ったビッグデータへのアプローチ方法などを話すことが多いですが、 今回は登壇時に例に挙げることも多いPrestoとPHPからの利用方法について…

Laravel5.5 API Resourcesを利用する その1

先日、Laravel5.5がリリースされました。 このバージョンは新しいLTSとなりますので、5.1からのアップグレードなどを検討してみましょう! 5.5で追加された仕組みの一つに、Eloquent: API Resourcesがあります。 laravel.com 以前からEloquentで取得したオブ…

2016-2017買ってよかった書籍

最近はphpよりもSparkやKafkaといったミドルウェアを使った開発や、設計ばかりやってます。 そんな中で良い書籍がありましたので、せっかくなのでいくつか紹介します。 ビッグデータ系 スケーラブルリアルタイムデータ分析入門 スケーラブルリアルタイムデー…

PHP with Apache Kafka

Apache Foundation ビッグデータ系の処理向けにApache Kafkaを利用し始めました。 これまでもMessage Queueなどにzmq、Redis(PubSub)、ActiveMQ/RabbitMQなどを利用はしていましたが、 スケールのしやすさや、運用面や機能など今後フル活用できそうなためKaf…

Laravel5.4 Data MapperライクなDatabaseアプローチ

Laravelで使われているilluminate/databaseはPDOを利用して実装されています。 つまりPDOでできることは全て利用可能です。 Laravelの標準の機能では、データベースのレコードはCollectionクラスで、 stdClassまたは、配列でカラムと値が共に返却されます。 …

Laravel-Aspect update MessageDriven, QueryLog (1.7)

リリースノート作ればいいんですが、便利機能をいくつか追加しましたので、 使い所などを踏まえて追加機能の紹介です。 今回からLaravel5.2, 5.1は1.6、5.3以上は1.7となりました。 5.5リリース後、以前のバージョン対応は停止する予定です。 What そもそも…

php7 でxhp-extensionをインストール

XHP HackでおなじみのXHP XSS対策はもちろんのこと、現在のReactの元(ほぼ同じ記述法)になったもの、 とご存知の方も多いと思います。 php5ではfacebookのGithubで公開されています。 github.com が、現php7対応版は公開されておらず、Hackのみで利用可能と…

HHVM/Hack Dependency Injection/Service Location Container公開

About Hackで簡単に利用できる Dependency Injection/Service Location Containerライブラリを公開しました。 github.com Pimpleをはじめとして、 多くのライブラリをそのままHHVM上で動かすことはもちろんできますが、 typescriptやflowといった厳格さを利…

vagrant box / gardening update information

laravel/homesteadのCentOS7版のようなbox ytake/gardening というものをatlasで公開しています。 ytake.hateblo.jp 先月このボックスのアップデートを行いました。 CentOSのすぐ開発できるboxが欲しい!という方にはおそらくピッタリでしょう! github.com …

HHVM/Hackはじめの一歩

phpの拡張として、魅了的な要素がたくさん詰まったHHVM/Hack 挿入を始めるにあたって、壁にぶち当たるのがphpstormなどの様な高機能なIDEがない、 などがあげられるかもしれません IDEに代表される様な補完機能がなかなか効かないだったり、 typecheckerで既…

Lumenで実装するAPI REST拡張HATEOAS

API実装してますか? 弊社では最近APIにLumen(PHP), Zend Expressive(PHP), echo(Go)が利用されています。 そのなかでも徐々にAPIを表題のHATEOASへとシフトしつつあります。 HATEOASに関しては下記を参照ください postd.cc そのHATEOASですが、Lumenを使っ…

PHPカンファレンス関西2016 登壇しました

PHPカンファレンス関西2016 去年参加できなかったPHPカンファレンス関西に参加してきました。 conference.kphpug.jp その代わり今年は福岡に参加できませんでした。 今回は30分枠で設計寄りな[アスペクト指向によるアプリケーション拡張]で登壇しました。 日…

自分流Laravelディレクトリちら見せ

いつも通りTwitterでLaravelの話をしていたところ、 匿名でいいからディレクトリ構造シェアしてほしいw— たきゃはし (@takahashiyuya) 2016年5月2日 ということがあり、とりあえず自分流のLaravelを紹介します。 2014年にその時の自分の開発プロジェクトな…

Lumen with Aspect

Lumen使ってますか? APIなどのセッションや、テンプレートを必要としないアプリケーションには、 Laravelのマイクロフレームワーク版でもあるLumenを選択する方も多いのではないでしょうか。 このフレームワークはLaravelと同様にファサードを使うかどうか…

ytake/gardening HomesteadライクなCentOS

ytake/gardening という、 HomesteadのCentOS版みたいなものを公開中です。 laravel/homestead との違いは、 OSはUbuntu14.04ではなく、CentOS7となっています。 またwebサーバが、ApacheとNginxが切り替えて利用できるようになっています。 この環境ではデ…

2015年ytakeまとめ

本年は特にたくさんの方とご一緒する機会が多く、 周りの環境も多く変わる一年となりました。 今年作ったもの 今年はLaravel関連のパッケージを作ることが多かった一年でした。 後悔しているパッケージの他にも自作フレームワーク作りを行い、 何度も作って…

Lumen活用

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月18日分です。 今回は書籍では取り上げていませんが、Lumenについてです。 弊社のAPIでもLumen(とgolang)を活用していたりします。 Lumenおさらい LumenはLa…

Laravel services.jsonのなぞ

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月17日分です。 今回はLaravelに欠かせないファイル、services.jsonについて紹介します。 services.json Laravel5.1ではbootstrap/cache配下に作成されます。…

Laravel データベース拡張のヒント

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月16日分です。 データベース拡張 開発時に、Laravelがサポートしていないデータベースを使う必要がある場合や、 クエリビルダなどの挙動を変えたい場合があ…

Laravel ファサードを利用しないメリット

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月15日分です(1日遅れ更新中)。 必ずしも簡単 が重要ではない Laravelを選ぶ利用の一つとして、 フレームワークが持つ豊富な機能と、 静的メソッドに見える…

Laravel Broadcast Eventを使いこなそう

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月14日分です(1日遅れ更新中)。 Laravel Events LaravelのEventはフレームワークに登録されているコアのイベントを監視して、 実行させるイベント、 または…

Laravel Artisanコマンドアプリケーションを作ろう

これは Laravelリファレンス発売記念、販売促進アドベントカレンダー www.adventar.org の2015年12月13日分です(1日遅れ更新中)。 Laravel Artisan 今回はArtisanコマンドアプリケーション開発について紹介します。 Artisanコマンドなんてすでに作ってるぜ…