セルフホストのすゝめ– category –
-
セルフホストのすゝめ
10年ぶりにFirefoxを3ヶ月ほどメインにした所感
ここ10年ほど、僕はずっとGoogle Chromeを使っていた。正直Chrome最強だと思う。Chrome最強だと思うんだが、どういうわけなのか、僕のMacではやたらとCPUを使ってくれて、ただでさえ爆熱のMac mini 2018を目玉焼きでも焼けそうなほどに熱してくれる。MacBook Pro 2019でも同様だ。Windowsのマシンではそういうことはなかったので、Macとの相... -
セルフホストのすゝめ
DynamoDBの多対多で隣接リストやった時の冗長性対策どうしよう
DynamoDBウキウキで初めて早速引っかかる問題の一つが多対多とn+1問題だと思うんだが、これについてはAWSのドキュメントに一応解決方法が乗っている。それについて書いた記事がこれ→「DynamoDBで多対多のテーブル設計 – 或る阿呆の記」。 隣接リストというデザインパターンで、初めて見た時はギョッとしたけど、実際やってみるとたしかに効率... -
セルフホストのすゝめ
Google先生に見捨てられた個人ブログがこの先生きのこるには
今どきブログをやっている人もすっかり珍しくなってしまった。まぁそれはそうで、かつてと違って今からブログを始めるのは非常に厳しい。このブログを始めたのは2012年。今にして思うと、個人がブログをしてそこそこの集客をできる最後の時期だったのかもしれない、と最近思う。 今は違う。個人ブログは、もはや検索で引っかからない。まった... -
セルフホストのすゝめ
Lambda関数でDeadLetterQueue(DLQ)を試す
AWSのLambda関数をイベントで起動した時、複数回エラーを起こしたら、DeadLetterQueue、すなわちDLQを飛ばしたい。DLQを試すもの。Cloudformation使う。DLQはSNSとSQSが指定できるが、今回はSNSを使う。 系 以下の系を試す。 CloudWatch -> Lambda -(error)-> SNS -> Email やってみる CloudWatchで1分ごとにLambda関数を起動するよ... -
セルフホストのすゝめ
AWS Lambdaのロギングを考える
(追記)AWS Lambda PowertoolsのLogger使え ロギングをどうするかで困っていた。AWS Lambdaでは、プリント出力したものがCloudWatchに保存されてとても便利なのだが、考えもなしにとりあえずポンポン入れていたところ、確かに情報はあるので追えないことはないんだが、地道に時間にあたりをつけて検索するなど、非常に泥臭い作業が要求され... -
セルフホストのすゝめ
AWS Lambdaをデプロイした時のダウンタイム
AWS Lambdaをデプロイした時、ダウンタイムは発生するのかについて。 直接答えとなる記述をドキュメントで見つけることができていないのだが、AWSフォーラムの開発者による回答を見るに、新旧両方のバージョンが動作する時間はあるものの、ダウンタイム自体は理屈のうえではなさそう。 公式フォーラムの回答 「AWS Developer Forums: What ha... -
セルフホストのすゝめ
nginx + certbot + Let’s Encrypt で TLSv1.0やTLSv1.1が無効化できない時
TLSv1.0やTLSv1.1は既知の脆弱性があるために、各種ブラウザでも対応が打ち切られています(参考「ついにTLS 1.0/1.1の無効化が決定!影響や確認・対応方法とは? | さくらのSSL」)。なので、もうサーバー側で対応する理由はないわけで、無効化する必要があるのですが、nginxの設定をなんぼいじっても無効化できないと思ったら、certbotでLe... -
セルフホストのすゝめ
DynamoDB から DocumentClient で get() した StringSet型 の値を取り出す
AWS DynamoDBで使える型の一つに、StringSetがある。これは文字列の集合だ。JavaScriptでもES6以降にはSet型があるので、それと対応していればよいのだが、残念ながらしていない。 といっても、値を取り出すには、.values でアクセスすればよいだけ。というメモ。普段Python使っているのですぐに忘れる。 環境 node.js 12.20.0 aws-sdk 2.580... -
セルフホストのすゝめ
AWS Lambdaでイベント起動した時にeventに渡されるパラメータあれこれ
AWSのLambda関数で、S3とかSNSとかのイベントで発火させる時に、event変数に渡されるパラメータのjson形式についてのまとめ。 CloudWatch Events 定期実行のやつ。 { "version": "0", "id": "xxxx", "detail-type": "Scheduled Event", "source": "aws.events", "account": "xxxx", "time": "2021-06-10T06:45:27Z", "region": "ap-northeast... -
セルフホストのすゝめ
AWS Lambda (Python 3.8)から Amazon Elasticsearchを使う(LambdaはSAMで)
LambdaからAmazon Elasticsearchにクエリを投げるためのテンプレメモ。LambdaはSAMで用意するが、Amazon Elasticsearchのドメインは事前に準備しておく。RuntimeはPython 3.8。Elasticsearchの接続にはelasticsearchのモジュールを利用する。 権限周りとかけっこうたいへん。 前提条件 SAM CLI 1.6.2 LambdaのRuntimeはPython 3.8 今回はSNS...