UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

2021-04-01から1ヶ月間の記事一覧

【GAE】複数のサービスのインスタンスを止める

GAE

フレキシブル環境のAppEngineはスタンダード環境と違って自動でインスタンスが止まることがなく、課金され続けてしまう そのため、処理しない期間がある場合はサービスのインスタンスを止めなければならない これまで、それをコンソール上で止めていたが、複…

【Cloud SQL】データベースフラグの確認

Cloud SQL(PostgreSQL)のパフォーマンスを向上する目的で、VACUUMを実行したい Cloud SQLではPostgreSQLのパラメータの調整、オプションの調整、インスタンスの構成や調整などの操作をフラグで行うことができる VACUUMもこのフラグで設定する フラグについ…

【PostgreSQL】VACUUMとは

PostgreSQLのパフォーマンスチューニングで、VACUUMというのを知ったので調べてみた VACUUMとは不要になった領域の回収を行うコマンド PostgreSQL は追記型のデータベースのため、レコードの削除時、更新時に不要な領域が溜まっていく 不要な領域が溜まって…

【Java】joinメソッドで文字列を連結する

普段Javaを触らないので、いまさらJavaのjoinメソッドをしった Java8で追加されたAPIで、Java7以前では以下のような書き方をしていたが List<String> stringList = new ArrayList<>(); stringList.add("foo"); stringList.add("bar"); stringList.add("baz"); Spring</string>…

【Chrome】scroll-to-text-fragment

Chrome80からscroll-to-text-fragmentがデフォルトで有効になっていることに気付いた scroll-to-text-fragmentは以下のjxckさんの記事がわかりやすい blog.jxck.io いままで特定の位置へのスクロールにはURLの後ろにHTMLのID属性をこんな感じでhttp://exampl…

【Renovate】設定ファイルの検証

Renovateの設定ファイルはかなり柔軟に設定できるのはいいんだが、あってるかどうかの検証したい 調べるとvalidatorがあったのでこれを使ってみる docs.renovatebot.com このコマンドでインストールせず実行が可能 $ npx --package renovate -c 'renovate-co…

【Renovate】パッケージアップデートの頻度を修正する

以前Renovateを導入してみたが、npmパッケージ更新のプルリク頻度が多すぎて取り込みが大変だったので頻度を見直すことにした uga-box.hatenablog.com まず、固定バージョンだとさすがにpackage.jsonの変更頻度が多いのでPin dependenciesをやめる また、パ…

【Web高速化】Back/forward cache (bfcache)

ブラウザの戻るボタンと進むボタンを使用するときに、ページが瞬時に読み込まれるように最適化する手法にbfcacheがある FireFoxやSafariではすでに実装されていて利用できるのだが、Chromeはバージョン86以降段階的に利用できるようになっていくとのこと web…

【Github】Release Drafterが動かない

以前、Gitub Actions の Release Drafter を使ってリリースノート作成を楽にしたことがあった uga-box.hatenablog.com 当初は問題なく動いていたが、最近まともに動いていないことに気付いたので対応する エラーログは以下 .github/workflows/release-drafte…

【CSS】Text Shadows

CSS

ウェブページのキービジュアルに文字を載せていたが、文字の視認性が悪い なので文字に影をつける対策を考える このときCSSのText Shadowsを使ってみることにした https://drafts.csswg.org/css-text-decor-3/#text-shadow-property 完成イメージ 使い方(例…

【Node.js】uncaughtExceptionでエラーハンドリング

Node.jsのアプリケーションで、どの例外処理にもキャッチされずにprocessまで来てしまったエラーをキャャッチしてプロセスが落ちないようにしたい そこで、uncaughtExceptionというのを知ったので調べた nodejs.org process.on('uncaughtException', (err, o…

【Sequelize】ログの出力方法をかえる

以前、Sequelizeを使ってPostgresqlに接続する方法を調べた uga-box.hatenablog.com これを引き続き利用していたが、使用しているとログに実行したsqlが出力されていることに気付いたので止めたい ドキュメントによるとインスタンスをつくるときのoption.log…

【HTML】Portals機能

2019年のChrome Dev Summitで紹介されていたPortalsについて、今どうなっているか調べてみた blog.uskay.io techblog.yahoo.co.jp 2019年のときはChrome Google Chromeでアドレスバーにchrome://flags/#enable-portalsと入力しPortalsのフラグをEnabledにす…

【Web高速化】NoState Prefetch

事前レンダリングを調べているとNoState Prefetchというワードにあたった 2018年の記事によると、当時?は事前レンダリングにパフォーマンス面で問題があったようで、NoState PrefetchとはChromeがその問題を解決するために考えた新しいメカニズムらしい dev…

【Web高速化】Privacy Preserving Prefetch Proxy

Privacy Preserving Prefetch Proxy(P4)と呼ばれる技術を知ったので概要だけ調べた github.com Privacy Preserving Prefetch Proxy(P4)は、Resource Hintsという事前にコンテンツをプリフェッチ/レンダリングしておくことでWeb高速化を図る手法における…

【Webセキュリティ】Site Isolation(サイト分離)

Site Isolation(サイト分離)というワードを聞いて調べたところ以前調べたSpectreとMeltdownが関係あることがわかった uga-box.hatenablog.com ウェブサイトでSpectre のようなサイドチャネル攻撃を使えば、ブラウザが開いている他のサイトのデータやログイ…

【Linuxコマンド】メモ:行の取り出しを高速化

巨大なログファイルを以下のコマンドを使って範囲切り出ししたいが結果が遅い $ cat ファイル名 | head -n 終了行 | tail -n 開始行 こんなときに、-cというオプションを使うと高速で結果が返ってくることを知った man7.org $ man tail ... -c, --bytes=N ou…

【Linuxコマンド】メモ:特定の行の範囲を切り出す

毎回どうやるのか調べてるのでメモ やりかたは2つ ①sedを使う $ cat ファイル名 | sed -n '開始行,終了行p' ②headとtailを使う $ cat ファイル名 | head -n 終了行 | tail -n 開始行 どちらが早いのだろうと調べた 実際やりたかった450MBあるファイルに対し…

【Cloud Logging】ログ検索クエリ

Cloud Loggingのログビューアが新しいUIになり、クエリを書かないといけなくなった 旧UIでは「基本的なクエリ」というクエリセットが用意されていたが、新UIでは旧UIの「高度なクエリ」に該当する自らクエリを書かないといけなくなった そこで、クエリの書き…

【GCP】サーバーレス VPC アクセスでApp Engineスタンダード環境から VPC ネットワークに接続する

VPCネットワークにあるGCEインスタンスに接続する必要があったため、フレキシブル環境App Engineを利用してる ただ、フレキシブル環境App Engineはアクセスがなくても最低でも1インスタンスを常時起動・常時課金なため、スタンダード環境に比べてコストがか…

【Security】SpectreとMeltdown

2018年にGoogleのProject ZeroがCPUの脆弱性SpectreとMeltdownを公開し話題になったことを今更ながら知った googleprojectzero.blogspot.com CPUデータキャッシュのタイミングを悪用して、誤って推測された実行から情報を効率的にリークし、さまざまなコンテ…

【CSS】スクロールバーを非表示にする

CSS

何度も調べているのでメモ IE、Edge https://developer.mozilla.org/en-US/docs/Archive/Web/CSS/-ms-overflow-style .container { overflow: scroll; -ms-overflow-style: none; } Chrome、Safari https://developer.mozilla.org/en-US/docs/Web/CSS/::-web…