Fenrir Engineers

フィード

記事のアイキャッチ画像
Lambdaのイベントソースマッピング(SQS)は、どのタイミングで関数を起動するのか調べてみた
Fenrir Engineers
はじめに SQSとLambdaを組み合わせて処理を実行する場合、イベントソースマッピングを設定することができます。 イベントソースマッピングには、イベントポーラーというコンピューティングユニットがあり、このイベントポーラーがSQSメッセージを取得します。イベントソースマッピングはLambda関数にメッセージを渡し、関数を起動します。 イベントソースマッピング内では、イベントポーラーと呼ばれるリソースが新しいメッセージをアクティブにポーリングし、関数を呼び出します。(AWS公式ドキュメントより) SQSキューにメッセージが入った後、Lambda関数はどのタイミングで起動するのだろうと疑問に思った…
11日前
記事のアイキャッチ画像
Web エンジニアなら知っておきたいキャッシュの活用法
Fenrir Engineers
Web エンジニアの友村です。 「Web エンジニアなら知っておきたい」シリーズでということで、今回は「キャッシュの活用」について紹介します。 キャッシュとは? Web 開発において、パフォーマンスはユーザー体験を大きく左右する重要な要素です。 ページの表示速度が遅いと、ユーザーはストレスを感じて離脱してしまい、最悪の場合はサービスを利用しなくなるかもしれません。 最高のプロダクトを作るために、いかに高速にコンテンツを提供できるかは重要なポイントになります。 そこで登場するのが キャッシュ(Cache) という技術です。 キャッシュとは、取得したデータを一時的に保存し、次回以降のアクセス時に再…
21日前
記事のアイキャッチ画像
タグで停止対象を判別するAuroraの自動停止・起動をCloudFormationで作成してみた
Fenrir Engineers
こんにちは、インフラエンジニアの川島です。 Auroraの自動停止・自動起動をCloudFormationで作成したので紹介したいと思います。 AWSでコスト削減をしようとすると目に付くのはやはりAuroraだと思います。 Auroraは起動している間、料金が発生し続け、EC2と比べてもとても高いです。 開発環境では常時起動は必要ないため一時停止しようとしても、手動では最大でも7日間しか停止することは出来ず、停止したと思ってたのにいつの間にか起動して料金がすごい事になっていた、なんてこともよくあることと思います。 Amazon Aurora DB クラスターの停止と開始 - Amazon Au…
1ヶ月前
記事のアイキャッチ画像
Webエンジニアなら知っておきたいIaC
Fenrir Engineers
インフラ担当の川島です。 「Webエンジニアなら知っておきたい」ということで、今回は「Infrastructure as Code (IaC)」 について紹介いたします。 本ブログではIaCの中でも特にクラウド環境を構成するためのIaCについて紹介いたします。 IaCとは IaCとは、手動のプロセスや設定の代わりに、コードを使用してインフラストラクチャの管理とプロビジョニングを行うことを言います。インフラの構成や設定をコード化するため、手動設定によるエラーを減らし、一貫性を確保できます。 またコードで管理することにより、バージョン管理のしやすさや再現性が向上し、インフラの変更や展開がより迅速か…
2ヶ月前
記事のアイキャッチ画像
2024年のDeepRacer月間リーグに出場しました
Fenrir Engineers
はじめに こんにちは。GIMLEチームの三﨑です。 今更ですが、今年の4月と5月に参加したDeepRacarの月次リーグについてまとめていこうと思います。 DeepRacer とは DeepRacerとはどのようなサービスでしょうか。 公式ドキュメントの説明を引用します。 AWS DeepRacer は、「強化学習」によって駆動される完全自律型の 1/18 スケールのレースカーです。これは次のコンポーネントで構成されます。 AWS DeepRacer コンソール: シミュレートされた自動運転環境で強化学習モデルをトレーニングし、評価する AWS Machine Learning サービスです。…
2ヶ月前
記事のアイキャッチ画像
Web エンジニアなら知っておきたいクライアントサイドストレージ
Fenrir Engineers
こんにちは。フロントエンド担当の原田です。 「Web エンジニアなら知っておきたい」ということで、今回は 「クライアントサイドストレージ」 について紹介いたします。 クライアントサイドストレージとは クライアントサイドストレージは、データをブラウザ内に保存する技術です。 これにより、データを長期保存したり、サイトや文書をオフラインで使用するために保存したり、サイトのユーザー固有の設定を保持したりと、さまざまなことが可能になります。 主要な技術として、Cookie、SessionStorage、LocalStorage、IndexedDB があります。 Cookie サーバーからブラウザに対して…
2ヶ月前
記事のアイキャッチ画像
良いシステムを設計するには
Fenrir Engineers
これはフェンリル デザインとテクノロジー Advent Calendar2024 25日目の記事です。 こんにちは、インフラ・バックエンド担当の森井です。 アドベントカレンダーのテーマに沿った話を書きたいなといろいろ思い悩んだ結果、技術におけるデザイン(設計)についてなら書けるかもしれないと思い立ちました。 今回は良いシステムを設計するための考え方をまとめてみたいと思います。 システムを設計するということ 根本に立ち返って、デザイン(設計)がどういう行為なのかを確認します。 デザイン(英語: design、中: 設計[1])は目的設定・計画策定・仕様表現からなる一連のプロセスである[2][3]…
3ヶ月前
記事のアイキャッチ画像
キャリアの大半は偶然によってできている
Fenrir Engineers
これはフェンリル デザインとテクノロジー Advent Calendar 2024 24日目の記事です。 インフラ担当の柴田です。今年もAdvent Calendarの季節がやってきました。昨年は何を書くか悩んで「会社のブログに駄文を公開する技術あるいは自分を説得する技術」という記事を投稿しました。 今年はエンジニアっぽいことを書きたいなと思っていたのですが、ネタはおりてこず、社内で話したことのあるキャリア形成に関する理論を紹介します。 キャリアについて考えていますか さて、皆さんはキャリアについて普段何か考えていたり、目標を持っていたりしますか。 エンジニアの場合は大きく分けて、「マネジメン…
3ヶ月前
記事のアイキャッチ画像
Webエンジニアなら知っておきたいNoSQL
Fenrir Engineers
Webバックエンド担当の湯川です。 「Webエンジニアなら知っておきたい」ということで、今回は「NoSQL」について紹介いたします。 RDBとの違いやNoSQL自体の種類、選定ポイントなどを簡単に説明したいと思います。 RDBのIndexやトランザクションあたりを把握したうえで読んでいただくと、より分かりやすいかと思います。 NoSQLってなに? MySQLやPostgreSQLといったRDB(リレーショナルデータベース)とは異なるアプローチで、データを保存・管理するデータベースの総称です。 RDBと比べるとスケーラビリティが高いので、大量のデータを扱いたいときに使われることが多いです。 RD…
3ヶ月前
記事のアイキャッチ画像
NILTOのFastly導入〜業務で初めてRustを使った話〜
Fenrir Engineers
これはフェンリル デザインとテクノロジー Advent Calendar2024 23日目の記事です。 こんにちは!NILTOチームでインフラエンジニアをしている太田です。 先月、NILTOの開発の中で、FastlyというCDN1を導入しました。Fastlyでは、エッジサーバー2で動くプログラムをRustというプログラミング言語で書くことができます。 個人的にも(そして、おそらく会社的にも)初めてRustを業務で利用した事例ですので、少しでもその経験をアウトプットしておきたいと考え、今回の記事のテーマとしました。…とはいうものの、趣味で個人的にRustを書いていたこともあり、それを業務で活かせ…
3ヶ月前
記事のアイキャッチ画像
野中のre:Invent 2024 4 日目: Amazon Bedrock Knowledge Bases を使用してスケーラブルなRAGアプリケーションを構築する
Fenrir Engineers
こんにちは。クラウドネイティブ技術部の野中です。 2024年12月2日から12月6日にかけて開催されている re:Invent 2024 に現地で参加しております。 今回は、生成 AI 関連のサービス Amazon Bedrock Knowledge Bases に焦点を当てたセッションに参加しました。 このセッションを選んだ理由は、現在担当している RAG(Retrieval-Augmented Generation)を活用した社内文書検索システム構築のプロジェクトにおいて、 Amazon Bedrock Knowledge Bases の採用を検討しており実務にも活かせられればと考えたから…
3ヶ月前
記事のアイキャッチ画像
Androidエンジニアが普段考えるアプリのUI・レイアウトデザイン
Fenrir Engineers
これはフェンリル デザインとテクノロジー Advent Calendar2024 10日目の記事です。 前置き この記事の目的は、Android/iOSのデザイン、開発に従事しているデザイナーや技術者を主軸に、職業紹介として開発に従事していない一般の皆様にも読んでいただけることとしています。 Androidに特化した専門用語等は使わず、ラフにつらつらとタイトルについて書いたつもりなので、気兼ねなくお読みいただけたら幸いです。 背景 よくあることかもしれませんが、通勤通学やお買い物などで少し街に向かい、様々な広告やディスプレイを目にする際、例えばオーナメントの配置やテクスチャの表現、配色や全体感…
3ヶ月前
記事のアイキャッチ画像
re:Invent 2024のEQ関連セッションの紹介
Fenrir Engineers
本記事は「Japan AWS Ambassadors Advent Calendar 2024」の18日目の記事です。 インフラ担当の柴田です。今年もAWS AmbassadorのAdvent Calendarに参加できて嬉しいです。 昨年は「テクノロジーだけじゃないre:Invent 2023 - Amazonのイノベーション文化」と題して、イノベーションとEmotional Intelligence (EQ)の記事を書かせていただきました。 今回も、re:InventとEQに関連した内容を紹介したいと思います。 re:Invent 2024でEQ関連のセッション Emotionally i…
4ヶ月前
記事のアイキャッチ画像
【レポート】Deep dive into Amazon Aurora DSQL and its architectureに参加しました!
Fenrir Engineers
この記事はJapan AWS Top Engineers Advent Calendar 2024の5日目の記事です。 こんにちは、AWS re:Invent 2024 に現地参加していた森井です。 「Deep dive into Amazon Aurora DSQL and its architecture」というセッションに参加してきましたので、今回はその概要をご紹介します。 新発表サービスの情報にいち早くアクセスできるのは、re:Inventに現地参加する醍醐味ですね。 アーカイブが公開されているので、より詳細に知りたい方はこちらをご覧ください。 本記事のスクリーンショットはすべてこの動…
4ヶ月前
記事のアイキャッチ画像
だれでもわかる、たのしいGoogle Maps API
Fenrir Engineers
これはフェンリル デザインとテクノロジー Advent Calendar2024 16日目の記事です。 まえがき はじめまして。NILTOのバックエンドエンジニアの小西です。入社してまだ二ヶ月ですが、面白い企画があると聞きつけて、今回フェンリルのアドベントカレンダーに参加しました。技術系の記事を執筆するのは初めてのことで緊張していますが、何卒よろしくお願いいたします。 さて、アドベントカレンダーと言えばクリスマス。 大人になってしまった今はクリスマスに何の感情も抱きませんが、幼い頃はサンタさんのプレゼントを楽しみに待ったものです。ワクワクできたあの頃は良かった。 記事のネタを考えていた私はひら…
4ヶ月前
記事のアイキャッチ画像
野中のre:Invent 2024 3 日目: 生成AIの最新アップデートと活用例
Fenrir Engineers
re:Invent 2024 で発表されたアップデートは含まれてませんのでご注意下さい。 こんにちは。クラウドネイティブ技術部の野中です。 2024年12月2日から12月6日にかけて開催されている re:Invent 2024 に現地で参加しております。 今回、生成AIの最新情報や実際の活用事例を取り上げた日本語セッションに参加しました。 このセッションを選んだ理由は、現在担当しているRAG(Retrieval-Augmented Generation)を活用した社内文書検索システム構築のプロジェクトにおいて、ここで得た知見を何かしら活かせられればと考えたからです。 1. 生成AI活用の最前線…
4ヶ月前
記事のアイキャッチ画像
野中のre:Invent 2024 2 日目:Dive deep on Amazon S3
Fenrir Engineers
こんにちは、クラウドネイティブ技術部の野中です。 2024年12月2日から12月6日に開催される re:Invent 2024 に現地参加しています! Dive Deep on Amazon S3 のセッションに参加しました。 このセッションを選んだ理由は、現在進行中の案件でS3を主軸としたアプリケーションを構築しており、その中で扱う膨大なデータ量やS3の卓越したデータ処理能力について、より深く理解したいと思ったからです。 S3の内部構造や設計思想を掘り下げることで、より効率的な運用や設計のヒントを得られると期待しています。 今回は、S3の内部アーキテクチャに関する内容となります。 セッション…
4ヶ月前
記事のアイキャッチ画像
Aurora DSQLが発表されたので早速試してみる!
Fenrir Engineers
こんにちは、AWS re:Invent 2024 現地参加中の森井です。 本日、Matt GarmanのKeynoteにてAmazon Aurora DSQLが発表されました。 Introducing Amazon Aurora DSQL | AWS Database Blog 個人的にはここ数年で一番アツいアップデートだったので、ホテルに帰って早速試してみました。 Aurora DSQLとは? Aurora DSQLは、下記の特性を持ったSQLサービスです。 事実上無限のスケーラビリティ インフラ管理必要なし 99.999%のマルチリージョン可用性 強い整合性 PostgreSQL互換 Ke…
4ヶ月前
記事のアイキャッチ画像
野中のre:Invent 2024 1 日目:DynamoDBデータモデリングのポイント
Fenrir Engineers
こんにちは。クラウドネイティブ技術部の野中です。 今年の12月2日から12月6日にかけて開催される re:Invent 2024 に現地参加しています! このイベントには以前から参加したいと思っていたので、ついに念願が叶い、ワクワクが止まりません。 今回は、DynamoDBデータモデリングに関するセッションを受講しました。このテーマを選んだのは、実際の案件でもDynamoDBを採用している中で、自身の知識不足を感じる場面があったためです。セッションを通して得た内容を振り返りながら、皆さんと共有していきたいと思います。 1. DynamoDBとは? DynamoDBは、AWSが提供するNoSQL…
4ヶ月前
記事のアイキャッチ画像
Webエンジニアなら知っておきたいイベント駆動アーキテクチャ
Fenrir Engineers
Webエンジニアなら知っておきたいイベント駆動アーキテクチャ インフラ担当の柴田です。「Webエンジニアなら知っておきたい」シリーズです。 今回はイベント駆動アーキテクチャ(Event-Driven Architecture: EDA)について紹介します。 私がAWSをよく使うので、AWSを例にしています。 イベント駆動アーキテクチャとは? EDAは、イベントの発行、検出、消費といった、イベントへの反応を中心としたアーキテクチャです。 イベントとは、状態の変化や更新を表します。EDAでは、個々のシステムコンポーネントがイベントを介した疎結合になることで、敏捷性や回復力、拡張性が向上するとして注…
4ヶ月前
記事のアイキャッチ画像
GitHub ActionsでAmazon ECR でのリモートキャッシュを利用してみた
Fenrir Engineers
はじめに こんにちは。インフラ担当の平田です。 とある案件でGitHub Actionsを利用しているのですが、PHPのDockerイメージをビルドする際に時間がかかってしまうという課題がありました。レイヤーキャッシュが利用されていないことが要因だったため、Amazon ECRでのリモートキャッシュを利用して、ビルド時間を短縮する方法に取り組みました。 課題もありますが、紹介させていただきます。 構成 GitHub Actionsの構成 GitHub Actionsの流れは次のとおりです。 Github Actionsで実行すること ソースコードを対象ブランチにpushまたはマージする PHP…
5ヶ月前
記事のアイキャッチ画像
Web エンジニアなら知っておきたい DevTools の世界
Fenrir Engineers
はじめに こんにちは。フロントエンド担当の鯉田です。 この記事では Google Chrome の DevTools(検証ツール)について解説します。 検証ツールは Web 開発において欠かせないツールであり、デザイン確認、デバッグ、ネットワーク状態、パフォーマンスなどの改善に役立ちます。 本記事ではある程度は検証ツールを使用したことがあるエンジニアに対し改めて便利な機能を解説します。 この記事内で各要素の知っているようで知らなかった機能について、軽く触れているものとなっております。 詳細を知りたい場合は公式ドキュメントにてご確認ください Elements Elements は現在のページ内容…
6ヶ月前
記事のアイキャッチ画像
React Developer Toolsを用いたコンポーネント設計
Fenrir Engineers
ウェブエンジニアの堀内です。 Reactが今日のフロント開発に欠かせない存在になっており、多くのエンジニアがReactを学習し利用しています。 しかし、初心者にはどのようにコンポーネントを分割すればよいか正しいアプローチがわからないこともあるでしょう。 正しくコンポーネントが分割できていないと不要な再レンダリングが発生する可能性がありアプリケーションのパフォーマンスが低下することがあります。 そこでこの記事では「React Developper Tools」というReactの拡張機能を活用してReactのコンポーネント設計を効率的に行う方法をご紹介します。 対象読者 Reactの機能はなんとな…
6ヶ月前
記事のアイキャッチ画像
AWS Ambassador Global Summit 2024 参加レポート
Fenrir Engineers
インフラ担当の柴田です。 2024年9月にシアトルで開催された「AWS Ambassador Global Summit」に参加してきました。 セッションの詳細はNDAの関係で書けないため詳しく紹介できませんが、私が感じたことや全体の雰囲気をお伝えします。 参加者の集合写真 AWS Ambassador Global Summitとは? AWS Ambassador Global Summitは、その名の通り世界中のAWS Ambassadorが一堂に会するイベントです。 日中は、AWSのプロダクト責任者クラスの方々が最新のサービスやAmazonの文化について共有してくれます。 一方的な情報提…
6ヶ月前
記事のアイキャッチ画像
Global AcceleratorのALBはInternalがおすすめ!
Fenrir Engineers
はじめに こんにちは。インフラ担当の平田です。 先日案件で初めてGlobal Accelerator + ALBの構築を行いました。 Global AcceleratorにALBを紐づける際の構成で学んだことをまとめたいと思います。 AWS Global Acceleratorとは AWS Global Acceleratorは、AWSグローバルネットワークを使用して、アプリケーションのネットワークパフォーマンスを最適化させるサービスです。 世界中のユーザーがアクセスするインターネットアプリケーションに対して、最適なルートでトラフィックを誘導し、遅延を低減します。 クライアントに最も近いリージ…
6ヶ月前
記事のアイキャッチ画像
AWS X-Rayにサクッと入門する
Fenrir Engineers
はじめに こんにちは。バックエンド/インフラ担当の森井です。 業務でログの改善をしてからというもの、オブザーバビリティにお熱をあげている昨今です。 ログ改善については下記のブログにまとめているのでご興味があればご覧ください。 engineers.fenrir-inc.com さて、オブザーバビリティやっていくぞという気持ちが高まっているなか、やはりトレース、そして特にAWS環境においてはX-Rayを避けては通れないだろうということで、サクッと試してみました。 X-Rayとは X-Rayとはどのようなサービスでしょうか。 公式ドキュメントの説明を引用します。 AWS X-Ray は、アプリケーシ…
6ヶ月前
記事のアイキャッチ画像
JWT で学ぶトークン認証
Fenrir Engineers
こんにちは! Web バックエンド担当の友廣です。 「Web エンジニアなら知っておきたい」ということで、今回は 「トークン認証と JWT」 についてです。 トークン認証とは ? トークン認証とは、ユーザーの認証情報をトークンとして生成し、それを使って認証を行う仕組みです。 例えば、ユーザーが ID とパスワードを使ってログインすると、サーバーはトークンを発行し、クライアントに返します。 クライアントはトークンをリクエストに付与してサーバーに送信します。 サーバーはリクエストに含まれているトークンを検証し、リクエストの許可を判断します。 これにより、リクエストごとに検証を行いつつも、ユーザーが…
6ヶ月前
記事のアイキャッチ画像
ALBはServer-Sent Eventsが動きます!
Fenrir Engineers
はじめに こんにちは、バックエンド/インフラ担当の森井です。 最近Server-Sent Eventsを触っていたのですが、負荷分散はNLBを使わないといけない気がするな〜面倒くさいな〜と思いながらALBを通してみたら、普通に動いたので驚きました。 Server-Sent Eventsとは Server-Sent Eventsは、HTTP接続によりサーバーからクライアントへとデータを継続的に送信できる技術です。 詳しくはMDNの説明をご覧ください。 サーバー送信イベント - Web API | MDN 継続的に更新されるデータをクライアントに配信したい場合、最も原式的な方法はポーリングです。 …
7ヶ月前
記事のアイキャッチ画像
Webエンジニアなら知っておきたい、依存関係の分類のお話
Fenrir Engineers
こんにちは! NILTOチームでインフラエンジニアをしている太田です。 「Webエンジニアなら知っておきたい」ということで、当記事では、プログラミング時の依存関係の分類についてお伝えします。 なお、便宜上ここでの「依存関係」は「プログラミング時に利用する外部および内部のライブラリ」と定義します。 日本語では違和感があるかもしれませんが、パッケージマネージャでよく用いられる「Dependencies」という英単語に置き換えると理解しやすいと思います。 依存関係の分類 外部依存関係(External dependencies) 実行時依存関係(Runtime dependencies) 開発時依存…
7ヶ月前
記事のアイキャッチ画像
「Resource Management in Aurora Serverless」を読んでみた
Fenrir Engineers
インフラ担当の柴田です。 お盆休みに「Resource Management in Aurora Serverless」という論文を読んだのでブログを書いてみました。 この論文では、顧客体験を維持しながら物理的な機器のリソースを効率よく利用するためのさまざまな工夫が紹介されています。 そういった工夫も勉強になるのですが、「2.1 Challenges and a Key Design Principle」で述べられている次の設計原則にAmazonらしさがあるなと思いました。 Therefore, a general design principle throughout Aurora Serv…
8ヶ月前