タグ

ブックマーク / blog.yuuk.io (8)

  • ウェブアプリケーション開発に新言語を採用したときにインフラで考えたこと - ゆううきブログ

    この文章は、サーバサイドのウェブアプリケーション開発において、社内実績の少ない新しい言語を採用したときにインフラ面で考慮したことを社内向けにまとめたものです。 はてなでは、長らくPerlでウェブアプリケーション開発を続けてきた一方、ここ数年で社内でScalaまたはGoの採用事例も増えてきました。 今後開発が始まるプロダクトにおいても、PerlScalaGoもしくは他の言語を採用するかどうかを開発開始時に選ぶことになるでしょう。 新言語を採用するときに、考慮すべきことの一つとして、「インフラ」への影響があります。 新言語に関する雑談をしていると、ウェブアプリケーションエンジニアに「インフラ」への影響について聞かれます。 もしくは、ウェブオペレーションエンジニアから考慮するポイントを伝えることもあります。 ScalaGo以外に、Node.jsやサーバサイドSwiftはどうかというのも雑談

    ウェブアプリケーション開発に新言語を採用したときにインフラで考えたこと - ゆううきブログ
    nobuoka
    nobuoka 2016/03/03
    インフラ側ではこういうこと考えるんだなー
  • 2015年Webサーバアーキテクチャ序論 - ゆううきブログ

    2023年03月31日追記:この記事を基に、@sadnessOjisanさんより、コードレベルにより踏み込んだ、かつ、グリーンスレッドベースの新しいWebサーバアーキテクチャも含めて整理された記事 Webサーバーアーキテクチャ進化論2023 | blog.ojisan.io が公開されました。 主に新卒のWebエンジニア向けに、古典的なWebサーバアーキテクチャを学ぶ道のりと代表的な実装モデルの概要を紹介します。 この辺りの話題がWeb界隈で流行っていたのは数年以上前というイメージですが、Webサービスは相変わらずWebサーバの上で動いているので、流行り廃り関係なく学ぶべき内容だと思っています。 また、HTTP/2がいよいよRFC化し、既にh2oやtrusterdなどのHTTP/2のサーバ実装があり、今後Webサーバアーキテクチャを再訪することが増えるような気がしています。 ところが、We

    2015年Webサーバアーキテクチャ序論 - ゆううきブログ
  • パフォーマンスの観点からみるDockerの仕組みと性能検証 - ゆううきブログ

    Docker Meetup Tokyo #4 にて「Docker Performance on Web Application」という題で発表しました。 発表内容は、下記の2つの記事をまとめたものに加えて、最新バージョンの Docker 1.4 での ISUCON ベンチマークと、storage-driver として Device Mapper + Docker 1.4 から実装された OverlayFS を試しました。 Dockerは速いのか?Dockerのパフォーマンスについて重要なことは何か? - ゆううきブログ ISUCONでNginxMySQLDocker化したときのパフォーマンス - ゆううきブログ この記事は、上記2記事で、いくつか難しいポイントがあったとフィードバックをいただいたので、Docker Meetup での発表内容を少し詳しめに説明したものになります。 1.

    パフォーマンスの観点からみるDockerの仕組みと性能検証 - ゆううきブログ
    nobuoka
    nobuoka 2015/01/19
    Docker Engine の仕組みが説明されていて勉強になる!
  • Docker を用いた rpm / deb パッケージ作成の継続的インテグレーション - ゆううきブログ

    サーバ管理ツールのエージェント みたいなソフトウェアをインストールしやすくするために、rpm / deb パッケージを作りたい。 しかし、rpm / deb パッケージ化するためには、それぞれ CentOS(RedHat)、Debian(Ubuntu) 環境でパッケージ化することになる。 社内ではこれまでパッケージ化の専用ホストがいて、そこで spec ファイルや init スクリプトを置いて rpmbuild コマンドとか debuild コマンドを叩いてパッケージを作成していた。 さらに、アプリケーションエンジニアからインフラエンジニアに依頼するという形をとっていた。 この方法の問題点として、以下の3つがある。 spec ファイルや init スクリプトなどをプロジェクトの Git リポジトリで管理しづらい。つまり、レビューとかがやりにくい。 リリースフローを自動化しづらい。具体的には

    Docker を用いた rpm / deb パッケージ作成の継続的インテグレーション - ゆううきブログ
  • なにもわからないところから始めるJVMモニタリング #jvmcasual - ゆううきブログ

    JVM Operation Casual Talks で発表してきた。 なんでJVMでしゃべってたのか当によくわからない。 JVM Operation Casual Talks : ATND とにかく雑な発表したという記憶しかない。 NewRelic のトップページにでかでかとおっさんでてきて印象悪いとかそういうの。 JVM とかどうでもよくて mackerel: 新しいアプリケーションパフォーマンスマネジメント にしか興味がなかった。 Java Performance (Java Series) 作者: Charlie Hunt,Binu John出版社/メーカー: Addison-Wesley Professional発売日: 2011/10/04メディア: Kindle版この商品を含むブログを見る Java Performance: The Definitive Guide 作者:

    なにもわからないところから始めるJVMモニタリング #jvmcasual - ゆううきブログ
    nobuoka
    nobuoka 2014/04/08
    JVM 運用学びたい。
  • Docker + Mesos + Marathon + Graphite + Fluentd + Sensuを組み合わせたデプロイ管理ツールの話 - ゆううきブログ

    開発合宿でDevOps界隈やモニタリング界隈で流行りのツールを組み合わせてBlue Green Deploymentできる何かを作りました。 同じチームで開発したid:shiba_yu36 先生やid:wtatsuru 先生が既にブログを書いてますが、自分の視点で書いてみます。(13/12/24追記: より詳細な内容が新規に書かれたのでリンク先を入れ替えました) Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み - $shibayu36->blog; Docker コンテナにアプリケーションを立てて Graphite でいい感じに可視化するまで - wtatsuru's blog 僕は主に、各ツールから得られる情報をまとめて管理し、デプロイを実行するデプロイ管理ツールを作成していましたので、それについて書きます。 普段は運用の修行をして

    Docker + Mesos + Marathon + Graphite + Fluentd + Sensuを組み合わせたデプロイ管理ツールの話 - ゆううきブログ
    nobuoka
    nobuoka 2013/12/23
    全体フローとアーキテクチャの図がわかりやすい!!!
  • 大学院の修了に失敗し、新卒入社にも失敗しました - ゆううきブログ

    エントリは中退を煽るものでは決してありません。 先月、大学院を中退しました。 コンテンツになりたいがために中退したととってもらってもよいですし、何か深遠な理由があって中退したととってもらってもよいです。 中退するにあたり、相談に乗ってくださった方々にはとても感謝しています。 相談に乗っていただいた方のだれひとりにも中退を勧められることはありませんでしたが、それでも気持ちは変わらなかったので中退することにしました。 中退の理由は、単位が足りないとか研究に嫌気がさした(最終的には嫌気がさしました)というのではなくて、学費の対価としての大学院や研究室のサービス内容に不満しかなかったからです。 まずいラーメン屋には行かないのと質的には同じ理由だと思います。 まずい程度ならまだいいですが、まず過ぎて気分が悪くなるのにべ続けないといけない感じでした。 最初は確かにあったはずの研究するモチベーシ

    大学院の修了に失敗し、新卒入社にも失敗しました - ゆううきブログ
    nobuoka
    nobuoka 2013/11/20
    研究室って教授や准教授次第って感じなので最悪な研究室に入ってしまうとつらい。
  • Test::Classのテストメソッド内でsubtestを使うときに起こる問題の原因と対策 - ゆううきブログ

    id:nobuokaさんがこういう感じの問題に直面していたので調査してみた。 Test::Class と subtest を組み合わせた場合に、とあるテストメソッドの subtest 内で例外が発生してしまうと、それ以降の別のテストメソッドの subtest も全部失敗してしまうっぽい? - えっちなのはいけないと思います 結論から言うと、subtest内で例外が送出されたときにTest::Classのテストメソッドが例外をキャッチしてしまい、Test::Builderインスタンスが初期化されないまま次のテストメソッドを実行することが原因である。 テストメソッドt2を呼び出した時に具体的に失敗する箇所は以下のコード。 Test::Builderインスタンスの'Child_Name'メンバが初期化されていないから例外が投げられるようにみえる。 package Test::Builder; #

    Test::Classのテストメソッド内でsubtestを使うときに起こる問題の原因と対策 - ゆううきブログ
    nobuoka
    nobuoka 2013/07/14
    問題の原因と対策。
  • 1