gactocatのブックマーク (347)

  • Web アプリケーションにおける Amazon ECS / AWS Fargate アーキテクチャデザインパターン - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS

    こんにちは。AWS Container Hero の新井です。 Amazon ECS の登場から間もなく 10 年が経ちますが、その間、ECS ⾃体の進化に加えて、さまざまな AWS マネージドサービスとの連携が可能になりました。 現在では、コンテナベースのワークロードを活⽤することで実現できないことを探す⽅が難しいほど、柔軟なアーキテクチャが構築できるようになっています。 しかし、⾃由度が⾼い分、要件に合ったアーキテクチャを模索する際には、迷うことも多いでしょう。 AWS上でシステムを適切に構築するためには、あらかじめサービス間のつなぎ⽅やパターン、その特徴を把握しておくことが重要です。 これにより、フィージビリティを迅速に確認でき、その後のトライアンドエラーのサイクルを加速させることができます。 今回は、最新の AWS サービスアップデートを踏まえつつ、Amazon ECS / AWS

    Web アプリケーションにおける Amazon ECS / AWS Fargate アーキテクチャデザインパターン - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS
    gactocat
    gactocat 2024/09/04
  • Haystack

    An IDE built on top of a canvas, Haystack takes care of the tedious and confusing parts of coding for you

    Haystack
    gactocat
    gactocat 2024/08/25
  • [OpenAPI] Go言語でAPIファーストな開発をしてみた - oapi-codegen実践編

    対象読者 Go言語でのWeb API開発に興味のある方 APIファースト開発を学びたい方 oapi-codegenを使った具体的な開発手法を知りたい方 はじめに APIファースト開発とは、APIの設計を起点にアプリケーション開発を進める手法です。APIを最初に定義することで、開発者以外も並行作業が可能になるなどのメリットがあります。 しかし、個人的にはAPIファースト開発の真価はそれだけではないと考えています。API設計に重点を置くことで、システムやアプリケーション間で当に必要なインターフェースを明確化し、結果としてドメインの整理や設計にも役立つと考えています。 私自身、これまでの開発でAPI設計やドキュメント作成が後回しとなってしまい、結果設計の不備やドキュメントの陳腐化に悩まされることも少なくありませんでした。 API定義のための仕様であるOpenAPI Specification

    [OpenAPI] Go言語でAPIファーストな開発をしてみた - oapi-codegen実践編
    gactocat
    gactocat 2024/08/22
    “oapi-codegenを使った具体的な開発手法を知りたい方 はじめに APIファースト開発とは、APIの設計を起点にアプリケーション開発を進める手法です。APIを最初に定義することで、開発者以外も並行作業”
  • NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report

    マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~

    NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report
    gactocat
    gactocat 2024/08/22
  • GhostText: Vim でブラウザのテキストエリアを入力する | fohte.net

    この記事は Vim 駅伝 の 2023-09-18 の記事です。 皆さんは「Vim でブラウザのテキストエリアを入力したい」と思ったことはありますか? 筆者は幾度となくありました。 これは GhostText を使うと実現できます。 筆者は記事執筆時点で 1 ヶ月利用しており、テキスト入力が非常に快適になったため、今回はその GhostText を紹介します。 GhostText とはなにか? GhostText は、Chrome をはじめとする多くのブラウザを介して、VimNeovim などのエディターに接続し、双方向に入力内容を同期するブラウザ拡張機能およびエディタープラグインです。 👻 GhostText — Use your text editor in the browser GhostText で入力を同期する例 「ブラウザのテキストエリアを Vim で編集する」という

    GhostText: Vim でブラウザのテキストエリアを入力する | fohte.net
    gactocat
    gactocat 2024/07/30
  • 2024年版のDockerfileの考え方&書き方 | フューチャー技術ブログ

    最近はお客さんとの勉強会でDockerのドキュメントをつまみいして読むというのをやっていますが、改めて最新版を読んでみて、いろいろ思考が整理されました。2020年の20.10のマルチステージビルドの導入で大きく変わったのですが、それ以前の資料もweb上には多数あり「マルチステージビルドがよくわからない」という人も見かけるので過去の情報のアンラーニングに使っていただけるように改めて整理していきます。 仕事Pythonコンテナをデプロイする人向けのDockerfile (1): オールマイティ編で触れた内容もありますが改めてそちらに含む内容も含めて書き直しています。 エントリーの執筆には@tk0miya氏から多大なフィードバックをいただきました。ありがとうございます。 基的なメンタルモデル現代的な使い方を見ていくために「Dockerを使ってビルドする」というのはどのようなものか考えを整

    2024年版のDockerfileの考え方&書き方 | フューチャー技術ブログ
    gactocat
    gactocat 2024/07/26
  • Amazon S3 ファイルのMD5ハッシュ値を効率的に計算するLambda - 機雷がなんだ! 全速前進!

    ちょっとした小技です。検索しても情報があまり無かったので一応書き留めておくことにします。 背景 S3にアップロードしたファイルが破損していないことを確認するため、アップロードしたファイルのMD5ハッシュ値を計算してチェックする仕組みが必要でした。S3に配置したタイミングで発火する S3 Object Lambda を用いて実現しようとしたところ、巨大なファイルをうまく処理できないという課題に遭遇しました。 課題 S3には大小さまざまなファイル(最低 0 バイトから最大 5 TB)を配置することができるため、場合によっては超巨大なファイルが処理対処となることもあり得ます。また、AWS Lambda は割り当てるメモリ量(128 MB から 10,240 MB までの任意の量のメモリを 1 MB 単位で関数に割り当て可能)によって単価が高くなるため、コストの観点からも不用意に高めることもできま

    Amazon S3 ファイルのMD5ハッシュ値を効率的に計算するLambda - 機雷がなんだ! 全速前進!
    gactocat
    gactocat 2024/07/24
  • 復活してほしいゲームIP

    ファミコン探偵クラブで新作が出るので、他にも復活してほしいIP募集中(任天堂に限りません) 自分はこれ ・がんばれゴエモン ・トロ ・勇なま ・ポポロクロイス物語 ・ロックマンDASH ・トモダチコレクション 他にある?

    復活してほしいゲームIP
    gactocat
    gactocat 2024/07/19
    ワンダープロジェクト
  • 「AIに仕事を奪われた絵師」な訳だが|走り書き

    「当然の時代の流れだった」と思っているという話。 最初に書いておくとこれはAIに反対する記事ではないので、規制を推奨する内容を期待して開いた人はブラウザバックをお勧めする。 あと推敲全然しないで思いつくままに書いてるから、すごく読みづらい。 それでも良いという人は以下にどうぞ。 2年ちょっとくらい前まで、イラストっていた。 ただし、バリバリ企業と契約とかして1枚10万とか取っているプロイラストレーターではない。 ココナラとかSkebとかSKIMAとか、そういうコミッションサイトでフリゲーやTRPGVtuber用の立ち絵イラストを1枚1万弱で売り捌いている、いわゆる「アマチュア底辺絵師」だった。 (そう呼ばれる層にいた、という意味で「底辺」という言葉をあえて使う) 絵のクオリティは全身立ち絵で1万円ついたらいい方ってくらいの、「X(旧Twitter)でよく見るちょっと絵が上手い人」のラ

    gactocat
    gactocat 2024/07/17
  • AWSアンチパターン戦記

    「君子危うきに近寄らず」という言葉は、賢明な人は危険を避けるという意味を持ちます。 アンチパターンを知り、それを回避するのは第一歩 準備を怠ると動いてるシステムがアンチパターンとなる。 準備とは、データを集め、テストを繰り返すことから。 新しいことへの果敢なチャレンジをわすれずに。ときには、AW…

    AWSアンチパターン戦記
    gactocat
    gactocat 2024/07/10
  • 誰も教えてくれない「分かりやすく美しい図の作り方」超具体的な20のテクニック

    【追記】この記事をきっかけに、名著「ノンデザイナーズ・デザインブック」の20周年記念特典eBookの制作に協力させていただきました。詳しくはこちらを御覧ください。 ノンデザイナーズ・デザインブック20周年記念の特典に寄稿しました デザイナーである・なしに関わらず、仕事の中で伝えたいことを「図」で説明する機会は多々あります。提案書で事業内容を説明することもあるでしょうし、具体的な数値をグラフで説明することもあるでしょう。そんな中でこんな指摘を受けたことはありませんか? ・最終的に何を言いたいのか結論が見えないよ。 ・関係性が複雑すぎて理解しずらいんだけど。 ・要素が多すぎて全てを把握するのが大変。 ・何をどこから見れば良いの? ・結局一番言いたいことはなんなの? ・文字サイズがたくさんありすぎてまとまりがないね。 ・安っぽいチラシみたいでダサイなぁ。 ・全体的にバランスが偏ってて不安定。 ・

    誰も教えてくれない「分かりやすく美しい図の作り方」超具体的な20のテクニック
    gactocat
    gactocat 2024/07/09
  • マイクロサービス間通信における認証認可およびアクセス制御

    はじめに 2023年4月に基盤エンジニアとして Ubie に入社しました nerocrux です。主に Ubie の ID 基盤の開発と保守運用を担当しています。 この記事は、2023 Ubie Engineers アドベントカレンダー 5 日目の記事となります。 Ubie では、モジュラモノリスを採用しつつ、マイクロサービスアーキテクチャも採用しており、領域によってサービスを分けて、それぞれの担当チームが開発と保守運用をしています。 クライアントから一つのリクエストを受け取ったあとに、Ubie のバックエンドではリクエストを受け取ったサービスだけがそのリクエストを処理することもあれば、別のサービスにディスパッチし、複数のサービスがひとつのリクエストを処理して結果を返すこともあります。 マイクロサービス間の通信が Ubie の内部で発生したとしても、必ずしも無制限で自由に行われていいわけで

    マイクロサービス間通信における認証認可およびアクセス制御
    gactocat
    gactocat 2024/07/08
  • 署名付きURLを利用したファイルアップロードWeb API設計の勘所 | フューチャー技術ブログ

    はじめに現代のWebアプリケーションにおいて、ユーザが写真や動画などのファイルをアップロードする機能は、しばしば求められます。 記事では、ファイルアップロードを実現するための一手段として、「署名付きURL」を利用した方式を取り上げ、その設計について詳しく解説します。 今回は、Amazon Web Services(AWS)を利用する前提のもと、このアプローチを探求していきます。 前半部分は署名付きURLをそもそもよく知らない方向けの導入部となっていますので、要点だけ抑えたい方は設計上のポイントから読まれることをお勧めします。 ファイルアップロードの実現方式パターン署名付きURLの話をする前に、ファイルアップロード機能をWeb APIとして実現する方式について、いくつか代表的なものを紹介します。 Pattern 1. multipart/form-datamultipart/form-da

    署名付きURLを利用したファイルアップロードWeb API設計の勘所 | フューチャー技術ブログ
    gactocat
    gactocat 2024/07/06
  • Webサービス公開前のチェックリスト

    個人的に「Webサービスの公開前チェックリスト」を作っていたのですが、けっこう育ってきたので公開します。このリストは、過去に自分がミスしたときや、情報収集する中で「明日は我が身…」と思ったときなどに個人的にメモしてきたものをまとめた内容になります。 セキュリティ 認証に関わるCookieの属性 HttpOnly属性が設定されていること XSSの緩和策 SameSite属性がLaxもしくはStrictになっていること 主にCSRF対策のため。Laxの場合、GETリクエストで更新処理を行っているエンドポイントがないか合わせて確認 Secure属性が設定されていること HTTPS通信でのみCookieが送られるように Domain属性が適切に設定されていること サブドメインにもCookieが送られる設定の場合、他のサブドメインのサイトに脆弱性があるとそこからインシデントに繋がるリスクを理解してお

    Webサービス公開前のチェックリスト
    gactocat
    gactocat 2024/07/05
  • UUIDとULIDを理解していない方は見た方がいい記事

    Auto increment(自動採番)型を採用したくない場合 Auto Incrementは、データベースにおいて自動的に一意の識別子を生成するメカニズムです。通常、数値型の列が対象となり、新しいレコードが挿入されるたびにその列の値が自動的にインクリメントされます。典型的なIDですかね。 ここでは一意性の確保の話や、データ移行やバックアップのデメリットには言及せず、セキュリティとプライバシーの懸念にフォーカスして考えます。 予測可能性 Auto Increment型のIDは連番であるため、次に生成されるIDが容易に予測可能です。これにより、攻撃者がシステムの内部構造を推測し、不正アクセスを試みるリスクが高まります。 情報漏洩のリスク 連番のIDはデータベースの挿入順序を反映しているため、公開されることで企業の活動パターンやデータ生成の頻度が漏洩する可能性があります。 例) 競合他社は、公

    UUIDとULIDを理解していない方は見た方がいい記事
    gactocat
    gactocat 2024/06/18
    “第三者に漏れてはいけない場合はv4を使う方が良いです。 という単純な問題でもないようです。これに関しては【#まとめのようなもの】の章で後述しております。 ULID”
  • Terraformを採用する前に知っておくべき6つの課題

    こんにちは、株式会社FIXER@名古屋オフィスの村上です。 クラウドインフラのシステム基盤構築にTerraformを採用している組織は多いですね。村上自身は特別な要件がない限り、”どのクラウドを使う場合でも” システム基盤構築にはTerraformを使いたいと考えているインフラエンジニアです。 私は、Terraformを3年間使用する中で、6つの課題に直面してきました。 このブログでは、実際の開発現場でどのような問題が起こったのか、またその問題をどのように回避、あるいは対策すべきだったのかについて、綴ってみました。 【課題1】プロジェクト始動直後にTerraform開発を開始したため、後工程で改修タスクが多発 SI案件では、クライアントが提案する調達要件RFPをもとに、ITベンダーがヒアリングを行いながら要件定義を進めていきます。 要件定義の一例として以下のようなものがあります。 クラウド

    Terraformを採用する前に知っておくべき6つの課題
    gactocat
    gactocat 2024/06/17
  • 変化と挑戦:NoSQLとNewSQL Serverless Databaseの技術革新とマルチテナンシーの秘密

    How to Create Impact in a Changing Tech Landscape [PerfNow 2023]

    変化と挑戦:NoSQLとNewSQL Serverless Databaseの技術革新とマルチテナンシーの秘密
    gactocat
    gactocat 2024/06/16
  • NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report

    マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~

    NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report
    gactocat
    gactocat 2024/06/12
  • NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report

    マイグレーションコード自作して File-Based Routing に自動移行!! ~250 ページの歴史的経緯を添えて~

    NAB Show 2024 動画技術関連レポート/ NAB Show 2024 Report
    gactocat
    gactocat 2024/06/12
  • メトリクス、ログ、トレースをうまく使い分けて可観測性を高めよう!

    イベント名: オブザーバビリティ再入門 - 大切さと高め方を知ろう! イベントURL: https://mackerelio.connpass.com/event/316449/ 概要: 可観測性の概念を理解し、OpenTelemetryなどの実装に必要な道具があっても、自分たちのプロダクトやチーム…

    メトリクス、ログ、トレースをうまく使い分けて可観測性を高めよう!
    gactocat
    gactocat 2024/06/06