タグ

ブックマーク / blog.ytake.jp.net (7)

  • PHP with Apache Kafka - ytake blog

    Apache Foundation ビッグデータ系の処理向けにApache Kafkaを利用し始めました。 これまでもMessage Queueなどにzmq、Redis(PubSub)、ActiveMQ/RabbitMQなどを利用はしていましたが、 スケールのしやすさや、運用面や機能など今後フル活用できそうなためKafkaに、と。 HadoopやHbase、Cassandraといったミドルウェアを扱う機会も増えていているため、 親和性なども当然あります Kafkaどうなのよ 保存機能 Kafkaでは指定した期間、メッセージを保存する機能が用意されています。 これまでもその機能を持つMessage Queueはありましたが、 配信後にアプリケーション側から再配信させるといったことができます。 デフォルトで2週間ほど保持することができるので、 障害発生時に、再度処理を実行させることも、配信した

    PHP with Apache Kafka - ytake blog
  • Laravelで作る分析・分散処理アプリケーション その1 - ytake blog

    先日のPHPカンファレンスやPHPカンファレンス関西、buildersconでお話しした内容を元にして、 Laravel(PHP)を使って分析処理の簡単な実装や、 ミドルウェアを組み合わせた分散処理の実装を紹介します。 ブログのサンプルアプリケーションは下記になりますので、 コードやミドルウェアなどを参照ください。 github.com Laravelとkafka Connect、Elasticsearchの組み合わせ Apache Kafkaを使ったスケーラブルなアプリケーションの入門編です。 レコード量が多い複雑なコンテンツのデータや検索要件、Like検索など、 RDBMSの不得意な分野などを対応することも多いかと思いますが、 RDBMSとElasticsearchを併用しKafkaで複雑さを吸収して、 アプリケーションをスケールさせるようにしてみましょう。 データベースのテーブル設

    Laravelで作る分析・分散処理アプリケーション その1 - ytake blog
  • PHPカンファレンス2017でApache Kafkaについて話しました - ytake blog

    PHPカンファレンス2017 今年も参加してきました 2017/10/08 PHPカンファレンス2017で発表に使ったスライドです speakerdeck.com 巨大化してしまったアプリケーションを分解する場合や、 マイクロサービス化するにあたって、 こうしたメッセージミドルウェアを利用するのがアプリケーション開発の重要なポイントになっています。 コンポーネント化やDDDなどによる堅実なアプリケーションも大事な要素ではありますが、 最近では複数のデータベースを跨いでるアプリケーションや、 ユーザー向けのサービスで分析処理、 ビッグデータなどと連携するアプリケーションでKafkaを利用するケースが多くなっている傾向もあります。 PHPは多くのサービスを支えている言語です。 今後は堅実さと、より巨大なデータフローを支えるシーンが多くなると思います。 そんな場面に直面した時のヒントになればと思

    PHPカンファレンス2017でApache Kafkaについて話しました - ytake blog
    shin1x1
    shin1x1 2017/10/10
    この資料をベースに竹澤さんを囲んであれこれ聞くと楽しそう
  • Laravel5.4 Data MapperライクなDatabaseアプローチ - ytake blog

    Laravelで使われているilluminate/databaseはPDOを利用して実装されています。 つまりPDOでできることは全て利用可能です。 Laravelの標準の機能では、データベースのレコードはCollectionクラスで、 stdClassまたは、配列でカラムと値が共に返却されます。 Data Mapperライクに任意のオブジェクトで返却する様にするには、 Illuminate\Database\Events\StatementPrepared をlistenする必要がありますが、 Database処理にEventが依存してしまうため(eventヘルパーを使ってもクラスに依存していることになります)、 fetchModeを変更できるメソッドが欲しくなります(laravel5.3まではありましたが変更されました) 5.4で利用したい場合は次の様な拡張で簡単に追加することができま

    Laravel5.4 Data MapperライクなDatabaseアプローチ - ytake blog
  • Lumenで実装するAPI REST拡張HATEOAS - ytake blog

    API実装してますか? 弊社では最近APIにLumen(PHP), Zend Expressive(PHP), echo(Go)が利用されています。 そのなかでも徐々にAPIを表題のHATEOASへとシフトしつつあります。 HATEOASに関しては下記を参照ください postd.cc そのHATEOASですが、Lumenを使って実装する簡単な例を紹介します。 記事を返却するAPI jsonで返却するAPIの実装をしてみましょう。 Article Entity <?php namespace App\Domain\Entity; /** * Class Article */ final class Article { /** @var int */ private $id; /** @var string */ private $title; /** @var Comment[] */ pr

    Lumenで実装するAPI REST拡張HATEOAS - ytake blog
  • PHPカンファレンス関西2016 登壇しました - ytake blog

    PHPカンファレンス関西2016 去年参加できなかったPHPカンファレンス関西に参加してきました。 conference.kphpug.jp その代わり今年は福岡に参加できませんでした。 今回は30分枠で設計寄りな[アスペクト指向によるアプリケーション拡張]で登壇しました。 日頃開発しているアプリケーションに、 アスペクト指向で取り上げられる関心毎を、 基盤的関心毎、ユースケースによる関心毎、 拡張の分離といった観点でお話しさせていただきました。 これらはアスペクト指向を取り入れるに当たって、大事なもの、 というわけではなく常につきまとう問題にどう立ち向かっていくか、というものです。 そして「サンプルを公開します!」の通り、 スライドの内容に合わせて、LaravelLaravel-Aspectパッケージを利用した サンプルコードを公開してあります。 github.com アプリケーション

    PHPカンファレンス関西2016 登壇しました - ytake blog
  • 自分流Laravelディレクトリちら見せ - ytake blog

    いつも通りTwitterLaravelの話をしていたところ、 匿名でいいからディレクトリ構造シェアしてほしいw— たきゃはし (@takahashiyuya) 2016年5月2日 ということがあり、とりあえず自分流のLaravelを紹介します。 2014年にその時の自分の開発プロジェクトなどで利用していたものをまとめました。 blog.comnect.jp.net 新原さんのエントリも参考にしてみると良いでしょう。 www.1x1.jp Laravelは開発者が自由に組み合わせて、自由に構築できるフレームワークという側面があり、 ある程度慣れてきた頃に、みなさん色々試行錯誤すると思います。 RoRっぽさを求めている方はそれの色を求め、 Javaや、エンタープライズ向けのものを求めている方はその色になっていくと思います。 あれから月日が流れ、折角ですので2016年版として自分流のLarav

    自分流Laravelディレクトリちら見せ - ytake blog
    shin1x1
    shin1x1 2016/05/05
    いいですねー!今度、自分のも書こう。
  • 1