タグ

2017年10月23日のブックマーク (7件)

  • Laravelで作る分析・分散処理アプリケーション その1 - ytake blog

    先日のPHPカンファレンスやPHPカンファレンス関西、buildersconでお話しした内容を元にして、 Laravel(PHP)を使って分析処理の簡単な実装や、 ミドルウェアを組み合わせた分散処理の実装を紹介します。 ブログのサンプルアプリケーションは下記になりますので、 コードやミドルウェアなどを参照ください。 github.com Laravelとkafka Connect、Elasticsearchの組み合わせ Apache Kafkaを使ったスケーラブルなアプリケーションの入門編です。 レコード量が多い複雑なコンテンツのデータや検索要件、Like検索など、 RDBMSの不得意な分野などを対応することも多いかと思いますが、 RDBMSとElasticsearchを併用しKafkaで複雑さを吸収して、 アプリケーションをスケールさせるようにしてみましょう。 データベースのテーブル設

    Laravelで作る分析・分散処理アプリケーション その1 - ytake blog
  • TIME_WAITに関する話 | GREE Engineering

    こんにちわ。せじまです。 先日ポチった C302CA が届いたんですが、(話が長くなるのですごい雑にいうと)Chromebook の、いろいろ削ぎ落として最適化するという方向性には、とても学ぶところがありました。 昨年末、 MySQLのサーバ集約に取り組んでいるという話をさせていただきましたが、「DB集約できてきたので、Webアプリケーションサーバも集約するかー」ということで、最近はWebサーバの集約にも取り組んでいます。 ただ、PHPゴリゴリ書いてるのではなく、集約していく上で Linux や TCP 的な観点からチューニングしたほうが良いところを見てまして、そのへんについてあるていどまとまったので、次のスライドを書かせていただきました。

    TIME_WAITに関する話 | GREE Engineering
  • Prometheusによる数百台規模のモニタリングで直面した問題について | GREE Engineering

    インフラの反田 (@mtanda) です。 GREEでは、多くのサービスをAWS環境で運用しており、それらサービスのモニタリングシステムとしてPrometheusを利用しています。 Prometheusを導入してから約2年がたち、1台のPrometheusで数百台規模のインスタンスをモニタリングするなかで、さまざまな問題に直面しました。 それら問題の原因を分析し、設定や利用の仕方を改善することで、ある程度安定して運用できるようになりました。 これらの知見が少しでもお役に立てばと思い、ここで共有いたします。 なお、対象とするPrometheusのバージョンは1.xです。Prometheus 2.0では、これら問題のほぼ全てに対して改善されています。そのため、2.0でどういった点が改善されているかを知るためにも有用だと思います。 Prometheusのストレージ実装の基礎知識 Promethe

    Prometheusによる数百台規模のモニタリングで直面した問題について | GREE Engineering
  • Jupyter notebook (iPython Notebook)を使う時に気をつけるべき10個のこと - MyEnigma

    PythonユーザのためのJupyter[実践]入門posted with カエレバ池内 孝啓,片柳 薫子,岩尾 エマ はるか,@driller 技術評論社 2017-09-09 Amazonで検索楽天市場で検索Yahooショッピングで検索 目次 目次 はじめに 1. 環境の独立性を保つために各プロジェクト毎にvirtualenvを使う 2. Python3を使う 3. requirements.txtを保存しておく 4. すべてのimport文とパスの設定は初めのセルに入れる 5. はじめはコードは汚くても良い 6. グローバル名前空間を汚さないために、セルの中の処理は関数とする 7. 長い計算時間の結果をキャッシュするためにJoblibを使う 8. セルの独立性をできるだけ保つ 9. 変数名は短くても良い 10. ユーティリティ関数にはアサーションを使ってテストを書く 参考資料 MyE

    Jupyter notebook (iPython Notebook)を使う時に気をつけるべき10個のこと - MyEnigma
  • Facebook、マルチスレッドのコードを静的解析してデータ競合を検出する「RacerD」、オープンソースで公開。同社Androidアプリのリリース前に1000以上の問題を検出

    Facebookは、Javaのコードを静的に解析してマルチスレッドプログラミングで発生するデータ競合のバグを発見するツール「RacerD」をオープンソースでリリースした。 アプリケーションのレスポンスを改善するうえで、マルチスレッド化は重要な選択肢のひとつです。 その一方で、マルチスレッドのアプリケーションは十分に注意深くプログラミングしないと、変数の値が予期しないタイミングでほかのスレッドから書き換えられるなどの問題が紛れ込みやすいものです。 しかもマルチスレッドに起因する問題は再現が難しく、一般に発見するのが困難です。 RacerDリリース:Facebookで1000以上ものバグを発見 Facebookは、こうしたデータ競合の問題を、コードを静的解析することで発見し、警告してくれるツール「RacerD」をオープンソースで公開しました。 Facebookの説明によると、RacerDはロッ

    Facebook、マルチスレッドのコードを静的解析してデータ競合を検出する「RacerD」、オープンソースで公開。同社Androidアプリのリリース前に1000以上の問題を検出
  • Fluentd 入門 〜運用に必要な基礎知識〜

    最近業務で Fluentd を触ることが出てきて入門したんですが、最初のうちはトラブルが起きた時に何が起きているのか、どう対処したら良いのかがさっぱりわからなかったので、「Fluentd ってログの収集とかに使われるやつでしょ?」程度の知識しかなかった過去の自分に向けて「とりあえずこれぐらいは知っておけ!」と言いたい内容をまとめてみました。 トラブルが起きた時にどの処理で問題が起きているのか素早くコードを追うことができて、データの消失を最小限に抑えつつ適切に対処できるようになることを目的としています。 なお、現時点で最新版の Fluentd v0.14.21 を対象にしています。 アジェンダ Getting Started Fluentd のアーキテクチャ Processes Supervisor process Worker process Threads Input thread En

    Fluentd 入門 〜運用に必要な基礎知識〜
  • Google Apps Scriptプログラミングでスプレッドシートを操作するための基礎知識

    Google Apps Scriptプログラミングでスプレッドシートを操作するための基礎知識:Excel VBAプログラマーのためのGoogle Apps Script入門(1)(1/2 ページ) Googleが提供するGoogle Apps Scriptのプログラミングで、Google Apps(主にスプレッドシート)を操作する方法を解説していく連載。初回は、Google Apps Scriptやスプリプトエディタの概要、スプレッドシートを表示し、Browser.msgBoxメソッドでメッセージを表示する手順などについて解説する。 連載「Excel VBAプログラマーのためのGoogle Apps Script入門」では、Googleが提供する「Google Apps Script」のプログラミングで、「Google Apps」を操作する方法を解説していく。 連載ではGoogle Ap

    Google Apps Scriptプログラミングでスプレッドシートを操作するための基礎知識