0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

gce,cloud runなどの料金落とし穴(ネットワーク料金)

Posted at

前置き

以下内容にも間違った情報があるかもなのできちんと調べよう

状況

  • cloud run でWEBサービスを提供
  • ページ上に画像を表示したい
  • 画像は特定のコンテンツ配信サーバーから取得
  • ただし元URLはフロントに持たせたくない

誤った対応

  • 一度ウェブサーバーで元URLにアクセス
  • 画像の存在チェックを行なった後、変換したURLとオリジナルURLの辞書をキャッシュ、変換したURLをフロントに返却
  • フロントから変換したURLにアクセス、オリジナルURLから画像取得、画像を返却

何が起きるか

  • 画像のサイズがでかかったため、大量のネットワークトラフィック、そこで料金発生(しかもcloud runなのにCompute Engine側の料金としてカウントされる模様、謎)

学び

  • 素直にCloud Storage使いましょう
  • Cloud Storageに保存してそこから参照させましょう
  • CDNも使いましょう

要望に対して変な横着をした結果がこれ
・テンプレート側で画像が404の時に要素を表示したくない
 →じゃあリアクティブにDOM生成するvueとか使えばいいじゃーん
 →SEO対策とか構造化データの問題で、サーバーサイドでレンダリングする必要ありまーす
 →nuxtとかでビルド済みのテンプレート返せばよくない?
 →プロジェクトはそもそもそういう仕組みじゃないしそこからやるにはあまりにも大掛かりな変更すぎて時間的猶予がないから無理
→JSとかで自分でかけばよくない?
 →それが正解だった、

そもそもvueとかフロントサイドで描画するやつってSEO的に云々って本当なんですかね、、普通にクローラー的に認識できてそうな気がするんですけど。
別にサーバーサイドでレンダリングしないとクローラーが認識できないとか嘘じゃないの誰か教えて

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?