kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

laravelのvalidateサンプル part3

kazu22002.hatenablog.com 一意のアドレスを判定(データベース) アカウントを新規登録する際に、一意な内容である必要がある場合 $request->validate([ 'email' => 'unique:users,email_address', ]); ただこのままのvalidateの場合、更新の際にvalidateでエ…

laravelのvalidateサンプル part2

kazu22002.hatenablog.com 日付 $request->validate([ 'date' => 'date', ]); OK : 2010-01-02 OK : 2010/01/02 OK : 2010-01-02 10:05:03 NG : 2010-01-32 開始日,終了日 日付の整合性チェック。終了日は入力しないでもOK $request->validate([ 'start_date…

laravelのvalidateサンプル

日々Webアプリを開発していますが、フォーム入力とバリデートはどのフレームワークを使用しても書いています。 最近はlaravelを使用することが多く、validate周りでの記事を書いてみます。 validate readouble.com laravelのvalidate public function store(…

Rustインストール

Rustのインストールをやってみました。 www.rust-lang.org OSはMacOSです install curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh インストール方法を聞かれたので、defaultでインストールしました。 インストール後に環境設定を適用する…

AWS SNS + Lambdaでpushイベントの仕組みでweb apiを実行

push型のイベントで処理をしたいと思ってAWS SNS + Lambdaで作成してみました。 aws.amazon.com 今回のコードはphpとpythonでやっています。 php -> sns sns -> lambda lambda + python AWS SNSのトピック追加 Lambdaを使いたいためタイプをスタンダードにし…

circleci + codedeployを使ってec2にリリース (開発,本番環境の切り替え)

CircleCIでAWS Ec2にリリースをしていますが、テスト環境と本番環境が違う場所にあり、それぞれの環境へリリースするためのやり方を調べた結果です。 一応できていますが、あまり良さそうではないので、circleciのconfigについては自分で書いた方がいいと思…

certbotを使ってSSLの設定 ( KAGOYA CLOUD OPEN VZ)

最近はホームページを作る際にHTTPSが必須だと思います。 ブログサービスは必ずあるでしょうし、レンタルサーバーもワンクリックで設定が可能になっていると思います。 自分でサーバーを立てる場合は、自分で設定する必要があります。SSL証明書は認証局で有…

circleci + codedeployを使ってec2にリリース

現在の運用しているサーバーはec2で稼働しています。 以前codepipeline + codebuild + codedeployを使用してCDを実現していたのですが、速度面や設定の書き方、料金面で使いづらくなってきたのでcircleciで置き換えてみました。 circleci aws ec2 codedeploy…

circleciを使ってみる

PHPのアプリにcircleciを使ってみました。 github連携周りはすでにやっている状態です。できればdeployに使えるところまでやっていきたいと思って触っています。 circleci.com Github PHP Composer プロジェクトに適用 circleciとgithubを連携すると、プロジ…

CodePipeline + CodeBuild +CodeDeployでlaravelアプリをリリース

awsの機能を利用してlaravelアプリをdeployするところまでやる方法です。 Github PHP laravel8 Aws Codepipeline, codebuild, codedeploy Ec2 aws準備 codedeploy作成 codebuild作成 codepipeline作成 codepipelineでcodebuild, codedeployを使用するため先…

AWS CodeDeployを使う ( PHP + Laravel )

AWS Codedeployを使用してLaravelのアプリをリリースします。 appspec.yml docs.aws.amazon.com codebuildでdeploy管理のためのファイルです。 Laravelで必要なこと composer install php artisan migrate パッケージの更新、データベースのカラム更新もdepl…

AWS CodeDeployを使う

deployの自動化は重要ということで、aws codedeployに活躍してもらうことにしました 今回のdeployはec2へのdeploy github -> codedeploy -> ec2インスタンス codedeploy AWS CodeDeploy は、Amazon EC2、AWS Fargate、AWS Lambda、オンプレミスで実行される…

「「読む力」と「地頭力」がいっきに身につく 東大読書」を読んだ

「読む力」と「地頭力」がいっきに身につく 東大読書作者:西岡 壱誠東洋経済新報社Amazon 本は漠然と読むだけでは効果がない。どう本を読めば効果がでるのか、工夫がいろいろと書いてあります。 意識する 仮説を立てる。学ぶ内容を意識する。まずはこれを意…

「頭が冴える!毎日が充実する!スゴい早起き」を読んだ

頭が冴える! 毎日が充実する! スゴい早起き作者:塚本 亮すばる舎Amazon 早起きで劇的に生活が変わる理由の説明と方法が書かれています。 朝は脳のゴールデンタイム 疲れていない 朝の勉強は記憶定着のリズムにも効果的 やればできる => 自信 早起きの方法 …

データベースで正規化しない正しさ

正規化をしないですっきりするケースに出会ったので、一時の感情で書いてみます。 とある勤怠マスタのテーブル ユーザーごとに勤怠時間が違い、曜日ごとに勤務時間も違う。一日に複数の勤務時間が発生する場合もある。 正規化した場合のcolumn user_id, week…

朝早く起きて数時間が一番コード実装が進む

個人的な感想です。 朝起きて数時間の作業の偉大さを噛み締めながら、作業しています。朝といっても早朝限定ですね。 個人的にコードを書けてるなー。って実感するタイミングはいくつかあります。 大量のコードを連続して書いてる時 エラーが少なく動作した…

確定申告が必要な副業をしてみてはどうだろう

会社で数年働いて、いまフリーランスになり確定申告を行なっています。 その中で経費の仕組みを知っておくことってかなり重要なことだと感じています。正直フリーランスになってから雑務が増えたので会社員時代に雑務や申請面で楽をしていたと思うこともあり…

cacheの仕組みがわかっていません。どういう仕組みですか part2

cacheで気になっていたことはdatabase周りが主要で、rdsの機能のページに「cacheを利用することでパフォーマンス改善。」的な文言を見ていた時期があり、できるならほしいなー。と思っていた機能でした。 ただmemcacheとか詳しくないミドルウェアが関連して…

cacheの仕組みがわかっていません。どういう仕組みですか

個人的にcacheの仕組みを理解していないと思っている。 cacheをいれればパフォーマンスが向上する。といわれても理解度が低いため納得する材料が欲しい。特にデータベースについてはパフォーマンスのネックになることが多く、cacheを入れることで負荷軽減が…

pythonで漢字 -> ひらがな 変換

友人がとあるサービスを触っていて、「氏名の漢字がひらがなに自動で変換される。すごいね」と言っていたので、「へー」と答えつつ、たぶんできるよな。と思ったのでコード作成。 調べてみるとpythonが良さそう。phpでも調べたけどあまり良さそうなのがなか…

Apple Silicon のmacbookでトリプルディスプレイ

AppleSilicon搭載のmacbookは標準でトリプルディスプレイ以上ができないみたいです。 困っていたので調べてみたら外部機器により解決できそうだったので購入しました。 Plugable USB-C 変換グラフィックアダプタ、ディスプレイ変換 Windows、Mac 用 デュアル…

ポートフォリオ系サービスに登録してみた

ポートフォリオ系サービスに登録してみました。 portfolio.forkwell.com www.wantedly.com findy-code.io lapras.com 別に転職をするために登録をしたわけではない。 コードの大半はprivate リポジトリのため、そこまでphperというわけではない感じ。( priva…

「ユニコーン企業のひみつ」を読んだ

ユニコーン企業のひみつ ―Spotifyで学んだソフトウェアづくりと働き方作者:Jonathan RasmussonオライリージャパンAmazon 本が出た当初に読んでいた本ですが、ブログに書いていなかったため記事にします。 サービスを開発、運営している会社であれば読む価値…

自己スキル2021

自己スキルの更新。2018年以来やっていなかったみたいなので書いてみます。 主なスキルマップ 主に書いている言語 PHP ( laravel, cakephp ) Golang HTML Vue.js + Nuxtjs 補助的に書いている言語 python サーバー Linux ( CentOS ) DBはpostgresql, mysql d…

Makefileは便利

Makefile便利ですよね。Serverless Frameworkのgoのテンプレートを作成した際に、Makefileがあり久々に使いましたが、やっぱり楽です。 .PHONY: build clean deploy gomodgen build: gomodgen export GO111MODULE=on go mod tidy env GOARCH=amd64 GOOS=linu…

httpのsessionとcookieの話

webの開発を10年以上しているもの同士の会話で「sessionとcookieの仕組みって詳しくわからないんだよね」と言われました。 確かに利用ケースは理解しているが、仕組みを理解していない人は多いと思っています。 そんな経緯があり、自分が説明した内容を書い…

Serverless Frameworkでdeploy時に「Inaccessible host」エラー

Serverless Frameworkを使用してlambdaにdeployしたときのエラーです。 deploy時のエラー Inaccessible host: `cloudformation.ap-northeast-1.amazonaws.com'. This service may not be available in the `ap-northeast-1' region. エラーの内容がわからず…

独学プログラマーを読んだ

独学プログラマー Python言語の基本から仕事のやり方まで作者:コーリー・アルソフ日経BPAmazon 書店の本棚の平積みコーナーにあるのをよくみていた本。欲しくて購入しました。 対象者は初心者向けの本になっていますが、実務をちゃんと見据えて内容が多く、…

lambda + golangでawsの料金をサービス別に通知

awsの料金の通知機能が標準にもあるが、使いづらいため作ってみた。 使いづらい点としては、 コストの閾値設定 通知が合計 メッセージのカスタマイズができない 標準の通知系はメッセージで欲しいものがあまりないのが困りますね。 今回は、lambda + golang…

lambda + golangでweb死活監視

aws lambdaをつかってweb監視を行なっています。言語はgolangを使用。通知はslackを使用。 eventsで5分単位に実行するweb監視の組み方です。 serverless.yml provider: name: aws runtime: go1.x lambdaHashingVersion: 20201221 stage: dev region: ap-nort…