Open29

exdiffツール記録集約

nk_worknk_work

とりあえずFastapi + Reactで作成した、Webアプリケーションを S3 Lambda で公開する。
追加でAPI gateway Route53 を使用する。(ElasticIPは使用?)
RDSやEC2は料金面で個人的に厳しいので使用はしない。
セキュリティ用にCloudFlare,データベースにsupabaseを使用する予定。
athenaでデータ分析するところまでできれば⚪︎
athenaとsnowflakeとの比較、cloudformationとterraformの比較も行う

nk_worknk_work

まずは自作FastAPIアプリをLambdaで使用できるように、Mangumを使用。

from mangum import Mangum

app = FastAPI()
handler = Mangum(app)

で作成appをハンドラーに渡す。

nk_worknk_work

Dockerを作成してアプリを格納
AWS ECRにあげる
レポジトリを作成

nk_worknk_work

ecrのプッシュコマンドをローカルで実行したらエラー
zsh: command not found: aws
aws cliがローカルでインストールされていないためインストールする。

brew install awscli
nk_worknk_work

その後プッシュコマンドを使用したら、usernameなどを入力していなかったためエラー。
aws configure
で確認

nk_worknk_work

lambdaの方を先に作成しないとDockerfile内の記述と齟齬が出る。
そのためlambdaを作成
sam 使用?

nk_worknk_work

以前使用していたEC2削除、EBS削除
EBSはデタッチしないと削除できない
EC2は削除ではなくterminate

nk_worknk_work

業務でまったく使用する機会はないがReactを触ってアプリケーションを作成していのでパフォーマンスチューニングを一から勉強する。

再レンダリングの適切な防止・コントロール

domをスリムに?

仮想スクロール?

bundleサイズ?

状態遷移の適切な取り扱い・チームで共通知にするための図解

fetchやuseContext(SWR・TanstackQuery)

streamingHTML?

skelton UI

Suspense

などとりあえず単語をメモ

nk_worknk_work

Reactのフックについて疑問に思ったのでスクラップを作成しました。
useEffect: ある変数に依存して発火するような処理を書きたい時に使用する。
useMemo: 関数の結果をキャッシュする。依存値変更時に再計算するがそれ以外はキャッシュ値を返す?
useCallback: 関数自体をキャッシュする。依存値変更時に関数を再生成する。

一見似たような内容に最初は思えたがuseEffectはキャッシュ値を返すわけではない。(フェッチ処理を書きたい時には最近はSWRを使用?)
あとuseMemoは大量のデータの計算処理を行う場合に有効。ただ再計算が頻繁に起こる場合、結局重い計算が何度も行われるのであまり意味がない?

nk_worknk_work

datagridを修正。
1.データグリッドを一枚にしてdiff部分のみセルに着色
2.ドラッグ&ドロップに移行
3.セルにカーソルを合わせると他方のセルの値をツールチップで表示

nk_worknk_work

あとは着色部分の値を変更時にリアルタイム変化、ドラッグ&ドロップ部分 sqliteからweb用のデータベースに移行...これでweb版は終了予定

nk_worknk_work

一旦sqlite版で打ち止め
自分の需要的にはDuckdb-wasmでやった方が良いことに気づく。
一旦BIツール作りの方へ移行

nk_worknk_work

ひとまずAWSのECRに乗せるためにDocker環境を作るところから

nk_worknk_work

開発環境でいろいろライブラリを試したが固まってきたので一旦本番環境を作り直す方がよい気がする。
ここも方法があるはず
あとvenv でインストールしたライブラリも開発終了時には大元を消したいけどどうすればよいのか
uvをもう少し掘るべき