並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 327件

新着順 人気順

gracefulの検索結果1 - 40 件 / 327件

  • サーバーレスアーキテクチャ再考 - ゆううきブログ

    2014年にAWS Lambdaが登場し、Functionを単位としてアプリケーションを実行する基盤をFunction as a Service(以下、FaaS)と呼ぶようになった。 そして、同時にサーバーレスアーキテクチャ、またはサーバーレスコンピューティングと呼ばれる新しいコンセプトが普及するに至った。 当初、そのコンセプトが一体何を示すかが定まっていなかったために議論が巻き起こり、今現在では一定の理解に着地し、議論が落ち着いているようにみえる。 しかし、サーバーレスという名付けが悪いということで議論が着地したようにみえていることにわずかに疑問を覚えたために、2019年の今、これらの流れを振り返ってみて、サーバーレスアーキテクチャとは何かを改めて考えてみる。 サーバーレスとの個人的関わり サーバーレスアーキテクチャという名を僕がはじめて耳にしたのはAWS Lambdaが登場した2015

      サーバーレスアーキテクチャ再考 - ゆううきブログ
    • Kubernetes 専門家として知るべき 47 のこと - 誰かの役に立てばいいブログ

      この記事は私が過去 3 年ほど Kubernetes に携わる中で学んだ、ちょっと見つけにくい知識をまとめたものです。 特にカスタムコントローラーを開発するような人に必要となる知識群です。 感想とか指摘とかあれば Twitter までお寄せください。 更新履歴 2021-03-05: "コンテナの resources.limits と resources.requests の違いについて" の項を補足しました (thanks to @superbrothers) API コントローラー実装 プログラムと連携動作 資源管理 ネットワーク モニタリング アクセスコントロール API kube-apiserver が備える拡張機構を列挙しなさい 回答例 Custom resources: OpenAPI スキーマで独自のリソース型を追加できる Aggregation layer: kube-ap

        Kubernetes 専門家として知るべき 47 のこと - 誰かの役に立てばいいブログ
      • AI作曲サービス「Suno」、無料ユーザーにも高品質版V3を開放。1日20曲、1曲2分が生成可能(CloseBox) | テクノエッジ TechnoEdge

        米国のAIスタートアップSunoは、自社のAI作曲サービスである「Suno」をV3にバージョンアップしました。3月20日より、3からのカウントダウンをスタートしていましたが、日本時間の22日2時に、正式公開されました。 V3では、1回で作成できる曲の長さを従来バージョンであるV2の1分20秒をV3では2分までに伸ばし、インストゥルメンタル曲の指定、高音質化、多ジャンルへの対応など、多くの機能強化を行なっています。 これまではProおよびPremierの有償ユーザーのみがアルファ版を使えていましたが、正式版になったことで、無料ユーザーも1日10回、1回で2曲が同時に生成されるので、1日当たり最大20曲まで利用できることになります。 無料ユーザーアカウントで試してみましたが、V3がデフォルトとなっている他に、V3 Alpha版との大きな違いはありません(V2も選択できるようになっています)。

          AI作曲サービス「Suno」、無料ユーザーにも高品質版V3を開放。1日20曲、1曲2分が生成可能(CloseBox) | テクノエッジ TechnoEdge
        • PayPayエンジニアが明かす「100億円キャンペーン」のシステムの舞台裏 数々の問題を解決するためにやったこと

          PayPayエンジニアが明かす「100億円キャンペーン」のシステムの舞台裏 数々の問題を解決するためにやったこと PayPay 100億円キャンペーンのシステム構築 #1/2 2019年6月12〜14日、幕張メッセにて「AWS Summit Tokyo 2019」が開催されました。アマゾンウェブサービス (AWS) に関する情報交換や、コラボレーションを目的として行われるこのカンファレンスでは、140社以上の利用企業による先進事例セッションをはじめ、数々のイベントを実施しました。プレゼンテーション「PayPay 100億円キャンペーンのシステム構築 」に登壇したのは、PayPay株式会社プロダクト本部の山本啓介氏とShilei Long氏。スマホ決済アプリとして新規参入した同社が展開し、日本中の話題をさらった「100億円キャンペーン」の技術的背景について語ります。前半パートとなる今回は、山

            PayPayエンジニアが明かす「100億円キャンペーン」のシステムの舞台裏 数々の問題を解決するためにやったこと
          • CIOpsとGitOpsの話 - inductor's blog

            はじめに GitOpsという言葉が生まれたのが自分の知る限り2017年頃なのですが、世の中にあるCI/CDの仕組みはまだほとんどがCIOpsもしくは手動のオペレーションによって成り立っていると思っていて、かつては自分もそうだったのですが「Gitで管理されていればGitOpsなんでしょ?」という勘違いを払拭したくてこのエントリーを書いています。 GitOpsとCIOpsは全然違う まず前提としてGitOpsの明確な定義を知らないという場合、あなたの思う「Gitを契機とした自動デプロイの仕組み」は基本的にはCIOpsです。GitOpsとCIOpsは思ったよりも大きな違いがあって、そもそもGitOpsの必要性が分かっていない場合、自動化によって成立しているデプロイはCIOpsが基本です。 CIOpsとGitOpsの一番の違いは、Push型かPull型かである CIOpsの場合、例えばGitHub

              CIOpsとGitOpsの話 - inductor's blog
            • 現代のWebアプリケーションエンジニアとして最低限の常識TODO - shimobayashiパブリック

              古代のWebアプリケーションエンジニアなので、現代との差分を身に付けていくぞ! 個人的なスキルセットの差分を埋めるためのものなので、誰にでもマッチするものではありません。 習うより慣れろの精神で、読んで終わりじゃなくて手を動かします。 コンテナ化 x done.icon The Twelve-Factor App (日本語訳) done.icon What is Amazon Elastic Container Service? - Amazon Elastic Container Service 機械翻訳がひどかったので英語版をGoogle翻訳で読むほうがマシそう メニュー1階層目だけ全部読んで、気になるところがあれば深堀りする ↑で物足りなかったらKubernetes完全ガイド 第2版 impress top gearシリーズ | 青山真也 | 工学 | Kindleストア | Ama

                現代のWebアプリケーションエンジニアとして最低限の常識TODO - shimobayashiパブリック
              • 何気ない人種差別#1|「STFU!」に見るマイクロアグレッション|北村花

                マイクロアグレッション(英語: Microaggression)とは、何気ない日常の中で行われる言動に現れる偏見や差別に基づく見下しや侮辱のこと。 マイクロアグレッションとは何であるかということを知ってもらうために、まずはRINA SAWAYAMA「STFU!」のMVの冒頭部分を見てほしい。(⚠️1:36あたりから急に音が大きくなるので注意) 日本語字幕がないので、以下に冒頭のシーンの和訳を載せる。所々間違っているかもしれないがご容赦頂きたい。(和訳がいらない人は読み飛ばしてもらって構いません。) (RINAをA、白人男性をBとする) B:じゃあ...君は歌手なの? A:まぁね B:そうなんだ!いや、君を見ても、僕はなんていうか、気づかなかったよ。(鼻で笑う)君が英語で歌うとは驚きだな。 A:私はここで育ってて... B:(言葉を遮り)わぁ、これ大好きだ(寿司を突き刺す) まさにホンモノっ

                  何気ない人種差別#1|「STFU!」に見るマイクロアグレッション|北村花
                • 秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog

                  こんにちは!スタンディングデスクを導入して快適な開発環境と運動不足の両方を解消できるようになったのではと感じている、広告技術部のUT@mocyutoです。 今回は半年ほどEKSを運用して秒間3万リクエストのトラフィックをさばくほどになりました。 秒間3万は広告システムだと割とあるとは思いますが、kubernetesでも運用できているので紹介しようと思います。 対象のEKSで構築したサービスは広告の配信サーバです。 広告配信サーバの要件として、まず50ms以内にレスポンスを返さなければいけません。 構築したk8sのレスポンスタイムの99パーセンタイルは10msほどで返せています。 以下は必要最小限のクラスタの構成図です。 全体像 API 弊社のサーバサイドはほぼGoで作られているので、例に漏れずGoで作られています。 pod構成はAPI、fluentd、envoyの サイドカーパターン です

                    秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog
                  • 浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記

                    お近づきになりたい人向けシリーズです。 いろいろなトピックを詰め込みましたが、「これら全部を知らないといけない」のようなつもりではなく、いろいろなことを知るきっかけになったらいいなという気持ちなので、あまり身構えずにちょっとずつ読んでもらえたらうれしい気がします。 まえがき 予備知識 規格 用語 精度という語について 記法 表現について 有限値の表現について エンコードについて 丸めについて よくある誤差や勘違いの例 0.1 = 1 / 10? 0.1 + 0.2 = 0.3? 整数の誤差 Rump’s Example 基本的な誤差評価 用語に関して 実数の丸め 有理数の丸め 基本演算の丸め 差について 複数回の演算 補題たち 桁落ちについて Re: Rump’s example 融合積和 数学関数に関する式の計算 誤差の削減に関して 総和計算 数学関数の精度について 比較演算について 雑

                      浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記
                    • ApacheでのLet's Encrypt運用が簡単になりました

                      Let’s Encrypt は無料でサーバー証明書を発行してくれる認証局です。2016 年のサービス開始以来、 急速に普及しています。 Let’s Encrypt の証明書発行には ACME プロトコルに対応したクライアントソフトウェアを使います。主要な ACME クライアントソフトウェアは ACME Client Implementations で紹介されています。Let’s Encrypt のサイトでは certbot というツールが推奨されているのですが、 このツールは Windows には対応していません。Windows 環境では win-acme (旧名 letsencrypt-win-simple) というツールが良く使われているようです。 私も、 これまで win-acme を使ってきたのですが、 先日、 ふとしたことで mod_md という Apache モジュールの存在を

                        ApacheでのLet's Encrypt運用が簡単になりました
                      • latestタグのままdocker imageを本番運用してどうなったか - 京都行きたい

                        latestタグや書き換えるためのタグ(develop, stagingなど)を使って、本番で運用するのはやめましょう。 コンテナイメージのキャッシュ状況やリリースフローによっては予期しない形で 予期しないバージョンが本番で起動する可能性があります。 本記事では、どのプラットフォームやツールで発生したかについては記載しません。 本題はそこではないのと、そもそも運用が間違っているので 記述しても余計な枝葉になるからです。 この記事ではどういうことが起きたか、について書きます。 どういうことが起きたか サービスで、dockerイメージのlatestタグを使って本番運用していた。 全コンテナをgraceful restartしたようだ。(つもりだったが・・・) 別の作業中、管理画面の表示がおかしくなっているという話が出てきた。 そこで調べてもらったところ、なぜかリリースしたはずの機能が正常に機能

                          latestタグのままdocker imageを本番運用してどうなったか - 京都行きたい
                        • Full Third-Party Cookie Blocking and More

                          This blog post covers several enhancements to Intelligent Tracking Prevention (ITP) in iOS and iPadOS 13.4 and Safari 13.1 on macOS to address our latest discoveries in the industry around tracking. Cookies for cross-site resources are now blocked by default across the board. This is a significant improvement for privacy since it removes any sense of exceptions or “a little bit of cross-site track

                          • GoはいつGCするのか?

                            TL;DR Go(のランタイム)は以下のタイミングで自動的にGCを実行する 前回のGC後に占有していたメモリと同量を新たに確保したとき 前回のGCから2分後 cgroupなどでメモリ制限しているときは、メモリ使用量が制限の50%以上になったらruntime.GC()を呼び手動でGCすべきである 前置き: GoとOOMのこれまで 以下はGo 1.16での調査結果です。Goのバージョンが異なった場合は事情が異なる可能性があります。 Goでプログラムを書く際に、使用メモリ量を気にしなければならないシーンはGCのおかげでそう多くはありません。実際それは間違いではないのですが、運用まで視野に入れるとそうは言ってられないことがあるのもまた現実です。昨今はコンテナの利用が当たり前になったことに伴い、OOMによりプロセスが強制的に終了させられることもあり、それを避けるために一定量以下のメモリで動くことが重

                              GoはいつGCするのか?
                            • 1コンテナ複数プロセスはやめておいた方が良い話 - Qiita

                              概要 Docker コンテナの原則として「1コンテナ1プロセス」1というものがありますが、あえてこの原則を破りたいときがあるかもしれません。 公式: Run multiple services in a container 有志翻訳: コンテナー内での複数サービス起動 上記ドキュメントのラッパースクリプトを利用する方法には重大な問題があり、本番環境で使用するべきではありません。 (よりによって「本番環境でのアプリ運用」の項目にある) 公式ドキュメントに書かれているのに、死ぬというのはおかしいじゃないか それが罠だという証拠 ちなみに supervisord を利用する方法は問題ありません。 また、コンテナ向けに最適化された s6-overlay2 を利用する方法もあります。 ラッパースクリプトの問題点 プロセスの graceful shutdown が実行されない(プロセスに SIGKIL

                                1コンテナ複数プロセスはやめておいた方が良い話 - Qiita
                              • 【Go】HTTPサーバーは安全に終了させましょう

                                はじめに こんにちは。都内でソフトウェアエンジニアをしているtomoriです。 突然ですが、Go言語でHTTPサーバーを実装する際、サーバーの終了処理を適切に実装できている自信はありますか? 自分が開発に携わっているプロダクトでは、ほんの最近まで下記のような不適切な終了処理を行なっていました(話を簡単にするためにここでは panic を使っています)。 err := http.ListenAndServe(":8080", handler) if err != nil { panic(err) } HTTPサーバー実装のサンプルとかでよく見るやつですね。 これだとアプリケーション側で、いわゆる Graceful Shutdown ができておらず、実行環境にて不具合を引き起こす恐れがあります。 というわけで、最近それを修正したのでアウトプットとして記事にします。 Go言語でHTTPサーバーを

                                  【Go】HTTPサーバーは安全に終了させましょう
                                • gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog

                                  こんにちは、Wantedly の Infrastructure Team で Engineer をしている南(@south37)です。 今日は、WANTEDLY TECH BOOK 6 から「gRPC Internal」という章を抜粋して Blog にします。 「WANTEDLY TECH BOOK 1-7を一挙大公開」でも書いた通り、Wantedly では WANTEDLY TECH BOOK のうち最新版を除いた電子版を無料で配布する事にしました。Wantedly Engineer Blogでも過去記事の内容を順次公開予定であり、この Blog もその一環となっています。 Wantedly における Go 導入にまつわる技術背景 | Wantedly Engineer Blog (本記事は Go Conference 2019 Autumn にて無料配布した冊子『WANTEDLY TE

                                    gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog
                                  • The new wave of Javascript web frameworks

                                    The new wave of Javascript web frameworksMake sense of the proliferation of new Javascript web frameworks. A deep dive into the problems at scale and the recent evolution of innovation. IntroductionStaying current in the Javascript ecosystem is not for the faint of heart. It’s challenging for those entering the industry to follow what’s happening amongst the new libraries, frameworks, concepts, an

                                      The new wave of Javascript web frameworks
                                    • “Tao of Node - Design, Architecture & Best Practices” 日本語翻訳

                                      私が働いているAniqueという会社では、1年前に全てのソフトウェアでTypescriptを採用することにしました。私たちが開発している進撃の巨人のNFTサービス “Attack on Titan: Legacy” でも採用しています。 TypescriptではNestJSという素晴らしいAPIフレームワークを利用することができ、生産性高く開発を続けることができます。また、私たちはフロントエンドでNext.jsを利用しています。言語レベルでのコンテキストスイッチを抑えることで、一人のエンジニアがフロントエンドとバックエンドのどちらもの機能を開発する環境が作れました。 しかし、Nodeならではの作法や設計について、Web上にはたくさんの情報があるものの、あまりにも情報が多すぎて、まとまったプラクティスになかなか出会うことができませんでした。そのため、最初はチーム内での共通認識を作るのに苦労し

                                        “Tao of Node - Design, Architecture & Best Practices” 日本語翻訳
                                      • k6を使いこなしてみよう - 生涯未熟

                                        この記事は MIXI DEVELOPERS Advent Calendar 2022 6 日目の記事です。 負荷試験を行う機会が年に何度かあるのですが、以前まではvegetaを使っていましたがちょっと高めの負荷をかけた時の挙動がよろしくなく、k6を試してみたところ不満が無かったので最近はk6を常用しています。 そんなk6をもうちょっと使いこなすために色々とまとめてみようかと思います。 k6とは? Grafana Labsが開発した負荷ツール。 github.com ツール自体はGo製で、負荷シナリオをJavaScriptで書きます。 負荷シナリオはk6 Browser RecorderというChrome拡張を使えばブラウジングしているだけで作成可能で、k6 Cloudを使ったWeb上でのシナリオ作成・管理・実行が可能です。 わざわざGitHub上でシナリオを管理しなくてもいいというのは個人

                                          k6を使いこなしてみよう - 生涯未熟
                                        • Kubernetesをちょっと理解したあなたに贈るGKEの実践ノウハウ4選 - MonotaRO Tech Blog

                                          はじめに 商品推薦システム: RecSys について GKEを採用した理由 GKEノウハウの紹介 RegionalクラスタでZone, NodeごとにPodが分散されるようにAffinityを設定 graceful shutdownするコンテナでもpreStopが必要 コンテナネイティブの負荷分散を利用 負荷試験によるHPAのパラメータ調整 まとめ はじめに こんにちは。EC基盤グループの池田(@progrhyme)です。 モノタロウでは昨年、商品のレコメンデーションに用いるシステムを内製化するという取り組みを行いました。 私もこのプロジェクトに参加し、主にGoogle Kubernetes Engine(以下、GKE)上でのアプリケーションの構築・設定やCI/CD設定、監視設定などを行っていました。 私自身、本番運用するGKEのプロダクトを本格的に触るのは、本件が初めての経験でした。 そ

                                            Kubernetesをちょっと理解したあなたに贈るGKEの実践ノウハウ4選 - MonotaRO Tech Blog
                                          • Introducing Yarn 2 ! 🧶🌟

                                            Hi everyone! After exactly 365 days of very intensive development, I'm extremely happy to unveil the first stable release of Yarn 2. In this post I will explain what this release will mean for our community. Buckle up! If you're interested to know more about what will happen to Yarn 1, keep reading as we detail our plans later down this post: Future Plans. If you just want to start right now with

                                              Introducing Yarn 2 ! 🧶🌟
                                            • ぼくのかんがえたさいきょうのGo HTTPサーバー起動方法

                                              これまで何度か HTTP Server の Graceful Shutdown について記事を書きました。 Go 言語で Graceful Restart をする Go 言語で Graceful Restart をするときに取りこぼしを少なくする Go1.8 の Graceful Shutdown と go-gracedown の対応 最終的に Go 1.8 で Server.Shutdown が導入され、この件は解決を見ました。 しかし、最近「あれ?本当に正しく Server.Shutdown 使えている?」と疑問に思い、少し考えてみました。 というか ↑ の記事もまだ考慮が足りない気がする。 ぼくのかんがえたさいきょうの Go HTTP サーバー起動方法 とりあえず完成形のコード。 package main import ( "context" "log" "net/http" "os

                                              • Amazon EKSでgRPCサーバを運用する - 一休.com Developers Blog

                                                以前の記事でも紹介した通り、一休では、gRPCを使ったサービスを導入し始めています。 user-first.ikyu.co.jp この記事では、このサービスをAmazon EKSで提供するための設計や気をつけたポイントについて紹介します。 背景 一休では、ウェブアプリケーションの実行環境としてAWS Elastic Beanstalkを採用しています。 そして、この4月からElastic BeanstalkをAmazon EKSへ移行するプロジェクトを進めています。 このgRPCサービスもElastic Beanstalkで運用をしていましたが、以下の問題を抱えていました。 適切にロードバランシングできない。 Elastic BeanstalkでgRPCサービスを運用しようとするとNetwork Load Balancer(NLB)を使うことになります。NLBはレイヤ4のロードバランサです

                                                  Amazon EKSでgRPCサーバを運用する - 一休.com Developers Blog
                                                • ECS のアプリケーションを正常にシャットダウンする方法 | Amazon Web Services

                                                  Amazon Web Services ブログ ECS のアプリケーションを正常にシャットダウンする方法 この記事は Graceful shutdowns with ECS を翻訳したものです。 — はじめに Amazon Elastic Container Service (Amazon ECS) を利用することで、お客様はさまざまな方法でコンテナ化されたアプリケーションを柔軟にスケールできます。リクエストの急増に対してタスクをスケールアウトすることも、コスト削減のためにタスクをスケールインすることもできます。ECS ではさまざまなデプロイの選択肢があり、ローリングデプロイ・ブルー/グリーンデプロイ・カナリアデプロイなどがサポートされています。さらに、ECS では柔軟なコンピューティングの選択肢が用意されています。Amazon EC2 のオンデマンド/スポットのキャパシティ上や、マネージ

                                                    ECS のアプリケーションを正常にシャットダウンする方法 | Amazon Web Services
                                                  • Go: A Documentary

                                                    Go: A Documentary by Changkun Ou <changkun.de> (and many inputs from contributors) This document collects many interesting (publicly observable) issues, discussions, proposals, CLs, and talks from the Go development process, which intends to offer a comprehensive reference of the Go history. Disclaimer Most of the texts are written as subjective understanding based on public sources Factual and ty

                                                    • なれる!SRE - Becoming SREで学んだこと - じゃあ、おうちで学べる

                                                      はじめに エンジニアとして就職する前に読んだ「なれる!SE 2週間でわかる?SE入門」の内容があまりにも厳しく、業界に就職するのが怖くなったことを覚えています。本の中に登場する中学生の少女にしか見えない凄腕のSE、室見立華さんのような人物は現実には存在しないでしょうが、実際の業界には彼女のような凄腕エンジニアや年齢不相応な技術力を持つ人間も確かに存在します。 なれる!SE 2週間でわかる?SE入門 (電撃文庫) 作者:夏海 公司,IxyKADOKAWAAmazon SREの探求『Becoming SRE』の内容紹介 私は「なれる!SE」が好きすぎるあまり、「なれる!SRE」というタイトルのクソみたいな文章を吐き出したこともありましたが、そのクオリティがあまりにも低かったため、外には公開せずに留めておきました。そんな中、SREの探求の原著者であるDavid Blank-Edelman(ott

                                                        なれる!SRE - Becoming SREで学んだこと - じゃあ、おうちで学べる
                                                      • Kubernetesのモダンな活用法 - 設計メソッドと、Virtual Kubeletで実現するサーバーレス化を学ぼう|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                        ハイクラス求人TOPIT記事一覧Kubernetesのモダンな活用法 - 設計メソッドと、Virtual Kubeletで実現するサーバーレス化を学ぼう Kubernetesのモダンな活用法 - 設計メソッドと、Virtual Kubeletで実現するサーバーレス化を学ぼう Kubernetesはここ数年で一気にユーザーを増やしたコンテナオーケストレーターですが、一般化にともない、その活用法も洗練されてきました。本稿では「The Twelve-Factor Appを援用したKubernetes設計」と「Virtual Kubeletを活用したKubernetesのサーバーレス化」という、比較的新しい2つの活用法を武井宜行さんが解説します。 こんにちは。サイオステクノロジー株式会社でエンジニアをしております武井宜行(タケイ・ノリユキ/ @noriyukitakei )と申します。本稿では、比

                                                          Kubernetesのモダンな活用法 - 設計メソッドと、Virtual Kubeletで実現するサーバーレス化を学ぼう|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                        • WebアプリケーションにGoの並行処理アーキテクチャを導入してSLOを改善し、WebAPIを100倍速くした話 - スタディサプリ Product Team Blog

                                                          こんにちは。スタディサプリの小中高プロダクト基盤開発グループでProduct Platform Engineer兼テックリードをやっている@tooooooooomyです。 今回は、WebアプリケーションにGoの並行処理機構を導入してSLOを改善し、WebAPIを100倍速くした話をしたいと思います。 前提条件 システムを0から作らない場合、アーキテクチャの改善の際には前提条件が付きものです。そこでまずは今回のシステムの前提条件をお話します。 対象となるシステムと、アーキテクチャ 今回対象とするシステムは、ここでは security-tracker と呼び、Webアプリケーション本体はGoで書かれています。 スタディサプリの各アプリケーションにおけるユーザーのログ1を、Amazon Kinesis Firehoseを通して、リクルート全体のセキュリティチームが管理するS3バケット(スタディサ

                                                            WebアプリケーションにGoの並行処理アーキテクチャを導入してSLOを改善し、WebAPIを100倍速くした話 - スタディサプリ Product Team Blog
                                                          • k6 + Echo + go-sqlite3 + Litestream + Linode Object Storage 簡易負荷試験メモ

                                                            注意 とっても雑な検証なので参考などにはしないでください。ちょっとした興味で自分用に調べてるだけです。 結論 Echo を利用した秒 1 万リクエストを超えないウェブサービスで、かつ SQLite の機能で要件がみたせるのであれば、SQLite + Litestream 十分と判断出来る結果だった。 利用技術 Load testing for engineering teams | Grafana k6 Grafana に買収された Go で書かれた負荷試験ツール JS でシナリオが書ける Litestream - Streaming SQLite Replication SQLite リアルタイムバックアップツール mattn/go-sqlite3: sqlite3 driver for go using database/sql Litestream も使ってる 安心と信頼の matt

                                                              k6 + Echo + go-sqlite3 + Litestream + Linode Object Storage 簡易負荷試験メモ
                                                            • 私が Azure Functions アプリケーションの開発時に意識していること - しばやん雑記

                                                              ここ数年は Azure Functions をフルに活用したアプリケーションを実装することが多かったのですが、同時に Azure Functions を失敗しないように使う方法も分かってくるので、ここらでちゃんと言語化しておきます。 最近は特に Azure Light-up というハッカソンを行うことが多いのですが、Azure Functions を使う場合には必ずこの辺りは毎回説明するようにしています。要するに Azure Functions の利点・特性を理解して賢く使いこなそうという話です。 Binding / Trigger で実現出来ないか考える Function の実装は出来る限り小さく保つ リトライのしやすい実装を重視する 最新の .NET での作法に沿ったコードを書く Graceful Shutdown に対応したコードを書く 機能単位で Function App プロジェ

                                                                私が Azure Functions アプリケーションの開発時に意識していること - しばやん雑記
                                                              • ウン十万接続のECSサービスを平和にアップデートしたい - Nature Engineering Blog

                                                                こんにちは大塚(@maaash)です。7月からCTOに復帰しました。引き続きよろしくお願いいたします。 これは第2回 Nature Engineering Blog 祭11日目のエントリです。 昨日はファームウェア・エンジニアの村田さんによる Matterでやりたかったけどできなかったこと - Nature Engineering Blog でした。 今日のお話は、話題の新製品Remo nanoやMatterとは関係ありません。 背景 先週、黒田さんが ウン十万接続のALB SSL証明書を平和に更新したい - Nature Engineering Blog を書いてくれました。 その話は ALBを二台用意して緩やかに接続を移行するようにしたら、大変平和になって僕もみんなもハッピーになった。 という話でした。ALB blue-green deploymentを使うと、ウン十万のRemoたちが

                                                                  ウン十万接続のECSサービスを平和にアップデートしたい - Nature Engineering Blog
                                                                • EKS環境下でコストが増大する事例とfreeeのアプローチ - freee Developers Hub

                                                                  はじめまして。freee の SRE チームに所属している nkgw (Twitter) です。 普段はエンジニアリングマネージャーをしつつ、開発チームの新規プロダクトリリースサポートをやっています。 我々のチームは大部分のプロダクトのコンピューティングリソース (CPU / Memory など) を Amazon Elastic Kubernetes Service (EKS) で実行できるようにインフラ基盤移行 (EC2 → EKS) を進めてきました。 移行プロジェクトの大部分は 2021 年 7 月に無事終わったのですが、移行スケジュールを最優先としたため割り当てている各リソースはかなり保守的 & 過剰でした。 (移行後の性能劣化が怖かったため、EC2 時代と比較し、1.5 倍のバッファを積むなど... etc) コスト増大したグラフ その結果、 去年と比較して、コストが倍以上に跳

                                                                    EKS環境下でコストが増大する事例とfreeeのアプローチ - freee Developers Hub
                                                                  • オブザーバビリティ(可観測性)とは何か?を学べる「Distributed Systems Observability」を読んだ - kakakakakku blog

                                                                    2019年頃から「オブザーバビリティ (Observability)」もしくは「可観測性」という言葉をよく聞くようになった(本記事では「オブザーバビリティ」という表記に統一する).「マイクロサービス」と同じように「バズワード」の側面があり「オブザーバビリティとは何か?」という質問に対して様々な回答が考えられると思う. 今回は「オブザーバビリティ」の理解を深めるために「Distributed Systems Observability」を読んだ.本書は O'Reilly Media で読むこともできるけど,Humio のサイトから無料でダウンロードすることもできる(メールアドレス登録は必要).著者は Cindy Sridharan となり,肩書は「Distributed Systems Engineer」と書いてあった. www.humio.com 目次 本書には「オブザーバビリティ」をテー

                                                                      オブザーバビリティ(可観測性)とは何か?を学べる「Distributed Systems Observability」を読んだ - kakakakakku blog
                                                                    • SRE NEXT 2020で「サイト信頼性エンジニアリングの原則」というタイトルで登壇してきました #srenext - YAMAGUCHI::weblog

                                                                      はじめに こんにちは、Stackdriver担当者です。先週の土曜日に豊洲フロントで開催されたSRE NEXT 2020に登壇者として参加してきました。 sre-next.dev どのセッションもすでにSREプラクティスを実践して試されているお話を聞けて、DevOpsの実践方法としてのSRE(Site Reliability Engineering)の広がりを感じられる素晴らしいカンファレンスだったと思います。 SRE サイトリライアビリティエンジニアリング ―Googleの信頼性を支えるエンジニアリングチーム 作者:出版社/メーカー: オライリージャパン発売日: 2017/08/12メディア: 単行本(ソフトカバー) 自分のセッションについて sre-next.dev 自分のセッションは「サイト信頼性エンジニアリングの原則」というタイトルでの発表でした。資料は諸事情で一般公開できないので

                                                                        SRE NEXT 2020で「サイト信頼性エンジニアリングの原則」というタイトルで登壇してきました #srenext - YAMAGUCHI::weblog
                                                                      • ZOZOTOWN「おすすめアイテム」を支える推薦システム基盤 - ZOZO TECH BLOG

                                                                        はじめに こんにちは。SRE部MLOpsチームの田島(@tap1ma)です。 現在、ZOZOTOWNの「おすすめアイテム」に使われていたアイテム推薦ロジックを刷新するプロジェクトを進めています。既に一部のユーザに向けて新しいアイテム推薦ロジックを使った「おすすめアイテム」の配信を開始しています。その刷新に伴い推薦システムのインフラ基盤から新しく構築したので、本記事ではその基盤について解説したいと思います。 目次 はじめに 目次 「おすすめアイテム」とは 新しい推薦ロジック Recommendations AIを用いた推薦ロジック ZOZO研究所によって独自で開発された推薦ロジック 新しい推薦システム 推薦システムの処理の流れ システム構成 新しい推薦システムで工夫したポイント Bigtableのパフォーマンス改善 アイテム推薦APIのPodの安全停止 ZOZO研究所APIのキャッシュ戦略

                                                                          ZOZOTOWN「おすすめアイテム」を支える推薦システム基盤 - ZOZO TECH BLOG
                                                                        • Backlogのコードメンテナンス性を向上させるために気をつけたこと【Backlog Play化プロジェクト】 | Backlogブログ

                                                                          ヌーラボの江口です。約8年間Backlogの開発を担当しており、BacklogをJavaからScala / Play Frameworkに移行するプロジェクトには最初から最後まで関わりました(プロジェクトの概要は時系列でみる!4年の歳月をかけてPlay Frameworkで「大規模リプレイス」した話をご覧ください)。 本記事では、BacklogのScala / Play Framework化プロジェクトで「Backlogのサーバーサイドを進化させる“土台”を作る」をテーマに、どのようにBacklogのアーキテクチャを設計・実装したのかご紹介します。 はじめに 私は2012年の入社以来、Backlogの開発を担当しています。Backlogは10年以上続くサービスであるため、度重なる機能追加や修正を行うことで複雑化し、日頃開発をする上で様々な問題を感じていました。 今回のBacklogのSca

                                                                            Backlogのコードメンテナンス性を向上させるために気をつけたこと【Backlog Play化プロジェクト】 | Backlogブログ
                                                                          • WEARにおけるKubernetes導入と改善の歩み - ZOZO TECH BLOG

                                                                            はじめに こんにちは。ブランドソリューション開発本部 WEAR部 SREの和田(@wadason)です。普段は「ファッションコーディネートアプリ WEAR」のSREとしてクラウドの運用やリプレイスをおこなっています。 WEARはサービス開始から10年が経ち、クラウドやオンプレミスを含む大小様々なシステムが稼働しています。アプリケーションを動かすための基盤にはAmazon ECSのようなコンテナを前提としたものから、オンプレミスのAPIやBatchを動かすIISまで幅広く扱っています。そうした中で、約1年前にSREチームが結成され、技術負債の脱却やクラウドを中心としたインフラの運用を行なってきました。当初取り組んでいた大規模なリプレイス案件も落ち着き、チームメンバーが増えてきたので、現在では分散した技術スタックをKubernetesへ統一するリプレイスプロジェクトを開始しています。 本記事で

                                                                              WEARにおけるKubernetes導入と改善の歩み - ZOZO TECH BLOG
                                                                            • LIFULLが主要サービスの(ほぼ)全てをKubernetesに移行するまで - LIFULL Creators Blog

                                                                              技術開発部の相原です。好きな --feature-gates はServiceTopologyです。 この記事はLIFULLアドベントカレンダーの16日目です。 去年のエントリではIstio を本番環境に導入するまでと題して、私のチームが進めているアプリケーション実行基盤刷新プロジェクトでのIstioの導入についてお伝えしました。 移行に至るまでの経緯などはそのエントリをご覧ください。 あれからしばらくが経ち、ようやく主要サービスの(ほぼ)全てをKubernetesに移行することができましたので今回は移行を実現するまでに行った取り組みを紹介したいと思います。 移行にあたってやったこと 健全化 構成の見直し アプリケーションサーバの見直し Containerize SIGTERMへの対応 環境ごとの値を外から与えられるように 可観測性の向上 Prometheus Exporter実装による可

                                                                                LIFULLが主要サービスの(ほぼ)全てをKubernetesに移行するまで - LIFULL Creators Blog
                                                                              • KubernetesでRollingUpdateするためのPodの安全な終了 | SIOS Tech. Lab

                                                                                ◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました 生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!! https://tech-lab.connpass.com/event/315703/ Pod終了までのシーケンスPodが終了するためのシーケンスは以下のようになります。 kubetctlが、Podを終了するためのリクエストをAPI Serverに送信する。kubeletが、Pod終了のリクエストをAP

                                                                                  KubernetesでRollingUpdateするためのPodの安全な終了 | SIOS Tech. Lab
                                                                                • Go 1.16のsignal.NotifyContext() | フューチャー技術ブログ

                                                                                  Go 1.16リリース記念連載の最終回はsignal.NotifyContext()です。 ご存知のように、Go 1.7でcontext.Contextが入ってから、少しずついろいろなAPIがContext対応になりました。 1.7 netのDialerがDialContext()メソッドを追加 net/httpのhttp.RequestがContext()とWithContext()メソッドを追加。 os/execがCommandContextを追加 1.8 database/sqlが大幅にcontext.Context対応を追加 net/httpのhttp.ServerがShutdown()を追加 netにcontext.Contextに対応したリゾルバーを追加 1.13 net/httpのNewRequestWithContextと、Request.Clone()が追加 外部へのネッ

                                                                                    Go 1.16のsignal.NotifyContext() | フューチャー技術ブログ