Lambdaカクテル

京都在住Webエンジニアの日記です

Invite link for Scalaわいわいランド

akka

Akka(2.8) PersistenceでSerializerとしてCirceを使う方法

Akka PersistenceはAkkaでイベントソーシングを行い、アクターの状態を永続化するためのライブラリである。 doc.akka.io イベントなどの永続化にJSONライブラリであるCirceを使ったのでその手順をメモしておく。ここではAkka Persistenceの導入そのものの話…

Akka(2.8)でアクターの監視(Supervise)を行う

Akka 2.8でActorがクラッシュした場合にどのように振る舞うかについて調べる機会があったのでメモ。 ライブラリ依存性は以下の通り: libraryDependencies += "com.typesafe.akka" %% "akka-actor-typed" % "2.8.3 Actorの監視 通常のプログラムは例外をキャ…

Akka HTTPでContent-Typeを設定する方法

Akka HTTPは素朴なライブラリなので、特にそういうプラグインを使っていない場合は自分でレスポンスのContent-Typeを設定する必要がある。この記事では、Akka HTTPでContent-Typeを設定する方法と、Acceptヘッダを設定する方法を説明する。 この記事ではAkka…

Akka StreamsでReactive FizzBuzzした 〜Akka Streams入門〜

Reactive streamという概念をなんとなく知っていたが、実際には使ったことがなかったので、そのうち使ってみたいと思っていた矢先の話。 みずほ銀行の文脈ではてブを眺めてたら、無停止システムに関する記事が出てきて、これが面白かった。 koduki.hatenablo…

akka-httpで得られるJSONレスポンスをcase classに自動マップする方法

調べてみたけどぜんぜん分からなくて3日くらい悩んだのでメモ. akka-http まずakka-httpについて.akka-httpは見てのとおりakkaで作られたHTTPライブラリで,client業もserver業もこなせる何でも屋です.じゃあakkaは何かというと,アクターモデルによる非…

ScalaでAkka ZeroMQ Extensionを使う(インストール、Pub-Sub篇)

便利なアクターフレームワークAkka*1でもZeroMQが使えるようなので、ネットに散らばっている情報を組み合わせながら実装してみた。一筋縄ではいかなかったので、自分がつまづいた箇所などを後学のためにメモしておこうと思う。Akka ZeroMQ Extensionに関する…

環境非依存のMacで動く艦これブラウザを作ることにした

あくまで実験として遊んでみる。公開はある程度形になったらしてみたい。WindowsにはKanColleViewerがあるが、Macでは動かないのでこちらでも劣らないものを作ってみたい。ついでにAngularJSも勉強する。

ScalaでHTTPプロキシを作ることにした

リバースプロキシに興味がある……というより、画像が含まれるサイトの表示を効率化したかったので作ってみることにした。HTTP proxy自体の仕組みは簡単で、ブラウザが本来の通信したいサーバに送られるはずのリクエストを代わりにproxyサーバに送るだけで実現…

私立プログラミングキャンプに行ってScala+PlayでWebSocket通信してみた

どうも。Windymeltです。 僕は今はてなサマーインターンで京都に滞在しており、id:masawadaが私立プログラミングキャンプのお誘いをしてくれて僕も参加してきたのでそのレポートです。 私立プログラミングキャンプははてなオフィスで行われたため迷わず会場…

play distで作成したartifactにtypesafe-configを注入する

ども。今回はPlay Framework 2.2.xのdistコマンドで生成される成果物の扱いに関してのお話です。 まとめると distすると後からconf/以下のファイルを編集しても意味無し -Dconfig.file=で指定すると読んでくれる 二つ以上の.confを読ませるとハマることがあ…

Akka-remoteでNAT越え

Akka-remoteを利用して、NATを越えたメッセージングを実現するための方法。 Akka-remoteにおいてホスト名を指定するakka.remote.netty.tcp.hostnameには、マシンが認識する名前であるプライベートアドレスもしくはFQDNしか指定することができず、グローバル…

ScalaでAkkaのSTMを使う その1(Agents)

Akkaでアプリケーションを開発していて、ついにSTMを使う機会があったので、メモを兼ねてこの記事を書きます。 AkkaのDocumentationを訳しました。

Akkaのコンフィギュレーションについての覚書

Sometimes it can be useful to include another configuration file, for example if you have one application.conf with all environment independent settings and then override some settings for specific environments. Akka manual (2.9.4 Including…

Akka-basedなライブラリのコンフィギュレーションの場所

以前からAkkaを利用したアプリケーションを作成しているのですが、Configurationの概念をうまく理解できていません。 まず、DHT((分散ハッシュテーブル))を実現するためのライブラリをAkkaとScalaで作成しました。P2PChordというライブラリです。 これが…

Akkaは許してくれないが受け入れてはくれる

Actorの挙動が奇妙奇天烈(おまえがわるい)ので苦しんでいます。 状況 Actorにメッセージを送り、変数(ケースクラス)の内容の一部をごにょごにょして返す 症状 勝手にActorが分身してる インスタンスを生成してるから変数が初期化されてる 初期化されたケ…

★記事をRTしてもらえると喜びます
Webアプリケーション開発関連の記事を投稿しています.読者になってみませんか?