2020-03-01から1ヶ月間の記事一覧
grpc.io gRPCとは Googleが開発した通信プロトコルの1つ プロトコルバッファを使ってシリアライズ化し、HTTP/2が使って高速に通信する protoファイルと呼ばれるIDL(Interface Definition Language)にAPI仕様を記述する 通信方式 gRPCはサービスを定義すると…
Githubで管理しているリポジトリのリリースノートをちゃんと記載しようとしたとき、決まった方式で日付やタイトルなどを書いておきたい そんなとき、markdown のヘッダに、YAML Front-matter と呼ばれるメタ情報を書くルールがあることを知った Front-matter…
uga-box.hatenablog.com 上の記事でITPのリリースで更新されたことについて調査していたときにDelayed Bounce Tracking(遅延バウンストラッキング)という言葉を知ったのだが、遅延の前にそもそもバウンストラッキングとは何かを調べた ITP2.0のリリース時…
米Appleが3月24日(現地時間)iOS13.4やSafari13.1と共に新しい Intelligent Tracking Prevention (ITP)をリリースした webkit.org このITPのリリースで更新されたことと更新理由などをざっくりまとめてみた クロスサイトリソースのCookieをデフォルトで全面…
OkHttpを使って、あるサービスのAPIに接続しているところでソケットタイムアウトを起こしていた java.net.SocketException: Socket closed 根本原因はまだ不明だが、一旦タイムアウト値を延ばすようにしてみる square.github.io デフォルトは10秒 OkHttpClie…
GCP Datastoreにまたしてもうっかり間違えたデータを大量に登録してしまった 前回はある日付以降のデータを削除したかったのだが、今度はあるフィールドの文字列を前方一致で検索した結果を削除したい 削除の方法はわかっているので、検索方法を調査した uga…
GCP Datastoreにうっかり間違えたデータを大量に登録してしまった 幸い、今日(2020/03/24 AM10:00)以降に登録したデータを全て削除すればよいので、GUIからフィルタリングしてチェックボックス全てを選択して削除すればよいかと思ったが、一覧には最大50ま…
サーバープッシュという機能を使ったWeb高速化の話を聞いたので概要を調査してみた サーバープッシュ HTTP/2のプロトコルでの通信において、サーバーがクライアントに対して事前にレスポンスを送信(プッシュ)できるようにしておくこと HTTP/2での通信は単…
GCPのCloud Tasksをつかっていて、あるときあるジョブのタスクがほとんどエラーで失敗する事象がおきた 原因はバックエンドが捌けないほどのレートでタスクを実行していたことだった bucket_sizeをずっといじっていたが解決せず、結果的にmax_concurrent_req…
いままでElasticsearchのシングルindexでデータをためていたが、どんどん肥大化していき古いデータの更新や本番環境へのsnapshot/restoreがそろそろ辛くなってきたため、日付ごとにindexを変えてためる運用を始めた よくログとかではこのパターンを使うよう…
以前にEnumのようなUnion型を生成する方法を調べた 【FlowType】逆引きメモ - UGA Boxxx このとき、Keyの型チェックに対しては$Keysを使うことがわかったが、Valueに対しての型チェックはどうやるのかがわからなかったので調べたら、単純に$Valuesを使えばよ…
関数のオーバーロード(シグネチャの異なるメソッド)に対応する型を考える 例えば、以下の関数の型について考える number を受け取った場合は string を返す string を受け取った場合は number を返す この場合、どちらか一方ということからUnion型|を使っ…
FastlyのFastly TLSサービスを調べていたところ SNI拡張を使って、「クライアントが通信したいホスト名をサーバに通知できるようにしている」っていう話がわからなかったのでSNIについて調べた このへん By default, Fastly installs TLS certificates at a …
PKI/認証局の団体であるCA/Browser Forum(CAブラウザーフォーラム)で採用されているセキュリティ標準の改善により、TLS証明書を要求する際のドメイン検証に使用されるランダム値の有効期間が30日間のローリングウィンドウに短縮されたらしい 30日間のローリ…
いま自社で運用しているWebサービスに加えて、ネイティブアプリを作るべきか、どう作るべきか悩んでいたところ、OYO LifeがTWAというものを利用したOYO LiteというAndroidアプリを開発した これによりコンバージョン率やユーザ数、アプリダウンロード数を増…
Fastlyを利用しているが、そのFastlyが利用しているVanishというOSSについてよく知らなかったので調べてみた Fastlyの公式ドキュメントでVarnishを使用する利点について書かれていたので以下のドキュメントをまとめる www.fastly.com Varnishとは? Fastlyの…
半年くらいタスク管理ツールにScrumDoを使っていたが微妙なところがでてきた www.scrumdo.com ScrumDoは名前にある通りスクラムに即したタスク管理ができるツールで、 もっと前にはTrelloを使っていたが、1つのビューに複数のレーンが作れるという理由でScr…
Javaで実装する複数のコンテキストの構成管理に、Mavenマルチモジュールにするのがよいか、リポジトリを分けた方がよいかで迷った そこでマルチモジュール のメリットデメリットをまとめてみる メリット モジュールの重複を減らすことができる モジュール間…
Flow使ってみて調べた使い方 分割代入した変数に対して const { pathname }: { pathname: string } = location; 指定された型をすべて満たす型をつくる Intersection types を使う // @flow type A = { a: number }; type B = { b: boolean }; type C = { c:…
restoreを実行後にずっとUNASSIGNED のままactiveにならずに困ってしまった 結果的にインデックスを一度削除して、もう一度restoreしたら解消したので原因不明なのだが、調査中にみた以下の記事が有益だったのでまとめておく www.datadoghq.com Elasticsearc…
Flowって最近どうなのかを調べたら、ちょうど先日3/10に2020年の計画が発表されていたのでざっくりまとめてみた
Spring Boot起動時に以下のエラーが発生してしまい、ハマったのでメモ postgres Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. 結論 ライブラリーがクラスパスにないことが原因だっ…