システムに関するa20130517のブックマーク (2)
-
この記事はMERPAYTECH OPENNESS MONTHの15日目の記事です。 こんにちは。メルペイのPayment PlatformチームでPaymentServiceの開発を担当するエンジニアの @foghost です。 メルペイではマイクロサービスのアーキテクチャで決済システムを開発しています。その中でPaymentServiceは決済トランザクション管理の基盤サービスとして、下位層のサービス︵外部サービスも含め︶が提供する各種決済手段を利用して、上位層のサービス︵メルカリ、NFC,コード払いなど︶に必要な決済フローを共通APIとして提供しています。PaymentServiceが提供する決済処理に複数のサービスを跨いでお金の動きを正確に管理する必要があるので、作り始めた頃から決済トランザクション管理を最も重要な課題として、サービスを跨いでもデータの整合性が取れる仕組みを作ってき
-
同期処理が失敗した原因は、4台をつなぐスイッチの不具合。具体的には、スイッチが故障状態であるにもかからず、故障を知らせる﹁故障シグナル﹂を発信しなかった。国内線システムは故障シグナルを検知するとスイッチを予備機に切り替えるが、今回はその機能そのものを作動できなかった。 スイッチは完全に停止したわけではなく、﹁不安定ながらも動作していたようだ﹂︵同︶。そのため、DBサーバー間の同期は順次失敗し、停止していったと見られる。 ANA広報によると、スイッチは米シスコシステムズ製﹁Catalyst 4948E﹂という。﹁2010年6月の発売開始以降、世界で4万3000台、うち日本で8700台を販売しているが、今回の不具合は初めての事象と聞いている﹂︵ANA広報︶。なぜ﹁故障シグナル﹂が発信できなかったかは分かっていない。1台での縮退運転を決断4台の完全停止から37分後、ANAは1台のDBサーバー
-
1