eaglesakuraの技術ブログ

技術的な話題とか、メモとか。

GoogleAppEngine

Firestoreのローカルエミュレーターは同時にトランザクション接続しすぎるとフリーズする

問題点 表題のまま 100個くらいのUnitTestがgoroutineで2〜3のトランザクションを並列発行した フリーズした 回避 UnitTest時のみ、トランザクションが集中する箇所でmutexによる排他制御を入れた まあしゃあない

FirestoreとMemorystoreとDatastoreと

Google Cloud Platformのサーバーデータはどこに保存するか SQL系は月額固定課金なので、気軽には使えない(お金持ちを除く) なので従量課金制の保存先としてDatastoreを気に入っていた DatastoreとMemcache DatastoreはFirestoreと両立できない アプリがFi…

やっぱ時刻でIDとってるようなのはダメだな

何が起きたか 時刻ベース(ナノ秒)でUnique IDを割り振っていた 速度を向上させた UnitTestの実行速度が向上した みんなも使おうRyzen TR 人類皆RAM 64GB 何故かテストが落ちまくる ランダムで落ちまくる ランダムで成功する 1時間位頭抱えてた 問題点を見…

GAE/Go 1.12は認証ヘッダが重複しているとGoogle Frontendが自動的に400を返却する

どういう問題か GAE/Go 1.12にバージョンアップをした サーバー側のUnitTestは通過していた クライアント側のテストを行うと、特定APIがすべて400を返却していた ログが残っていない。少なくともGAEアプリコードに到達していない。 原因 クライアント側で Au…

実質2日でDatastoreをFirestore移行した話

謝罪 ごめんなさいごめんなさいごめんなさいごめんなさいごめんなさいごめんなさいごめんなさいごめんなさい。 本番環境のFirestoreをONにしてしまったのは僕です。 何が起こったのか アプリから利用されるサーバーをGAE/Goで開発していた GCPプロジェクトは…