ブックマーク / developer.hatenastaff.com (8)
-
はてなブログでSREをやっているid:cohalzです。 2019年12月頃からid:utgwkkやid:onkとともに、はてなブログにおけるキャッシュ周りの改善を行いました。その結果、次のような成果が得られました。 ブログ記事のキャッシュヒット率が、1日平均で8%から58%に向上 アプリケーションサーバの台数を、以前の半数以下に削減 DBに届くリクエスト数が、以前の3分の2まで減少 レスポンスタイムの平均が、以前の8割まで減少 この記事では、実際にどういった改善を行ったのか、その際に気をつけたことや大変だったことを紹介します。 はてなブログがVarnishを導入した経緯と課題 開発合宿をきっかけに問題が明らかになる 進め方をまず考える ホストのメモリをできるだけたくさん利用する メモリを積んだホストでなぜかレイテンシが悪化 キャッシュが分散しないようVaryヘッダを使う デバイス情報を適
-
チーフエンジニアの id:Songmu です。4月に 新人エンジニア研修を行なった のですが、その際に、﹁インフラを意識したアプリケーションの書き方﹂という講義を担当しました。そこでおこなった講義の内容について整理しながら書き起こしていきたいと思います。 インフラを意識すると何が良いか 業務でWebアプリケーションを扱うと、個人ではなかなか扱えないトラフィックであったりデータ量を扱うことになります。小規模サービスでは考えなくてよかった多くのことを考慮する必要がでてきます。なかなか体験できないことでもあるので、楽しく、やりがいもあります。 また、そういった経験を通して、インフラを意識しコードをかけるスキルを身につけることは、Webエンジニアとしては大きな強みとなります。ISUCONで優勝できるかもしれません*1。 インフラを意識すると何が良いか 〜 中規模ベンチャーの場合 そもそも、はてな
-
こんにちは、はてなアプリケーションエンジニアの id:skozawa です。現在は、ブックマークチーム、及び、プラットフォームチームで開発をしています。 先日リリースされたはてなブックマークの新機能﹁トピック﹂の裏側について、Hatena Enginner Seminar #4で紹介しました。 Hatena Enginner Seminar #4で紹介した資料に少し加筆・修正を加えたものを公開します。 内容 ﹁トピック﹂機能は、はてなブックマーク開発ブログにもある通り、これまで何人かのエンジニアが挑戦してきましたが、実現できていませんでした。その主な要因として、 トピック生成の精度が低い トピックタイトル生成が難しい という問題があり、これらを検索技術と自然言語処理技術によって解決することによりベータリリースへとこぎつけました。 トピック生成 これまでキーワードなどを用いて記事をクラスタリ
-
はてなCTOのid:stanakaです。 はてなアドベントカレンダー2014も最終日となりました。 今年のアドベントカレンダーは、スマートフォンアプリ開発からシステム系論文の話まで幅広いテーマが集りました。 読んでいて優秀なエンジニアがいるなぁ、としみじみ思います。 ちなみにアドベントカレンダーは25日までじゃないのか、という話がありそうですが、本来は24日までだそうです*1。 CTOとは何か論 最終日の今日は﹁CTOの役割と組織における技術的ポートフォリオの組み方﹂について考えているところを書いてみます。 最近、なぜかCTO論が盛んで、あちこちでよく耳にするようになってきています。rebuild.fmでのnaoyaさんのマネージメント話や、WEB+DB Pressの舘野さんの連載などでもCTOやエンジニアのキャリアについての話が盛り上がっています。 つい先日でたWEB+DB Press
-
こんにちは。Songmuです。 この記事ははてなエンジニアアドベントカレンダーの3日目です。 昨日、Hatena Engineer Seminar #3を開催いたしました。何より参加率が高かったことに感激したのですが、その分少し窮屈な思いをさせてしまったかもしれないのは申し訳なかったです。多数のご参加本当にありがとうございました。 セミナーではMackerel overviewという話をさせてもらったのですが、そこでお話したMackerelで採用している技術について説明します。 Mackerelとは? 今年の9月17日にリリースしたはてな謹製のサーバー管理・監視ツールです。 数多くのサーバーを運用しているはてなは、これまでサーバー管理ツールを内製してきたのですが、そのノウハウを活かし、サービス用に新たに一から作ったサービスになります。 また、はてなの既存サービスとは性質が異なるため、技術選
-
こんにちは、id:hakobe932です。はてなブログではユーザ体験の改善のために、ページ表示速度を向上させるための様々な取り組みを行っています。このエントリーでは、はてなブログで行っている、ブラウザキャッシュの活用、JavaScriptのページ最下部での読み込み、JavaScriptの圧縮、という3つの取り組みについて解説します。 ブラウザキャッシュの活用 同じ内容のJavaScriptやCSSを、ページを表示するたびにダウンロードすると、余分なHTTPリクエストが発生しますし、読み込み時間がかかります。 ブラウザのキャッシュを利用できれば、余分なリクエストを減らすことができます。はてなブログでは、なるべく長い間ブラウザにキャッシュを保存するために、JavaScriptなどの一部の種類のファイルのレスポンスに、以下のようなヘッダを指定しています。 $ curl -I http://hat
-
こんにちは、id:shiba_yu36です。 はてなのエンジニア陣によって執筆されたウェブアプリケーション作成の基本を学ぶための﹁はてな教科書﹂をgithub上に公開しましたのでお知らせします。 はてな教科書は、はてなサマーインターンでも利用されている、約1週間でウェブアプリケーションの基本を身に付けるためのものです。はてなでは日々のウェブ開発で得られたノウハウをこの教科書を継続的に盛り込みながら、インターンシップやエンジニアの新人教育などに利用しています。今回、はてな教科書をgithub上で公開することで、広くPerlを使ったウェブアプリケーション開発に興味を持ってもらえれば、と思います。 いまのところ公開されている資料は、以下の4つになります。 Perl によるオブジェクト指向プログラミング ORM によるデータベース操作 (DBIx::MoCo を使った開発) MVC によるウェブア
-
インターン生は、連日の講義と課題で大変そうですが、今日も講義が続きます。 本日は、id:nanto_viによる﹁ユーザインターフェース,HTML5﹂です。仕様書を隅々まで読んだ講師によるディープな講義内容となっています。今日も2時間の長丁場ですが、頑張って着いていきましょう!ユーザーインターフェース、HTML5ユーザーインターフェースで大切なこと、HTML5及び関連 API で何ができるか 自己紹介 nanto_vi (外山真, TOYAMA Nao) ブックマークチーム アプリケーションエンジニア はてなブックマーク Firefox 拡張 はてなツールバー for Firefox はてなブックマーク Twitter 投稿機能 はてなサマーインターン 2008 なんとなく Emacs 富山県南砺市とはあまり関係なし 概略 UIの評価・設計・実装の概略 HTML についての概略、HT
-
1