---
# System prepended metadata

title: 2021-06-17 メンターセッション
tags: [Team-2]

---

# 2021-06-17 メンターセッション

## 質問

### フロントエンドのパフォーマンスについて

- 頻度としては低い
- バックエンドのほうがボトルネックになることのほうが多い
- 複雑なチャートを描画するのがきつかったことがあった
    - useMemoを使って工夫した
- useCallback
- 「カスタムフック使うときはとりあえずuseCallbackつかっておけばいいのでは！？」という意見もある
- 非同期処理を上の層にまとめておく→子供のコンポーネント全部再レンダリングでパフォーマンス悪いのでは？→それでもそんなに困ったことない

### フロントエンドのレンダリング方法をどのように使い分けるのか
- SSG
    - ブログが向いている（変更がかなり少ない）
    - バックエンドのAPIを隠蔽できるので若干セキュリティが強化できる
    - ヘッドレスCMSにデータを登録→Github Actionでページをビルド→みたいな使い方もした
- SSR
    - SEOが良い
    - SSGにするには変更に頻度が高いけど、SEOも捨てたくないなら多分これ
- CSR
    - 認証機能があるならCSRが良い？
        - SEOを良くするメリットが少ない（検索エンジンに乗せないので）CSRで良いのでは？という考えかも
    - 小さいシンプルなサービスならこれで良い
    - CDNを使えばレスポンスも速い
- 技術の歴史
    - SSG → SSR → CSR → SSR → SSG ...？

### Prismaにおけるコネクションプーリング

- グローバル変数としておいておくとよい（公式）
- オンプレとクラウドは、どちらも常時インスタンスがいるかんじだから、おなじ
    - サーバーレスだと考慮が必要
- コネクションプーリングの利点は、早いこと
- マルチテナントだとあえて使いまわさないこともある

###### Tags: `Team-2`