タグ

budougumi0617のブックマーク (1,695)

  • App Engine VS Cloud Run

    Cloud Run CPU 0.08 ~ 8 Core (2nd gen は最小 0.5~) Memory 128 MiB ~ 32 GiB (2nd gen は最小 512MiB~) Deploy App Engine は Deploy (gcloud app deploy) を実行すると Cloud Build が暗黙的に動いて Deploy が行われるが、これがなかなか時間がかかる。 開発環境だと CI でとりあえず main branch に merge されたら、Deploy したりするけど、Deploy を Skip してもよいような時でも CI 回してると Deploy を待つことになって、ちょっとめんどうに感じる。 更にこの仕組みは成果物は Deploy しないと生まれないので、CI と CDを分離しづらい。 Cloud Run は Container Registry a

    App Engine VS Cloud Run
  • 料率計算における小数点数の扱いについて | メルカリエンジニアリング

    Merpay Advent Calendar 2020 の3日目です。 メルペイでバックエンドエンジニアをしている iwata です。 メルペイスマート払いの開発をしている Credit Design というチームに所属しています。 私は2019年の入社以来、「メルペイスマート払い(定額払い)」(以下、定額払い)の開発を担当しており、今年の7月にようやくリリースすることができました。 この定額払いの手数料計算のために、「1万分の1を1とする単位」であるベーシスポイントを扱うGo言語のパッケージ go.mercari.io/go-bps を作成しました。 ちょうど1年前に、 mercari.go #12 で「料率計算における小数の扱いについて」として発表しましたが、当時はオープンソースとして公開していませんでした。 今回オープンソースとして公開しましたので、改めてパッケージを紹介します。 料

    料率計算における小数点数の扱いについて | メルカリエンジニアリング
  • Announcing HashiCorp Terraform 0.14 General Availability

    PackerBuild and manage images as code​​​​‌‍​‍​‍‌‍‌​‍‌‍‍‌‌‍‌‌‍‍‌‌‍‍​‍​‍​‍‍​‍​‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍​‍​‍​​‍​‍‌‍‍​‌​‍‌‍‌‌‌‍‌‍​‍​‍​‍‍​‍​‍‌‍‍​‌‌​‌‌​‌​​‌​​‍‍​‍​‍‌‍‍​‌‍​‌‌​‌‍‍​‌‍‍‌‌‍​‌‍‌​‍‌​​​‍‍‌‍​‌‌‍‌​‌‍‌‌‍‍‌‌‍‍​‍‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍‌‍‌‌‌‍‌​‌‍‍‌‌‌​‌‍‌​‍​‍‌‍‍‌‌‌​‌‍‌‌‌‍‌‌‌‌‌​‌‍‌‌​​‌‍‌‌‌​​‍‌‌‍‌​‌‍‌‍‌‍

    Announcing HashiCorp Terraform 0.14 General Availability
  • Kubernetes 1.20からDockerが非推奨になる理由 - inductor's blog

    追記: Kubernetes側での公式のアナウンスが2出ているのでこちらも合わせてご覧ください。 kubernetes.io kubernetes.io Kubernetesコミュニティを眺めていたら、やたらめったら色んな人達が1.20 RCのリリースノート引っ張り出して「Dockerが非推奨になるからちゃんと対策を検討してね!!!」とアナウンスをしていて、挙げ句SIG Contributexではその対策に追われてバタバタしている自体を観測しました。 CNCF Ambassador Slackでもだいぶ燃え上がっていて、見かねて dev.to に記事を投稿したのでそれをかんたんに日語にまとめてみようと思います。英語のほうはこちらをご覧ください。 dev.to 追記2. 影響範囲を知りたい場合はまずこちらをお読みください blog.inductor.me 追記2. 影響範囲を知りたい場合

    Kubernetes 1.20からDockerが非推奨になる理由 - inductor's blog
  • re:Invent2020で発表されたAWS Protonとはなにか? - How elegant the tech world is...!

    はじめに ご無沙汰しております。 最近は多忙でブログ書けていませんでしたが、今回は事例紹介やプラクティスのご紹介ではなく、re:Invent2020のAndy Jassy's Keynoteで発表されたAWS Protonというサービスについて、サービス概要や使い方、メリットなどをご紹介できればと思います。 最初サービス内容を聞いたとき、僕自身も「???」な状態だったので、同じように疑問をお持ちの読者の皆様へ理解の助けになればと思います。 注意事項 ブログは2020-12-02時点の情報になります。 また記載時点ではAWS Protonはパブリックプレビュー状態であり、GA時に内容が変わる可能性がある点だけご留意いただければと思います。 AWS Protonとは? 誤解を恐れずに言ってしまえば、コンテナやサーバーレスアプリケーションからなるサービス構成を「統一的に管理・運用」するためのサ

    re:Invent2020で発表されたAWS Protonとはなにか? - How elegant the tech world is...!
  • Obsidian+GitHubを使ったメモ環境を整えた · kapieciiのブログ

    Nov 29, 2020 11:25 · 2543 words · 6 minute read エディタ ライフハック 最近、購読している複数のPodcastObsidianが話題に上がっていました。 私はメモやノートを残すことが好きなので、「メモの統合開発環境」とも言われるObsidianを使ってみました。 言及されていたPodcast ごりゅごcast 最近の読書メモとテキストエディタの使い道 Rebuild.fm 287: Lost Technology (higepon) 私の現在のメモ環境はこちら EvernoteOnenoteからGoogle DocsとGoogle Keepに乗り換えた理由 目次 公式URL インストール 使ってみた Obsidian 画面分割機能 Graph view機能 コードブロック ブラウザからノートを確認する(GitHub) スマホからノートを確

    budougumi0617
    budougumi0617 2020/11/29
    いつもVSCodeでmarkdownにメモつけていたけれど、これはよいかもしれない
  • Reqres - A hosted REST-API ready to respond to your AJAX requests

    It’s all in the details Hosted on Heroku Which means 99.99% Uptime SLA. All you need is the base URL, and you're away: https://reqres.in/api/ The API is CORS enabled, so you can make requests right from the browser, no matter what domain, or even from somewhere like JSFiddle or JSBin. Language agnostic A generic API that conforms to REST principles and accepts a content type of application/json An

  • [AWS Black Belt Online Seminar] 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説 資料及び QA 公開 | Amazon Web Services

    Amazon Web Services ブログ [AWS Black Belt Online Seminar] 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説 資料及び QA 公開 先日 (2020/11/18) 開催しました AWS Black Belt Online Seminar「形で考えるサーバーレス設計 サーバーレスユースケースパターン解説 」の資料を公開しました。当日、参加者の皆様から頂いた QA の一部についても共有しております。 20201118 AWS Black Belt Online Seminar 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説 AWS クラウドサービス活用資料集(すべての過去資料が閲覧できます) Q. 業務系APIグループ企業間APIのユースケースですが、LambdaとRDSの組み合わせはコネクションの問題があり

    [AWS Black Belt Online Seminar] 形で考えるサーバーレス設計 サーバーレスユースケースパターン解説 資料及び QA 公開 | Amazon Web Services
    budougumi0617
    budougumi0617 2020/11/27
    添付スライドに利用サービスや実装しているパターンの丁寧な説明があってすごい勉強になる
  • Goquiz 1

    twitterで出したクイズのうちの1つが好評だったのと、自分としても面白いところだったので解説を書いておくことにしました。 問題 次のGo言語のコードを実行するとどうなるでしょうか?(正解は記事の一番下に書きます) package main import ( "fmt" ) type X struct { v *int } func main() { var p *X = &X{} fmt.Println(*p.v) } https://play.golang.org/p/EGRcWB_GBN4 で実際に動かすことができます 選択肢 nilと表示される build(compile) error panic 簡潔な解説 var p *X = &X{}と書いたとき、composite literal X{}で指定されていないフィールドvはゼロ値で初期化されますので、*int型のゼロ値であるn

    Goquiz 1
  • IaCを意識したCLI開発のエッセンス - エムスリーテックブログ

    エムスリーエンジニアリンググループ AI機械学習チームの中村(@po3rin) です。 好きな言語はGo仕事では主に検索周りを担当しています。 エムスリーの検索基盤ではElasticsearchを利用しています。社内で積極的に検索改善が行われており複数のIndexが管理がしづらいという問題がありました。 そこで定義ファイルからIndexの状態を冪等性を持って同期させるeskeeperというOSSを作りました。 この経験から「定義ファイルで〇〇を宣言的に管理する系のツール」を作る時のちょっとしたコツを紹介します。タイトルの通り今回はIaCツールを作るのではなくIaCのプラクティスを意識してCLIを作るお話になるのでご了承ください。 なぜeskeeperを作るに至ったか チームでのElasticsearchの運用と課題 eskeeperとは IaCを意識したCLI開発のエッセンス コマンド

    IaCを意識したCLI開発のエッセンス - エムスリーテックブログ
  • 【翻訳記事】TDD: 目的と実践 - ブロッコリーのブログ

    目次 目次 はじめに TDD: 目的と実践 TDDとは何ですか? TDDの意図 TDDはTestingですか? TDDはユニットテストを書くことですか? TDDだけで良いのでしょうか? TDDは良い設計を強要しません 悪いテストはリファクタリングを妨げます なぜ悪評が多いのですか? はじめに 今回は著者人の許可をもらった上で、TDD: 目的と実践(原題は「TDD: Purposes and Practices」)を翻訳したので紹介します。 www.industriallogic.com この記事はIndustrial Logic社のTim Ottingerが書いた記事です。Tim OttingerはClean Codeの執筆にも関わっています。 Clean Code アジャイルソフトウェア達人の技 (アスキードワンゴ) 作者:Robert C.Martin,花井 志生発売日: 2017/

    【翻訳記事】TDD: 目的と実践 - ブロッコリーのブログ
  • Amazon EKSでAWS App Meshを利用してgRPCサーバーを運用する | Recruit Tech Blog

    こんにちは、スタディサプリENGLISH SREグループの横山です。 以前の記事1) スタディサプリENGLISHの基盤をECSからEKSに移行しましたにあるように、先日ついにスタディサプリENGLISHのインフラ基盤をECSからEKSに移行することができました。 記事では、このEKS移行に伴いAWS App Mesh(以下、AppMesh)の導入をしたので、これに関連した話を書いていきたいと思います。 なぜAppMesh導入を検討し始めたか インフラ基盤がECSだった頃、gRPCの負荷分散にEnvoyAmazon ECS Service Discoveryを利用していました。この構成については以下の記事に詳細があります。 EnvoyAmazon ECS Service Discoveryを利用したgRPCの負荷分散 この構成にした当初は、デプロイ時にECS Serviceのローリン

    Amazon EKSでAWS App Meshを利用してgRPCサーバーを運用する | Recruit Tech Blog
  • POSTリクエストを冪等処理可能にするIdempotency-Keyヘッダの提案仕様 - ASnoKaze blog

    はじめに HTTPリクエストには冪等なものと非冪等なものがあります。 仕様上、GETやOPTIONSは冪等であり、同じリクエストであれば何度行っても問題ありません。そのため通信上エラーが起こっても自動的にリトライすることが出来ます。 一方で、POSTリクエストは冪等ではありません。同じリクエストでも複数回行うと、結果が変わってしまいます。投稿や課金APIであれば2重に処理されてしまいます。 POSTリクエスト中にタイムアウトが発生した時に、サーバに処理される前にタイムアウトしたのか、サーバが処理したあとにレスポンスを返そうとしたところでタイムアウトしたのかクライアントは区別できません。そのため、POSTリクエストを一概にリトライすることは出来ません。 そこで、リトライにより複数回同じPOSTリクエストを受け取っても、同じものと識別できるように識別子をHTTPリクエストに付加できるようにする

    POSTリクエストを冪等処理可能にするIdempotency-Keyヘッダの提案仕様 - ASnoKaze blog
  • リアクティブは難しいが役に立つ - kubell Creator's Note

    お久しぶりです、かとじゅん(@j5ik2o)です。テックブログを書くのは何年ぶりか…。 サービスが停止したり応答性が低下すると、お叱りや逆に励ましをいただきますが、エンジニアとして設計レベルからそういった問題に対処するにはどうするか、日々精進しているところですmm。この記事はそういう論点で注目されている「リアクティブ原則」についてまとめてみたいと思います。 それなりのボリュームになってしまったので、時間があるときに読んでいただければと思います。 さて、Linux Foundation内の新たなトップレベルプロジェクトであるReactive Foundationが主催する、Reactive Summit 2020が11月10日にオンラインで開催されたので参加しました。 www.reactivesummit.org 参加されていたスピーカーはLightbendをはじめ、Netflix, Fac

    リアクティブは難しいが役に立つ - kubell Creator's Note
  • LocalStackに向けてTerraformを実行する | フューチャー技術ブログ

    はじめにフューチャーの棚井龍之介です。TIGグループのDXユニットに所属しています。 TerraformはLocalstackに対してもapplyできます。便利な方法なのに日語のサイトが見当たらないので、技術ブログ化しました。 この記事を読むとできるようになること ローカル環境に立ち上げた localstack に向けて、terraform plan/apply/destroy を実行できる LocalStackとTerraformみなさんは、Localstack や Terraform を使っていますか? アプリのローカル環境テストとしてLocalstackを、インフラ構築にTerraformを用いる開発スタイルは、今やそう珍しいものではないと思います。 しかしながら、「ローカル環境のLocalStackに向けて、Terraformを打ち込むことができる」というのは、あまり知られていな

    LocalStackに向けてTerraformを実行する | フューチャー技術ブログ
  • One-liners | Basic | Cheat sheet | Linux Command Library

    $ wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com

    One-liners | Basic | Cheat sheet | Linux Command Library
  • Getting started with go-fuzz

    In this article we introduce go-fuzz, which is an open source fuzz engine for Go applications. We will first show a brief template overview of a typical Go fuzzer and proceeed to using go-fuzz against a well-known open source project. This article is a follow-up of a recent video we did on Go fuzzing that you can find here: In this article we will focus on how to construct a first Go fuzzer for a

  • Making Terraform Provider Development More Accessible

    Sign up for freeGet started in minutes with our cloud products TerraformInfrastructure as code provisioning​​​​‌‍​‍​‍‌‍‌​‍‌‍‍‌‌‍‌‌‍‍‌‌‍‍​‍​‍​‍‍​‍​‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍​‍​‍​​‍​‍‌‍‍​‌​‍‌‍‌‌‌‍‌‍​‍​‍​‍‍​‍​‍‌‍‍​‌‌​‌‌​‌​​‌​​‍‍​‍​‍‌‍‍​‌‍​‌‌​‌‍‍​‌‍‍‌‌‍​‌‍‌​‍‌​​​‍‍‌‍​‌‌‍‌​‌‍‌‌‍‍‌‌‍‍​‍‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍‌‍‌‌‌‍‌​‌‍‍‌‌‌​‌

    Making Terraform Provider Development More Accessible
  • 技術系の境界線 | La Verda Luno

    これは 設計ナイト2020 の感想記事です。 CQRS と GraphQL の話が主な話題でしたが、ディスカッションなどで示唆に富む話を聞けたので、(レポートというよりも)考えたことを書き残しておきます。 発表内容についてはあまり書きませんが、すでに 設計ナイト2020感想 - Qiita と 設計ナイト2020に参加してきました。 | achanBlog という記事があります。 Q&A やディスカッションについても #sekkeinight 付きのツイートを見ると、何が交わされたか把握できると思います。 コンテキスト DDD・CQRS・GraphQL・アーキテクチャの進化戦略などについて深い話(触ってみたレベルでなく実運用等を経たもの)についても興味深かったのですが、サーバー再度にとっての理想的なモデルとフロントエンドの要求が衝突する境界線について考えるきっかけになりました。もしかしてサ

    技術系の境界線 | La Verda Luno
  • 1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary

    自分が所属している会社のメンバーの教育用資料として、それなりの規模のデータを扱う時に前提として意識しておかなければいけないことをざっくりまとめたので、弊社特有の話は除外して公開用に整理してみました。 大規模データ処理、分散処理に慣れている人にとっては今更改めて言うことじゃないだろ、みたいな話ばかりだと思いますが、急激にデータスケールが増大してしまったりすると環境に開発者の意識が追い付かないこともあるかと思います。 そういったケースで参考にできるかもしれません。 弊社は基的にAWSによって運用されているので、AWSを前提にした様なキーワードやサービス名が出てきます。後、句読点があったり無かったりしますが、ご容赦ください。 追記: 社内用の資料の編集なのでかなりハイコンテキストな内容だから誤解するかもしれませんが、これらはそもそもRDBの話ではありません。(関係無くは無いけど) 1000万オ

    1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary