2020-10-20 AWS DevDay Online Japanでの登壇資料になります。 https://aws.amazon.com/jp/about-aws/events/2020/devday/ # AWSご担当者様より承諾頂いた上でアップロードしています
Amazon SQS は可用性やスケーラビリティの高いメッセジキューサービスであり、AWS の代表的なサービスの 1 つと言えるでしょう。ところが、本番の運用に耐えられるアプリケーションにしようと思うと考えることが意外に多いものです。本エントリーでは簡単なサンプルアプリケーションをベースに、本番で運用するために考慮すべき点・注意点について見ていきます。題材として扱うのが SQS なだけで、SQS 以外を使ったアプリケーションにも応用できる内容もあるでしょう。 なお、SQS には Standard queue と FIFO queue がありますが、Standard queue を使う前提とします。 アジェンダは次のとおりです。 サンプルアプリケーション 1. ログ 2. At-least-once delivery と visibility timeout 3. デプロイ 4. 異常系 5
buildspec.yml 内で docker login -u *** -p *** といった処理をしていなければ、それは匿名ユーザーで利用していることになります。 (ちなみに aws ecr get-login のログイン処理は ECR へのログインであり、Docker Hub のログインではありませんのでお間違えないように) 「匿名ユーザーで使ってるけど 6 時間あたり 100 pull も出来るならウチの環境では十分やなー」 と思ってスルーされた方も少なくないと思いますが、ちょっと待ってください。リンク先のブログで言及されているとおり、匿名ユーザーは IP アドレスに基づいて制限されます。 For anonymous (unauthenticated) users, pull rates are limited based on the individual IP address.
スマートキャンプ、エンジニアの入山です。 2020年7月にDockerとAWSのコラボレーションにより、単一コマンドでDocker ComposeのyamlファイルからAmazon ECS上に各コンテナをデプロイできる機能追加が発表され、非常に注目を集めました! From Docker Straight to AWS - Docker Blog AWS and Docker collaborate to simplify the developer experience | Containers ローカルでDockerを利用して開発を行っている方々は、ほぼ間違いなくDocker Composeを利用してアプリの動作に必要な各コンテナを一括管理しているかと思いますが、このECS Pluginを利用するとAmazon ECSへの各コンテナのデプロイとECSの動作に必要な各AWSリソースを一括し
はじめに こんにちは、SRE部MLOpsチームの児玉(@dama_yu)です。この記事では、ZOZOTOWNのおすすめ順を支える検索パーソナライズ基盤について紹介します。 ZOZOTOWNのおすすめ順について ZOZOTOWNにおいて検索機能は非常に重要な機能の1つで、売上のうち多くの割合が検索経由です。ZOZOTOWNでは、検索結果の並び順として、おすすめ順、人気順、新着順など複数あり、現在おすすめ順がデフォルトになっています。 元々は人気順がデフォルトだったのですが、ユーザの嗜好に合わない商品まで検索結果に並んでしまうという課題がありました。そこで、この課題へのアプローチとしてユーザの行動履歴や属性を元にパーソナライズされた順番で検索結果を並べた、おすすめ順を新規追加することになりました。 この施策の結果、検索結果経由の商品CTRが向上しました。ユーザが求めている商品が並ぶようになった
AWS Lambdaの環境がどのようになっているか、ユーザが用意したLambdaファンクションがどんな感じで実行されるかってあたりを可能な限り詳しく説明したいと思います。 はじめに 大前提 コールドスタート/ウォームスタート コントロールプレーン/データプレーン アイソレーション AWS Lambdaのコンポーネント群 同期実行かつ初回呼び出し(コールドスタート)、もしくはスケーリング 同期実行かつ再利用(ウォームスタート) 非同期実行 スケールアップ エラーハンドリング リトライ その他 ネットワーク まとめ はじめに この投稿は2020年9月29日の21時から開催予定のイベント(ライブストリーミング)で話す内容です。 serverless-newworld.connpass.com もし間に合えば、かつ時間があればぜひライブ配信のほうにも参加ください。 (2020.09.30 upda
こんにちは!コネヒトでアプリケーションエンジニアをしているaboです。 今回はコネヒトで特にネイティブアプリをグロースさせるために使っているSaaSを、それぞれどう使っているかも合わせて紹介します。 今回紹介するのはこの4つで、ざっくりとした使い方は以下の通りです。 Firebase:クラッシュ分析や、A/B テストなど KARTE:ポップアップ配信 Repro:プッシュ通知配信 Mixpanel:フローやファネル、リテンションなど多様なデータ分析 それぞれについてもう少し詳しく紹介していきます。 Firebase のつかいかた Firebase は多くの機能を持つアプリ開発プラットフォームですが、コネヒトでは以下の機能をつかっています。 Firebase Analytics:BigQuery とリンクさせて多様なデータ分析 Firebase Crashlytics:クラッシュ/非重大なイ
はてなブログでSREをやっているid:cohalzです。 2019年12月頃からid:utgwkkやid:onkとともに、はてなブログにおけるキャッシュ周りの改善を行いました。その結果、次のような成果が得られました。 ブログ記事のキャッシュヒット率が、1日平均で8%から58%に向上 アプリケーションサーバの台数を、以前の半数以下に削減 DBに届くリクエスト数が、以前の3分の2まで減少 レスポンスタイムの平均が、以前の8割まで減少 この記事では、実際にどういった改善を行ったのか、その際に気をつけたことや大変だったことを紹介します。 はてなブログがVarnishを導入した経緯と課題 開発合宿をきっかけに問題が明らかになる 進め方をまず考える ホストのメモリをできるだけたくさん利用する メモリを積んだホストでなぜかレイテンシが悪化 キャッシュが分散しないようVaryヘッダを使う デバイス情報を適
Python を初めて間もない頃、自分も print デバッグしてました。効率の悪さを認識しつつも、IDEを導入してデバッグする方法を調べてセッティングして、という手順が面倒でずっと放置してました。 // 普段は vim で開発してます そうこうしてたら print デバッグではどうにもならないバグにぶち当たり、仕方なくデバッグポイントを置く方法を調べたわけです。するとどうでしょう。 ソースコード中に以下の一文を入れるだけではないですか。 import pdb; pdb.set_trace() たったこれだけで、上の一文を挿入した行で処理が停止し、コンソール上でステップ実行が出来るようになります。最高かよ。 個人的にですが、デバッガー起動中によく使うコマンドとしては以下です。 コマンド 説明 s(tep) ステップイン n(ext) ステップオーバー r(eturn) ステップアウト l(
こんにちは、コネヒトでアプリケーションエンジニアをしているaboです。今年の夏はいかがお過ごしでしょうか。とても暑い日が続いていますが、桃なんかは今が食べ頃なので冷やして食べると美味しいです。 さて、先日私の所属するテクノロジー推進グループで、プッシュ通知開封率予測モデリングコンペを行いました!私は主催者ではありませんが、機械学習未経験として参加した立場から、ブログにまとめようと思います。 テクノロジー推進グループとは? 元々コネヒトでは、機械学習エンジニアとインフラエンジニアとでタッグを組んで、サービスに機械学習を組み込んでいました。以下に2つの事例を紹介します。機械学習でサービスを良くする事例ができたことで、社内からの注目も高まっています。 tech.connehito.com tech.connehito.com ただ、機械学習をサービスに組み込むプロセスに課題もありました。機械学習
セッションマネージャー越しにSSHアクセスする構成のメリットについて考えてみました。 なにそれ? 公式ドキュメントでいうと以下内容のことです。 Step 8: (Optional) Enable SSH connections through Session Manager もう少し詳しく まず、クライアントはセッションマネージャーを使ってアクセスしたいインスタンスにアクセスします。 もう少しこの部分を具体的に説明すると、クライアントがアクセスしているのはインスタンスではなく、SSM(Systems Manager)のエンドポイントです。 そして、アクセス先インスタンス内のSSM Agentがポーリングアクセスしていて、こちらを通じてアクセスしています。 そして、この接続の先で、SSH接続し直しているイメージになります。これが今回扱う「セッションマネージャー越しにSSHアクセス」です。 わ
こんにちは、SRE部MA基盤チームの谷口(case-k)です。私達のチームでは、データ連携基盤の開発・運用をしています。 データ基盤には大きく分けて2種類あり、日次でデータ連携してるものとリアルタイムにデータ連携しているものがあります。本記事ではリアルタイムデータ連携基盤についてご紹介します。 既存のデータ連携基盤の紹介 リアルタイムデータ連携基盤の紹介 なぜ必要なのか 活用事例の紹介 データ連携の仕組みと課題 リプレイス後のリアルタイムデータ連携基盤 SQL Serverの差分データの取り方を検討 アーキテクチャ概要と処理の流れ Fluentdのプラグインを使った差分データの取得 Dataflowでメッセージの重複を排除 Dataflowで動的にBigQueryの各テーブルに出力 Pub/Subのメッセージ管理 イベントログ収集基盤 個人情報の取り扱い ビルド・デプロイ戦略 監視 データ
この記事は、下書き供養 Advent Calendar 2018 - Adventarの2日目の記事です。 めっちゃ専門的な内容になってしまいました。ごめんなさい。 某Slackでの議論内容をブログに書こうとしたのですが、下書きのまま放置していました。 Wednesday, August 15th と書いてあるので、約半年前の内容となります。 もくじ もくじ はじめに 「データ基盤の3分類」と「(一般的な)技術要素」 1.データレイク(Data Lake) 2.データウェアハウス(Data Warehouse) 3.データマート(Data Mart) 私が考えるデータ基盤の定義 私が考える「あるべき構成」 技術要素を分けるのはアンチパターン 進化的データモデリングを容易にしよう チームとアーキテクチャを選ぶ まとめ 参考 余談 追記 はじめに データ基盤と世間一般で言われるシステムには分類
こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 さいたまスーパーアリーナは、埼玉県さいたま市中央区にある多目的アリーナ。本文には特に関係ありません。 最近、Terraformを書くことが多く、知見が貯まりつつあった時にちょうどディレクトリ構成に関する記事を読んでタイミングがよかったので、 今回はTerraformのディレクトリ構造の実例を晒したいと思います。 結構固まってきたからうちのチームの構成も晒してみようかな。 | Terraformのディレクトリ構成の模索 - Adwaysエンジニアブログ https://t.co/31FMkcCJOo— Yuichiro Fukubayashi (@fukubaya) July 3, 2020 クラウド化推進 なぜ定番が決まらないのか 前提となる条件 本番環境と検証環境はほぼ同じ構成 レポジトリとtfstat
Docker社とAWSがコラボレーションするという驚きとともに、新しくdockerコマンドに組み込まれたdocker ecsの使い心地を試してみました。 「docker ecsコマンド?なにこれ?」 先日、突如、DockerのECSインテグレーションなるものが発表されました! AWS and Docker collaborate to simplify the developer experience | Containers 従来あるdockerコマンドに、なんとdocker ecsコマンドが追加され、docker-composeファイルを利用したECSへのデプロイがAWS CLIなどのAWS製ツールを使わずに、全てdockerコマンドだけで完結するという、ちょっと想像がつかないアップデートです。 まだDocker社ではベータ版の扱いということですが、なかなかにおもしろいアプローチだった
はじめに 先日、僕が担当する業務でECS/Fargate利用を前提にDevSecOpsアーキテクチャをデザインし、社内のAWS勉強会にて登壇する機会をいただきました。 本ブログでも内容をかいつまんでご紹介できればと思います。 AWSによらず、コンテナを利用されている方にとって、一つのプラクティス例としてご参考になれば幸いです。 ※コンテナ自体の説明や必要性に関する内容は省略していますm(_ _)m そもそもDevOpsとは? DevSecOpsの導入意義をお伝えするた前に、まず軽くDevOpsの意義をお伝えします。 ※とは言え、この記事をご訪問されている方にとっては「何をいまさら...」な内容かもしれませんし、ググればDevOps自体の情報はたくさん見つかりますので、重要なポイントのみ述べることにします。 DevOpsとは、一言で述べれば、開発チームと運用チームが協力してビジネス価値を高め
はじめに こんにちは。ZOZOTOWN部サービスグロースチームでアナリティクスをしている井ノ口です。 この記事ではBigQueryで使える、ユーザー定義関数(UDF)という便利な武器をご紹介します。「UDFって何?」「何のために使うの?」という方に向けた記事のため、高度な分析などはこの記事では扱いません。 UDFとは UDFとは、最初から用意されているSUMやCOUNTのような関数を、ユーザー自身が定義する関数です。 私のチームではGoogle Analyticsのデータから、ユーザーが閲覧したページを分類したり、日時を計算したりする際などにUDFを用いてます。利用法など詳細は公式のドキュメントに記述されているため、そちらをご参照ください。 参考:標準 SQL ユーザー定義関数 | BigQuery | Google Cloud UDFを使うメリット 使い方によって様々なメリットを受けられ
Data Engineering Study #1 の発表資料です。 https://forkwell.connpass.com/event/179786/ 当日の動画はYoutubeで閲覧可能です。 https://www.youtube.com/watch?v=hFYNuuAaiTg …
はじめにMachine Learning部門の近江です。ストックマークでは、自然言語処理技術の研究開発を行っています。 先日、弊社のTech Blogにて弊社が公開している言語モデルを紹介しました。 ストックマークが公開した言語モデルの一覧と振り返り 今回は、言語モデルがプロダクトにおいて実際にどのように利用されているかについての一例を紹介します。 ニュース記事の構造化マーケティング、新規事業開発などの調査業務では、調査を行う人が書籍、ニュース記事、ホームページなどの情報を網羅的に調べ、整理し、報告書などにまとめていきます。その際に扱う情報は膨大であり、そのため調査業務には多くの時間と労力がかかります。 弊社のプロダクトである「Astrategy」は機械学習を用いてニュース記事から特徴となる情報を抽出し、構造化することで、大量のニュース記事を効率的に俯瞰し、さらに新規事業開発などに繋がりう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く