2018年10月29日のブックマーク (7件)

  • goroutineはなぜ軽量なのか - Carpe Diem

    概要 以前の記事で christina04.hatenablog.com Goはスレッドよりはるかに軽量なgoroutineでC10K問題を解決する、という話をしましたが、goroutineが軽量なのはなぜか?という理由を深掘りしたことがなかったのでしてみました。 環境 golang 1.11.1 Darwin 17.7.0 軽量と呼ばれる理由は2つ 大きく分けると以下の2つのポイントがあります スレッドに比べてメモリ使用量が低い スイッチングコストが低い それぞれ説明していきます。 goroutineがスレッドに比べてメモリ使用量が低いのはなぜか スタックとヒープのメモリの使い方を理解すると分かります。 ヒープはメモリの下層、プログラムコードのすぐ上にあり、上に向かって成長します。一方スタックは仮想アドレス空間の一番上にあり、徐々に下に成長していきます。 ref: イベントループなしでの

    goroutineはなぜ軽量なのか - Carpe Diem
    toshikish
    toshikish 2018/10/29
  • Herokuで成功させるサービス開発 - ボクココ

    ページ版執筆にあたって ども、@kimihom です。 技術書典5で販売した書籍の記事版として公開します。より多くの方へ Heroku でサービス開発を成功させていただきたいという思いから、ボクココの固定ページとして無償公開するに至りました。 なお、記事は、Heroku 社から認められていない非公式の記事となります。予めご了承ください。 はじめに Happy Coding! 記事はWebサービス開発を気で成功させたいと考えているエンジニア向けに、サービス開発とHerokuの運用に関して記しています。サービス開発を成功させるには、限られた時間の中で注力すべき内容を見極め、サービスの差別化を推し進めることが重要です。ユーザーはなぜ他の多くのサービスではなくて、あなたが作ったサービスを使うのか。その問いに自信を持って答えられるようにしなければなりません。その状況の中で、どのテクノロジーを採

    Herokuで成功させるサービス開発 - ボクココ
    toshikish
    toshikish 2018/10/29
  • JavaScript エンジニア向け: 知識ゼロから tensorflow.js で機械学習入門 - mizchi's blog

    この週末で機械学習を勉強した結果として、JavaScript エンジニア向けにまとめてみる。 自分が数式見て何もわからん…となったので、できるだけ動いてるコードで説明する。動いてるコードみてから数式見たら、多少気持ちがわかる感じになった。 最初に断っておくが、特にJSを使いたい理由がないなら python で keras 使ったほうがいいと思う。tensorflow.js が生きる部分もあるが、学習段階ではそこまで関係ないため。 追記: 最初 0 < a < 1.0 0 < b < 1.0 で三角関数 Math.sin をとっていて、これだと三角関数の一部の値しか使っておらず、線形に近似できそうな値を吐いていたので、次のように変更して、データも更新した。 // 修正前 const fn = (a, b) => { const n = Math.cos(a) * b + Math.sin(b

    JavaScript エンジニア向け: 知識ゼロから tensorflow.js で機械学習入門 - mizchi's blog
    toshikish
    toshikish 2018/10/29
  • システム負荷を表示するtloadコマンドの使い方 | マイナビニュース

    HowtoForgeに10月25日(米国時間)に掲載された記事「Linux tload Command Tutorial for Beginners (with Examples)」が、システム負荷平均を表示するtloadコマンドの使い方を伝えた。tloadはシステム負荷をターミナルにCUIでグラフィカルに表示するコマンドで、使い方はtloadと実行するだけ。ターミナルにシステム負荷がCUIベースのグラフとして表示されるようになる。 tloadコマンドの実行サンプル Ubuntu 18.04 LTS tloadコマンドは-sでスケールを指定することができるほか、-dで更新頻度を指定することができる。 物理的なシステムコンソールやssh経由でログインしてしか操作することのできないサーバをモニタリングする場合など、tloadはシステム負荷の状況を表示するシンプルな方法として利用できる。GUI

    システム負荷を表示するtloadコマンドの使い方 | マイナビニュース
    toshikish
    toshikish 2018/10/29
  • AWS X-Ray による ISUCON8 本選問題の解析 - 酒日記 はてな支店

    ISUCON8 の選問題は、競技者がコントロールできない外部 API 呼び出しを多数含んだ出題内容でした。 講評では、 サービスの特性を適切に分析した上で、まとめるところはまとめたり、遅延させるところは遅延させるなど ……とさらっと書かれていますが、実際そんなことを短時間で分析することは可能なのかよ!という話題が競技後の懇親会でもあったので、それ AWS X-Ray でできるよ、というエントリをまとめておきたいと思います。 今回の解析は Perl 版の初期実装に対して行ったものですが、なぜ Perl かというと AWS の公式 SDK にない X-Ray 関連の CPAN モジュールを自分が書いているので、その宣伝も兼ねています。(blogエントリ書いてなかった) AWS::XRay Plack::Middleware::XRay Devel::KYTProf::Logger::XRay

    AWS X-Ray による ISUCON8 本選問題の解析 - 酒日記 はてな支店
    toshikish
    toshikish 2018/10/29
  • モジュールの構造化 · An Introduction to Elm

    Webアプリケーションの構造化 前のページで述べたように、すべてのモジュールはその中核となる型のまわりに組み立てられるべきです。ブログ投稿のWebアプリケーションを作っているとすると、私なら次のようなモジュール構成で作り始めると思います。 Main Page.Home Page.Search Page.Author Model型を中心にして、それぞれのページに対応するモジュールがあります。これらのモジュールはElmアーキテクチャに従っており、Modelとinit、update、view、それから必要に応じて作られた補助関数からなります。ここで、モジュールがどんどん長くなり続けるのに任せていますが、そのまま必要な型と関数を追加し続けます。もし自分がたくさんの補助関数を持つカスタム型を作ったことに気付いたら、そのとき初めてそれを別のモジュールへと切り出しても構わないといえるでしょう。 いくつか

    toshikish
    toshikish 2018/10/29
  • 【漫画】警察官をクビになった話 - 警察官クビになってからブログ

    【追記】 読んで下さりありがとうございました。 こちらは私が初めて描いた漫画作品になります。 1年後。出版の機会を頂きました。 300Pすべて描き下ろし。 こちらの漫画よりもっと奥の深い作品に仕上げました。。 恐縮ですが多くの仲間の思いを背負い 作品を完全な形に仕上げました。 今後も心を込めた作品を作り続けますので 作品を手に取って応援してくだされば幸いです。 警察官をクビになった話 作者:ハルオサン 発売日: 2020/03/17 メディア: 単行

    【漫画】警察官をクビになった話 - 警察官クビになってからブログ
    toshikish
    toshikish 2018/10/29