Vapor Trail

明るく楽しく元気よく

AWS Hands-on for Beginners 〜Serverless 編〜をやった

aws.amazon.com

AWS Lambdaを使用したことがなかったことと、サーバレスアーキテクチャについてちょっと知りたかったのでやることにした。

Udemyの手を動かしながら2週間で学ぶ AWS 基本から応用までの作者の方のハンズオンなので、自分にとって声とかスピードとか聞き覚えがあるのでかなりとっつきやすかった。

EC2とサーバレスで構築したときの違いについて、

EC2 サーバレス
自由度 高い 低い
管理の手間 多い 少ない

適材適所といった感じだけど棲み分けってどう判断すればいいんだろうか。

ぶっちゃけ実務でAWS使用することはないのだけど、Lambda ~ API Gateway ~ DynamoDBと一通り使用して、こういうサービスがあってこういう事ができると知っておいて損はないかなと。

2019年の振り返りと抱負

去年の12月下旬には1年の振り返りをしようと思っていたにもかかわらず、何もしないまま2月になってしまった。今更だけど2019年を振り返る。

ワークとライフの両方で大きな出来事がいくつかあった。

初めて海外旅行に行ったこと

kyamashiro.hateblo.jp

子どもが産まれたこと
子どもが産まれたことで全てが子ども中心の生活になりました。当然、今までのように仕事が終わって、ゲームをしたり、技術書を読んでコードを書いたりなどの時間が削られることになります。「よし今日は寝かしつけを終えた後にやろう」と思うのですが、大抵自分も眠くなって一緒に寝てしまいます。

 

サービスのリプレイス

仕事で初めて作ったサービスのリプレイス作業をすることになりました。この案件はまぁ炎上して*1、特にDBまわりで数十億件のデータが保存されるようなアプリケーションの開発を通してインデックスとかパーティションについて随分学べました。
リプレイスでは主にボトルネックになっていたDBを中心にテーブル設計を見直して、MariaDBのSpider Storage Engineを使用したり、複数のプロセスを起動して並列処理でGuzzleを使用して非同期でAPIからデータを取得したり、複数台サーバを扱う難しさを知りました。その過程でPrometheus+Grafanaでモニタリング*2してタスクが動いているか確認したり、バイナリ置くだけで動くGoの便利さに気づいたりもしました。
また、コードが増えていくにつれて、複雑になっていたので、設計について学んだりDDDに関心を持って、ValueObjectを導入して堅牢なコードを書くようになりました。3ヶ月ほどかけて一人でリプレイスをして、無事スケールアウトできる&安定的に運用できるようになった経験は大きな自身になったと思います。

 

AWSの資格をとった

AWSクラウドラクティショナーとAWSソリューションアーキテクトアソシエイトを取得しました。仕事では主にさくらVPSさくらのクラウドを使用していたので、AWSを使用することはなかったのですがAWSについて興味があったので、Udemyで実際に手を動かして勉強して取得しました。

kyamashiro.hateblo.jp

家を買ったこと

家を購入するに至った一番の大きな理由は子どもが産まれたことです。

1. 持ち家だと騒音を気にしなくて良い

夜に子どもが走り回ったり、泣いたりしたときに上下の階に住んでる人の事を気にしなくていいのでそれだけで負担が減ります。

2. 駅チカ+2LDK以上の賃貸の家賃 > 月々の住宅ローン

子どもが産まれたことで荷物が増えた影響もあり、今まで住んでいた1LDKの家が狭く感じるようになりました。2LDKで地下鉄駅まで徒歩10分圏内かつ築年数が経っていない賃貸を探すと家賃がどうしても上がります。月々の家賃と住宅ローンの返済を比較すると住宅ローンのほうが安く済みました。

庭でBBQしたり冬でも足が冷えなくなったりベランダで服を干したりとQOLがかなり上がりました。

Core i3-6100からCore i5-9400Fに交換した

経緯

ボーダーランズ3をプレイしているとカクカクしてしょっちゅうフリーズするのでCPUを変えることにした。

今までの構成は3年前に組んだものでGTA5がやりたくて組んだ気がする。

構成
CPU:Core i3-6100
GPU:玄人志向 GF-GTX1050Ti-4GB/OC/SF
マザボ:H110M Gaming
メモリ:8G

ただ最近のゲームは結構きついのかWitcher3もカクつくことが多かった。

CPU選び

候補としてはRyzen5 2600・Ryzen5 3600・Core i5-9400Fだった。Ryzen5 2600とCore i5-9400Fは約16,000円くらいで価格的にあまり変わらない。Ryzen5 3600は新しいので約26,000円ほど。結局コスパ最重視 + 目的がゲームオンリーなのでCore i5-9400Fを買うことにした。

ほぼ底値で買う

12/7時点でAmazon価格 15,607円が底値になったが買おうかどうか悩んでいるうちに速攻で品切れになってしまった。
その後なぜかAmazonの価格が値上がりし、他店は16,743円が最安値ラインだったが、正月休み中にゲームしたいので買ってしまおうか、Amazonがまた安い価格で販売するまで待つか悩んだ。
kakaku.com なんだかんだ悩んでいるうちにAmazonで在庫入荷待ちではあるものの12/15に15,847円で最安値になったタイミングで結局買った。
12/24入荷予定だったが、

ご注文いただいた商品が、予定より早くお届けできることになりましたのでお知らせいたします。

というメールが来て予想よりも早く12/21に届いた。
Amazonの価格変動のアルゴリズムはよくわからんが結果的に待って正解だった。
クレジットカートのポイント5000円分をAmazonポイントに変換して10,847円で買えた。

痛恨のミス

ビックカメラのポイントが7,446円分あったのでマザーボードビックカメラで買うことにした。ただ発送後に気づいたのだが、間違ってMicro-ATXではなくてATXマザーボードを買ってしまった・・・。しにたい・・・。今のPCケースに無理矢理にでも入らないかと思ったが全然入らなかった。結局、PCケースも新しいものを買うことにした。 paypaymall.yahoo.co.jp

かかった費用

パーツ 価格 ポイント 実質価格
Core i5-9400F 15,847円 5,000ポイント 10,847円
Z390 PRO A 13,270円 7,446ポイント 5,824円
SHA-T3V 3,828円 0ポイント 3,828円

32,945円 - 12,446ポイント = 20,499円

ポイント使って2万円に抑えられた。使わなくなったマザボとCPUもセットでメルカリで売れそうだし満足かな。

結果

画質低ではあるもののボーダーランズ3で安定して60fps出るようになった。やっぱCPUが足引っ張ってたっぽい。 ただ新しいゲームやるのだったらGTX1050tiはそろそろきつそう。メモリも8Gでは心許ない。Chromeだけで結構消費しているのでいずれ16Gに増やしたい。 マザボの規格を間違えてPCケースを買うはめになって落ち込んだが、PCケースがかっこよくなったのと意外と軽いのでまぁ良しとする。