LambdaでPuppeteer/Headless Chrome

以前、AWS LambdaでPhantomJS日本語フォント対応という記事を参考にLambdaで動くPhantomJSを利用したスクリーンショットの実装を作ったのですが、今はHeadless Chrome/Puppeteerがメインストリームなのでこれにどのように乗り換えられるか試してみました。Chromeless等の専用ツールやServerless Frameworkでもプラグインがありますが、既存の実装から大きく変えたくなかったのでなるべくシンプルに入れられる方法を模索してます。

TOEIC 900点を超えるまでしたこと

先日の1月28日のTOEICの結果がでました。少し回り道した感もあったのですが、ようやく900点を超えたのでどのような学習をしたのか備忘録的に残しておきたいと思います。

2018年の行動指針

個人的なメモです。前回のエントリを書いて改めて思いましたが、今年は特に何かを大きく変えるというより昨年と変わりなく引き続き同じ方向性で改善を続けていきたい感じです。目標など設定してみます。

2017年のふりかえり

12月に受けたTOEICの結果が昨日分かったのでようやく2017年が終わった心境です。結果は惜しくも目標に届かずでした。個人的なメモですが2017年のふりかえりを記録しておきたいと思います。2017年は全体通して英語に投資した年になりました。

Fargateでタスク実行する with CodePipeline + CodeBuild

Fargateが魅力的だったので今更ながらDockerを仕事にも取り入れるようになってきました。Fargateは既存のECSのようなクラスタインスタンスが不要なのでLambdaの延長のような形でコストや運用をあまり気にせずに使えるのが良いですね。特にLambdaが苦手な長時間の処理であったりVPCの中でRDSを操作するような処理はこれからはFargateに任せたいところです。

WordPress移行メモ – ECS+EFS+CloudFront

これまでOpsWorksベースの環境でWordPressを運用していたんですが、re:inventで発表されたFargateに移行したくなり大晦日にECS周りを触っていました。将来的にはECS(Fargate)+EFS+Aurora Serverlessみたいな構成にしたいと考えてますが、Fargateはまだ少し早かったようです。今回はその前段階としてECS+EFS+RDSの構成になりました。

IntelliJでSpring Bootを動かす

Spring BootのアプリケーションをIntelliJでどのように動かすか試しました。Java自体触るのがかなり久しぶりで、Spring Bootも初めて触ったので、少しハマりました。Javaの開発も色々変わってるんですね…。

flux/ReduxのStoreの持ち方について思う事

fluxもReduxもどうデータを持つかについてはあまり多く説明されてない気がします。もちろんアプリケーションによって持ち方は異なるとは思うんですが、自分用のメモとして改めて考え方を整理しておきたいと思います。

GraphQL Subscriptionsのお手軽お試しコード

GraphQL SubscriptionsというGraphQLでSocket.ioのようにリアルタイム通知を受ける仕組みがあります。リンク先はApollo社の記事だとサンプルコード全体がないので、どのような実装になるかサンプルを作ってみました。

SQLAlchemyのモデル定義を複数のDBに対応させる

最近PythonのORMのSQLAlchemyを使っています。SQLAlchemyはおそらくPythonの中でも最もよく使われているORMで、Wikipediaによると最初のリリースが2006年なので、かなり歴史があるライブラリです。今回、このSQLAlchemyのモデル定義を複数のDBで切り替えて使ってました。備忘録として記事にしておきます。