どうも、こんにちは。今現在出会い系アプリをiOSで1つ、Androidで2つリリースすることに成功しました。 前回の記事でも書いた通り、iOSはとにかく審査が遅い。実はまだiOSでは3つ審査待ちの状態になっています(何度リジェクトされたかわからない)。 まずは公開中の3つのアプリをご紹介 Hey - Dating app. Yuki Sato Social Networking Free アプリリリース後はどうなるか? まだどのアプリもリリースして1ヶ月立っていないので統計が少ないですがわかる範囲で情報をまとめたいと思います。 ※広告費を一切かけない自然流入のみです。 初日 放っておいてもアプリは自然とダウンロード&インストールされてユーザーは増えていきます。ただしユーザー数も少ないことがあってほとんどのユーザーはすぐにオフラインになり、その後利用していただく可能性も少ない。当然ユーザー同
こんにちは。ブランドソリューション開発部プロダクト開発ブロックの岡元です。普段はFulfillment by ZOZOとZOZOMOのブランド実店舗の在庫確認・在庫取り置きサービスの開発、保守をしています。 本記事では、ブランド実店舗の在庫確認・在庫取り置きサービスで実装したCQRSアーキテクチャについて紹介させていただきます。 CQRSの実装においては、データベース(以下、DB)分割まで行い、コマンド側DBにはAmazon DynamoDB(以下、DynamoDB)、クエリ側DBにはAmazon Aurora MySQL(以下、Aurora MySQL)を用いています。また、コマンド側DBとクエリ側DBの橋渡しを担うメッセージングにおいてはOutboxパターンと変更データキャプチャを用いました。DBとメッセージングシステムへの二重書き込みを避けることで障害などのタイミングで顕在化する潜在
概要 本記事の目的は、マイクロサービスアーキテクチャでよく使われるパターン、Transactional Outboxについての説明とAWSで実現する方法をお届けすることとしています。 Transactional Outboxを説明する中でマイクロサービスアーキテクチャについてや、Sagaパターンについてを詳細に述べることは致しません。 Transactional Outbox Sagaパターン マイクロサービスで複数のリソースの結果整合性を利用する方法として、Sagaパターンと呼ばれるものがあります。 Sagaパターンというのは、複数にまたがるサービスごとでトランザクションを分解し、それぞれが独立で処理するようなアーキテクチャパターンです。 Sagaパターンによりトランザクションをサービスごとに分解することの何が嬉しいのか。 => それは1トランザクションあたりにかかる時間を短縮し、それに
pattern transactional messaging service design inter-service communication Also known as Application events Context A service command typically needs to create/update/delete aggregates in the database and send messages/events to a message broker. For example, a service that participates in a saga needs to update business entities and send messages/events. Similarly, a service that publishes a doma
Credit Designチームでバックエンドエンジニアをしている@iwataです。主にメルペイスマート払い関連の開発をしています。 Merpay Advent Calendar 2021 の21日目の記事をお届けします。 メルペイスマート払いの開発においてもご多分に漏れず、マイクロサービスアーキテクチャを採用しています。マイクロサービス開発において避けては通れない問題として、分散トランザクションによるデータ整合性の担保があります。メルペイスマート払いマイクロサービスでは一部APIにおいて整合性担保のために、Transactional outboxパターンを用いた実装をしています。 本記事ではテーブル設計を含めたその実装の詳細を紹介したいと思います。 tl;dr Transactional outboxパターンを使ったSpanner, Pub/Sub間での整合性担保 Spannerならでは
【Qiita】簡単にgRPCが叩けるOSSツール BloomRPC で紹介されている BloomRPC を使ってみました。サービス開発時のデバッグに便利そうです。 BloomRPC とは 【Github】BloorRPC gRPC の GUI クライアントです。 JSON 形式で記述したリクエストデータを実行中のサービスに送信し、レスポンスデータの内容を確認することができます。 ストリームにも対応しています。 スクリーンショット インストール 各プラットフォーム向けのインストーラーが公開されています。 私は windows 版(bloomrpc-setup-1.3.1.exe)をインストールしました。 使い方 Protos の右上の+ボタンをクリックし、対象の proto ファイルを読み込みます。 実行したいメソッドをツリーから選択します。 サービスのエンドポイントを入力します。 リクエス
F80M3なお客様に、車検とご一緒にいろいろと! 2019.09.28 車検/法定点検整備 3Ddesign, BMW, F80-M3, 車検, 車高調, BMW車検, 法定点検整備, オリジナルブレンドオイル, アクセスオリジナルオイル, 消臭EDIVIS さてさて、現在目黒店では、F80M3・F82M4が入れ替わり立ち替わりご入庫いただいております。ぱっきぱきなカラーな固体や、伝説のGTSまでご入庫ナウでございます。 そしてそして、本日ご紹介の車両はS様のF80M3でございますね。 用賀店BLOGでもご紹介があったように、今回は車検でご入庫していただきまして、いろいろと施工させていただきました。 まず、どうですか?このツルピカ君!すきとーーーったカラーなヤスマリナブルーがさんさんと輝いております。こちらは以前施工させていただきました、BRAVEcarbonコーティングのメンテナンスを行
はじめに こんにちは。 セキュリティエンジニアの@okazu-dm です。 この記事は、Auth0のアクセストークンの保存方法について解説した前回の記事の補足となる記事です。前回の記事の要旨をざっくりまとめると以下のようなものでした。 Auth0はデフォルトではアクセストークンをブラウザのメモリ空間上にのみ保存するin-memory方式であり、XSSへの耐性のなさ等の理由でlocalStorageで保存することを推奨していない しかし、XSSでアクセストークンを奪取できるのはin-memory方式でも同じのはず(検証は行いませんでした)。localStorage方式を過度に忌避する必要はないのではないか なお、Flatt Securityの提供するセキュリティ診断はAuth0に限らずFirebase AuthenticationやAmazon CognitoなどのIDaaSのセキュアな利用
こんにちは。GoでWeb開発していますか?私はしていません。Goに限らず、既成のWebアプリケーションフレームワークを使わずに自前でWebフォームを作る場合、なにも考えずに書くと CSRF (Cross Site Request Forgery) 脆弱性を作りこみ、不正なユーザー操作を実行されてしまう可能性があります。 ダメな例 例えば以下のGoコードで作成されるフォームにはCSRF脆弱性があります。SubmitSignupForm ハンドラは、受け取ったリクエストが自分のサイト上のフォームからサブミットされたものかチェックしていないので、攻撃者が他のサイト上のフォームを使い、第三者のユーザーのブラウザで任意の操作を実行させることができてしまいます。 func main() { r := mux.NewRouter() r.HandleFunc("/signup", ShowSignupF
組みたて車両3台の直前準備でなかなか時間がない状況なのですが、乗る機会が増えてきましたので事前にトラブルに合いにくいよう、以前からの繰り返しにはなりますが、忘れておられる方も多いようなので知っておいて欲しいことを3つ書きます。 それは車体のねじボルト類が緩んでいないかの確認、エンジン始動時の手順、走行中にエンジンの調子が悪くなった時の対応について知っておいて欲しいことです。 納品時に詳しくお話ししておりますが、どうも皆さん納車時は頭に入らないようです。注文して長く待たされて納品ですから、そりゃ当然です。これはうちが悪い。 全ての旧車バイク、キャブレター付きの水冷車にも当てはまりますから必ず頭に入れておいて欲しいことです。 まず一つ目は旧車バイクは定期的にネジ、ボルト、ナット類が緩んでいないか確認が必要です。足回りなどに使われる大きなボルト、ナットのシャフト部分などはそれほど緩んだりしません
はじめに TechDiv BeyondXサービスチームの石鍋です。 Prebid.jsでHeaderBiddingを実現させたい人向けの記事を作成してみました。 Header Biddingって? 言葉の通り、HTMLタグの「head」タグに各SSPの「Bidding(入札)」をすることで、 広告サーバー(PrebidなのでGoogle Ad Manager)にリクエストを送信する前に各SSPに入札させ、もっとも高単価な広告とGAMの広告を競わせ、単価が高い方の広告を配信する仕組みのことです。 Prebid.jsって? 先に説明したHeader Biddingを実現させるために開発されているWeb向けの機能豊富なヘッダー入札プラットフォームのオープンソースです。 本記事はPrebid.jsのバージョンは2.xx系をターゲットとしています。 簡単な概略図 HeaderBidding実現に向け
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く