設計
長いので目次! まぁまぁ難しい話をしてきました PDOとかのトランザクション内でSQSとか複数処理すればいいんじゃない? RDBトランザクションと外部システム間でのコミットが同期されていない 冪等性や再送制御を考慮した仕組みが不足している 本来は2相コミ…
色々やった気がする2024 いつもの年末振り返り。 「Goで実践 アクターモデル」シリーズは来年もちゃんとやります!!! 転職・CTOに戻る 2024年初頭に前職を辞め千株式会社に入社 blog.ytake.jp.net エンジニアリング以外の部分でも課題が多く、 今は外に出…
ちょっと時間が空いてしまいましたが・・ これまではローカルのみでアクターを動かす簡単なアプリケーションと、 基本的な機能や考え方について解説しました。 今回はProto Actorを使って、ネットワーク上でアクターシステム同士がコミュニケーションを行い…
PHPだけで分散処理ってできるの? 多分皆さんがそう思うはずです。 これまでPHPではリソースの操作などで並行処理を利用することは エクステンションなどの介して実現はできていましたが、 物理的分かれているPHPに処理を依頼する、結果を戻すなどは Kafkaな…
Supervisionの続き 前回はアクターモデルの監視・監督について説明していきました。 特に親子関係による監視・監督についてはなんとなく理解することができたのではないかと思います。 今回は親子関係にないアクター間の監視について触れていきます。 blog.y…
PHPでCQRS+ES PHPで完全なCQRS+ESを表現するには、CDC(Change Data Capture)+Outbox形式にするのが定番でした。 単純なQueueではリプレイができず、 伝播させて終わり、いわゆるEvent Streamingの形になってしまうことが多いと思います。 とはいえCDC+Outbox…
はじめに 今回は、アクターモデルの監視・監督について説明します。 監督は親アクターが子アクターの状態を監督する機能で、 監視はアクターモデルをサポートするツールキットの特徴のひとつで、アクターが他のアクターの状態を監視する機能です。 一般的なW…
PHPでアクターモデルが導入できない・・? 長い間そう言われてきました(自分も言ってました)。 実際に並行システムのためのものでもあり、 PHPでは簡単な並行処理以外は難しくもありました。 ja.wikipedia.org PHP主体の方はOOPに慣れ親しんでいると思いま…
メッセージが届かない時って? 前回はアクターモデルのMailboxにメッセージが届いた時にどの様な仕組みで処理されるかを見ていきました。 今回はメッセージが届かない時に何が起きるかを見ていきます。 前回 blog.ytake.jp.net DeadLetters メッセージが届か…
Malboxとは 前回まではアクターを使った簡単な実装について解説しました。 一般的なWebアプリケーションで利用するHTTPのリクエストレスポンスを中心として考えるものと異なり、 情報伝達経路を中心に考えていくように感じられたかもしれません。 アクターの…
小さなアプリケーションを実装してみよう 今回は、前回のhello worldから少しだけアクターについて掘り下げていきます。 Proto Actorでの用語で記述しますが、Akka/Pekkoと用語がちょっと異なるだけなので、 読み替えてみると良いと思います。 構成を考えよ…
Hello Actor 細かい機能の解説はあとの回として、 まずはアクターシステムを使ったプログラミングを体験してみましょう。 Goではアクターシステムが商用でも十分利用できるものは、 下記のProto Actorとergoがあります。 github.com github.com Proto.Actor…
まえがき アクターモデルといえばErlang、もしくはScala/Javaなどで利用できるAkka/Pekkoがデファクトですが、 Go言語でも不自由なく利用できるProto Actorというツールキットがあります。 Akka/Pekkoほど機能はないため いくつかは自分で実装しなければいけ…
Goで簡単に分散システムを作りながらNew Relicを使ってしっかりとメトリクス収集していきましょう、という内容をお届け
メッセージを扱ったシステムでは必須のテクニックの一つ、スキャッタ・ギャザーを実装してみましょう!Goを使ってアクターモデルを学びます。
SREはインフラエンジニアだけではなく、みんなの活動なのではないかという話を書きました みんなでやろうSRE!
技術的負債はどこにでもある タイトルにあるように、 いくつかの開発チームと一緒に技術的負債を改善する開発や、それらに関する活動を行うことが多く いろんな取り組みをしていく中で、よかったことがいくつかありました。 もちろん技術的負債を返すのは数…
とても長い文章ですけど、現状と向き合ってシステムを考える時の頭の中をちょっとだけ。 うまく文章化されてませんが 一つの物事をいろんな角度で見てみる話。