タグ

ブックマーク / medium.com (9)

  • Terraformを用いた既存マイクロサービスインフラのコード化とその運用

    FiNC Technologies(以下FiNC)で SREグループのマネージャーをしている@ryok6tです。 今回は Infrastructure as Code(IaC)のお話です。 今や IaC、すなわちインフラの構成管理はコードで、というのが当たり前になっています。 しかし、以前のFiNC では全くインフラがコード管理されておらず、約50のマイクロサービスが持つ数千のAWSリソースが全て手動で作成された状態でした。 これにより生じた多くの問題に対処するため、Terraformを導入し、現在ではマイクロサービスごとに独立したstateを持った状態でコード管理されています。 この記事では、 既にある大量のインフラを、後から Terraform 管理下に入れた方法マイクロサービス x Terraform の運用Terraform の CI の運用などについて書いていきます。 *今回は「

    Terraformを用いた既存マイクロサービスインフラのコード化とその運用
  • Go言語のio.Pipeでファイルを効率よくアップロードする方法

    パイプ(土管)をGo言語でも楽しめるはじめに前回はGo言語のmime/multipartパッケージによるファイルのアップロードを見ましたが、パフォーマンスの特徴にはあまり触れませんでした。 大規模なETLジョブや、制限の厳しいサーバーレスの環境などでは、ファイルを扱うプログラムのリソースを慎重に考える必要があります。記事ではメモリ使用量を大幅に減らすio.Pipeの使い方を見ていきます。 全てのコードはサンプルレポジトリにあります。 同期処理にある問題前回のコードをもう一度見てパフォーマンスを考えてみましょう。 // ファイルを開く file, _ := os.Open(filename) // リクエストボディのデータを受け取るio.Writerを生成する。 body := &bytes.Buffer{} // データのmultipartエンコーディングを管理するmultipart.W

    Go言語のio.Pipeでファイルを効率よくアップロードする方法
  • うわっ、私のサイトBootstrapくさすぎ!? たった数文字変えるだけでBootstrapのくさみが抜ける7つのCSSテクニック。

    なんか、このサイトBootstrapくさい。そう感じることはありませんか? その理由はズバリ、欧文ベースでつくられたフレームワークを文字構造の違う日語で適用した際に不都合が出てしまっているからです。 それらが醸し出す違和感を放っておくと、Bootstrapくささを生み出す大きな原因になってしまいます。 そもそもの問題として、欧文と比較して和文は文字の要素が多く、文字自体のリズムも少ないため、どうしても複雑で単調に見えてしまいます。 しかし、和文だからといってあきらめることはありません。BootstrapCSSを少しだけ変えるだけでグッと見た目がよくなる隠し味をご紹介します。 1. line-heightで行間にゆとりを。明朝やゴシックなど、フォントの種類が言葉の印象を表すように、文字の行間は読みやすさ、文章全体の雰囲気を左右します。 欧文をベースに設計されたBootstrapをそのまま

    うわっ、私のサイトBootstrapくさすぎ!? たった数文字変えるだけでBootstrapのくさみが抜ける7つのCSSテクニック。
    fumiyas
    fumiyas 2019/05/02
  • 女の子らしくコードを書く、ということ – Medium Japan – Medium

    この記事の元となっているプレゼンテーションは、オークランドで開催された AlterConf のものです。テーマはジェンダー・ダイバーシティについてでした。同カンファレンスでは、人種差別、障害、階級差別など多様なテーマについてのプレゼンテーションが行われていました。 Always (訳注:女性用品のブランド)の広告で、成人の男女に「走る・叩く・投げる」を女の子らしくやってもらう、というものがあります。頼まれた人々がそれをおこなう様子は、なよなよしくてひどいものでした。その広告では、次に、同じことを若い女の子達に頼んでみます。すると、彼女達がそれをおこなう様子はまさに「精一杯・一生懸命」でした。その後、「女の子らしくやる」ってどういうことかな?と尋ねてみると、女の子の1人がこう返します。「自分に出せる全力でやる、っていうことよ」。 残念ながら、ある程度年をとると、「女の子らしく何かをする」とい

    女の子らしくコードを書く、ということ – Medium Japan – Medium
  • Vueを昔触った後Reactをどっぷり触ってもう一回Vueを触ってReactに戻って得た感想

    最近ReactVueをどっちも触る機会があったり、「ReactVueどう選定するの?」という問いを投げられ、スッと答えられなかったな、と後悔があったりしていたので、Vueを触って得られた感想をまとめてみる。 結論としてなにか新しいことを発見したというものではなく、世間で言われている事を自分なりに再構築しただけの結論になったと思う。 TL; DRVueからは全体的に優しさ(Gentleさ)を感じる事が多く、良い点だと感じた大規模になるときReactの堅牢さは魅力的。Vueが大きくなった時に支えられ設計が出来るかは個人的には懐疑的。「こうだったらVue、こうだったらReact」みたいな分岐点があるというわけではないので、最終的には好みになってくると思う。ぞうさんが好きかきりんさんが好きか。これまでのフレームワーク遍歴今回の話をするにあたって、僕と各フレームワークの付き合いをまとめておくと、

  • Don’t use Go’s default HTTP client (in production)

    Writing Go programs that talk to services over HTTP is easy and fun. I’ve written numerous API client packages and I find it an enjoyable task. However, I have run into a pitfall that is easy to fall into and can crash your program very quickly: the default HTTP client. TL;DR: Go’s http package doesn’t specify request timeouts by default, allowing services to hijack your goroutines. Always specify

  • 物理サーバを選定する際のポイント – Eureka Engineering – Medium

    Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.

    物理サーバを選定する際のポイント – Eureka Engineering – Medium
    fumiyas
    fumiyas 2016/01/30
  • Achieving type generic functions in Go, without using reflections

    Achieving type generic functions in Go, without using reflections Of course we all know that Go does not support generic types, and complaining about it would be a fruitless act (for now). Aside from its design’s pros/cons, I must admit that there are situations that we need functions which are almost same but only differ in types. The larger our programs become, the more likely we want such funct

    Achieving type generic functions in Go, without using reflections
  • Structuring Tests in Go

    The Purpose of TestsPeople argue over testing style, whether to use TDD or BDD, or whether tests are even useful at all. Before I get into how I structure my tests in Go, I should explain how I see tests. Tests should be 2 things: Self-containedEasily reproducibleThat’s it. They should be self-contained so that changing one part of your test suite doesn’t drastically affect another part. They shou

    Structuring Tests in Go
  • 1