タグ

2024年2月17日のブックマーク (10件)

  • FastAPI と Mangum で作るサーバーレスAPI

    はじめに こんにちは。hayata-yamamoto です。 唐突ですが、皆さんは「サーバーレス」お好きでしょうか?AWS であれば、Lambda, Fargate, Aurora Serverless あたりを思い浮かべるかもしれません。GCP にも似たようなサーバーレスサービスがありますよね。サーバーを自分たちで用意せず、クラウドベンダーが”いい感じに”設定したサーバーを拝借できることで、エンジニアはアプリケーションの開発に集中できる、そんなサービスです。オートスケールの設定が容易にできたり、リソース使用にかかる費用が従量課金になっており、ワークロードに合わせてコスト最適化を行いやすかったりと、さまざまなメリットがあります。 今回は、弊社でも採用しているサーバーレス構成(ServerlessFramework, FastAPI, Mangum)を紹介しながら、以下の点についてお伝えしま

    FastAPI と Mangum で作るサーバーレスAPI
  • FastAPI (mangum) を AWS Lambda で動かす

    対象 PythonFastAPIAWS Lambdaで動かしたい人 カスタムイメージを使ってビルドしたい人 ローカルでの動作確認方法を知りたい人 AWSのリソース作成の概略を知りたい人 利用するライブラリのバージョン 以下のライブラリを利用します。 fastapiは執筆時点での最新版、mangumは0.11.0より新しいバージョンだとエラーが発生するため、このバージョンとしてます。 pydanticやstarlette, typing-extensionsはfastapiやmangumの依存ライブラリです。 fastapi==0.103.1 pydantic==2.3.0 starlette==0.27.0 mangum==0.11.0 typing-extensions==4.7.1 #カスタムイメージを利用する場合 #awslambdaric==2.0.7 概要 FastAPIはA

    FastAPI (mangum) を AWS Lambda で動かす
  • Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャート - Qiita

    Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャートPythonarray初心者tupleset はじめに みずほリサーチ&テクノロジーズの @fujine です。 Pythonのリストってとても便利ですよね。可変長で任意のオブジェクトを保存できるため、シーケンシャルなデータなら何でもリストで実装したくなる気持ち、分かります。 でもちょっと待ってください!リスト以外にも便利なコレクション型があること、ご存知でしょうか?コレクション型を適切に使い分けることで、 プログラムの意図を(ドキュメントに頼らなくても)読み手に的確に伝えられる パフォーマンスが向上する などの効果が期待できます。 そこで記事では、Pythonの組み込み型や標準ライブラリを対象に、リストと似たコレクション型をどのように使い分けるか?の案をフローチャー

    Pythonでリストを多用しがちな新人に贈りたい、array/tuple/set/queueの魅力と使い分けフローチャート - Qiita
  • Scheduled tasks(ECS)をecscheduleで管理してみた - NRIネットコムBlog

    記事は 基盤デザインウィーク 8日目の記事です。 🌈 7日目 ▶▶ 記事 ▶▶ 9日目 💻 はじめに ecscheduleとは 「スケジュールされたタスク」 Amazon EventBridgeについて 構成図 コード体系 ecschedule.yaml target.json 構築手順 0. 前提 1. 必要リソース構築(dev) 2. ecschedule dump(dev) 3. 設定ファイルの修正 4. ecschedule apply(prod) 検証中にハマったポイント 1. ecschedule dumpコマンドが成功しない 2. 別リージョンからtfstateの読み込みは出来ない 3. サブコマンドからリソース削除が出来ない まとめ はじめに こんにちは、加藤です。 以前ecspressoについての記事を書きました☕️ tech.nri-net.com 今回はecs

    Scheduled tasks(ECS)をecscheduleで管理してみた - NRIネットコムBlog
  • Pythonで辞書のキーにtupleが指定できた件(+パフォーマンスの話) - Qiita

    強化学習のを読んでいて、とても今更なのですがPythonで辞書のキーにtupleが指定できることを知りました。 普段はPandasでデータフレームで対応することが多いので、そこまで頻繁に使うというものではありませんが、稀に必要になった時のためにメモしておきます。(マイナーなトピックなので、需要は皆無な気がしないでもないですが・・) できること sample_dict = {} sample_dict[(100, 3, 1300)] = 500 print(sample_dict[(100, 3, 1300)])

    Pythonで辞書のキーにtupleが指定できた件(+パフォーマンスの話) - Qiita
  • Goのテスト安定性向上のためにFlakyなテストを再試行する機能を導入する提案 - tomato3713’s blog

    Go言語にFlakyなテストへのサポートを追加する提案が面白かったので紹介します。 概要 Flakyなテストとは、コードに変更がないにもかかわらずテストが成功したり失敗したりと不安定な実行結果になるテストのことです。 テスト結果は来なら全て成功ならリリース可能、1つでも失敗すればバグがあるのでリリース不可のようにリリースの可否を判断するための情報です。 そのため、不安定なテストは書かないようにすることが大前提です。 しかし、実際にはflakyであるとわかっていても修正が難しかったり、修正するための時間がないのでそのまま残すという判断をすることもあります。 Flakyなテストは削除するというのも手ではありますが不安定であってもテストが無いよりはマシとして残すこともあると思います。 github.com この提案では、Flakyなテストを扱うための機能を追加するものです。 初めの提案内容は、

    Goのテスト安定性向上のためにFlakyなテストを再試行する機能を導入する提案 - tomato3713’s blog
  • Geekのためのマルチツール Flipper Zero - Qiita

    はじめに 記事はGeekのためのマルチツールであるFlipper Zeroについて、記載しています。 以下は2023年9月18日、XでFlipper Zeroの公式アカウントによって投稿されたポストです。 ポストの通りですがついに日でもJoom経由でFlipper Zeroが購入可能になりました。 このポストが投稿される前までは、日からだと正規のルートでは購入できなかったため、このポストを知った時は心躍りました。 Flipper Zero Flipper Zeroは無線プロトコル、アクセス制御システム、ハードウェアなどのデジタル要素をハッキングできるマルチツールです。 たまごっちのように育成ゲームのような側面もあります。 信号を読み込んだりエミュレートすることで、ペットのイルカが成長します。 イルカは色々なアニメーションが用意されています。 を読んでいるかと思えば... SENPA

    Geekのためのマルチツール Flipper Zero - Qiita
    clavier
    clavier 2024/02/17
  • この20年間で再評価された90年代のアルバムって何?|hashimotosan

    今回は個人的に以前から気になっていた事について書いてみたいと思います。 きっかけは2022年に音楽メディア、Pitchforkが発表した「The 150 Best Albums of the 1990s」というこちらの企画でした。 1990年代にリリースされたアルバムの中で重要な意味を持つ、優れた作品を150枚選びランキング形式で発表するというこちらの記事。 実はPitchforkは2003年に同じ企画を行っていて、その時のラインナップと上位の顔ぶれがガラッと変わっていた事が当時話題になり、ネットやSNS上では様々な意見が見受けられました。 その当時自分もその変化ぶりに驚きつつも、時代の流れとはそういうものだよなと感じていたんですが、自分が思っていた以上に否定的な意見があった事も記憶しています。 「Pitchforkらしくない」とか、「ポップなラインナップ過ぎて面白くない」とか、「都合良く

    この20年間で再評価された90年代のアルバムって何?|hashimotosan
  • 「シリコンバレーでは、チャットベースでもすごいスピードで開発が進んでいた」 “良いものは真似して、さらに良いものを作っていく”文化から学んだこと

    NECソリューションイノベータ株式会社・シニアプロフェッショナル ITアーキテクトの茂木貴洋氏は、シリコンバレーでの新規事業会社立ち上げで得られた経験から、チーム作りの方針として活かしたことについて話しました。全2回。 セッションのサマリー 茂木貴洋氏:みなさんこんにちは。NECソリューションイノベータの茂木です。「オフラインよりも近い組織を作る シリコンバレーで学んだモブワークの勧め」というタイトルで進めます。 まずはサマリーですが、どんなことを話すかというと、私はお客さまのDX実現やDX化をする組織に所属しております。コロナ禍にほぼ完全リモートで立ち上がったので、そこに対する話と、実際にその組織を立ち上げて事業をやっていくにあたって、シリコンバレーで新事業開発を行った経験を活かして、自組織のDX文化改革みたいなものを実施したということ。 あとは、実際にクラウドサービスなどのフル活用

    「シリコンバレーでは、チャットベースでもすごいスピードで開発が進んでいた」 “良いものは真似して、さらに良いものを作っていく”文化から学んだこと
  • 勉強方法について - Don't Repeat Yourself

    最近よく聞かれるのですが、実際のところ答えに困ったので普段何をしているかをメモしておこうと思います。自分語りです。前提として、筆者はソフトウェアエンジニアであり、ソフトウェアエンジニアとしてどうしているかという話をしています。 学び方 学ぶ際に気をつけていること 濃淡をつける 身体知を大事にする 時間がかかることを前提とする まとめ 学び方 学ぶチャネルは学ぶ対象に完全によります。大別するとふたつかもしれません。 文字媒体(技術書やドキュメント、チュートリアル)を読んで学ぶ。 「大規模言語モデル」「TypeScript」のような大きなテーマを学ぶ際は、基的に技術書を読んでいます。 YouTubeなどの動画を見て学ぶ。 技術書やドキュメントを読んだ上で、特定のテーマについて具体的に知りたくなったときに利用しているかもしれません。 最近だと、Neovimのセットアップについてよく海外のストリ

    勉強方法について - Don't Repeat Yourself