タグ

ブックマーク / qiita.com (240)

  • いまさら fluentd(まだ) をはじめてみた Apache + Elasticsearch + Kibana なにそれ美味しいの?、その4 - Qiita

    いまさら fluentd(まだ) をはじめてみた Apache + Elasticsearch + Kibana なにそれ美味しいの?、その4FluentdVagrantElasticsearchkibana3CentOS6.5 いまさら fluentd はじめてみる4 その前に、Elasticsearch + Kibana のインストール方法がバージョンにより色々とあり、毎度のごとくはまる私。2014/7/4版として最新の Elasticsearch + Kibana を簡単にインスコできるようになったので自分メモ。 Elasticsearch + Kibana って 日語全文検索エンジンですって。懐かしい Namazu を思い出しますわ。歳がばれてしまいますねw 実践!Elasticsearchであるように、蓄積データに対しクエリーを発行できるんですね~ それを Kibana を使用

    いまさら fluentd(まだ) をはじめてみた Apache + Elasticsearch + Kibana なにそれ美味しいの?、その4 - Qiita
  • uWSGI の spare2 cheaper algorithm を作った - Qiita

    [uwsgi] ... processes=10 cheaper-algo=spare2 cheaper=2 cheaper-initial=2 cheaper-step=2 cheaper-idle=30 process=10 は最大ワーカープロセス数です。 cheaper=2 が最小プロセス数になり、この間で調整されることになります。 cheaper-initial=2 が起動直後のワーカー数になります。 spare2 アルゴリズムは、 cheaper で指定された数の idle 状態のワーカー数を維持しようとします。 例えば idle 状態のワーカー数が 1 つになった場合、 2 - 1 = 1 個のワーカーを起動します。 cheaper-step=2 は一度に起動するプロセス数の上限です。 cheaper が大きいときに、 cheaper-step であまりたくさんのプロセスを一気

    uWSGI の spare2 cheaper algorithm を作った - Qiita
  • kibanaによるログ可視化対策と実践編 - Qiita

    fleuntdを活用したいと決意し、しばらく放置していたのですが、 kibanaというログ可視化ツールと連携するとおもしろいことができる というのを知り、ちょこっと調査してみました。 どうやら、fluentd、kibana、elasticsearchを使えば、 apacheのログをかっこ良く表示できるようです。 もろもろさくっと社内システムに導入できたので、キャプチャとってみました! 下記画像は、apacheのアクセスログです。(x:時間 y:アクセス数) かっこ良くていいですね! でも、これだけだと、活用しがいがないので、検索してみましょう。 検索ボックスに「code:200」、「code:304」と打ち込んでいくと、 こんなかんじのグラフになりました。 ステータスコード別にグラフが表示できるのがわかりましたね! では、正常系のコードを非表示にするとどうなるでしょうか。 おや?どうやら、

    kibanaによるログ可視化対策と実践編 - Qiita
  • もう目移り。ちょっち迷っている - Qiita

    寄り道から帰ってきた 言い換えれば、もう目移り。Lua、学習コストもコミで超速いけど、やっぱり流行っていなさすぎる。孤独感ぱない。コルーチン邪魔、と思う私には、コルーチンの無い、もっとminimumなLuaでもいいのに、とも思う。真面目にオープンソースに取り組むなら、Lua界の新鋭だぜいえあ、という生き方もあるのだろうが、生憎そんな時間はない。Open Issueこんなに溜めたぜ、きゃっふー! ってことになりかねん。 お友達ができそうなルートを再構築したい。現在の私の脳内マップでは、こんな感じでイメージされている。各言語を貶す意図はないのでご容赦。なお See 六道 天道:HaskellとかCoqとかで天人になる。人間より優れた存在になれるが、解脱による出口は無い。 人間道:やっぱりCoffeeScript on Node.jsに出戻り。人並みの暮らしをする。修行次第で仏に解脱できる。 修

    もう目移り。ちょっち迷っている - Qiita
  • 【個人メモ】React.jsを使ってserver-sideレンダリングを試す - Qiita

    React.jsのserver-side レンダリングを試す React.js Tutorialではフロントエンドでの実例が用いられていた。 githubリポジトリ上には、React.jsを使ってDOM(Virtual DOM)をサーバサイド側で構築し、 フロントエンド側にはレンダリング結果を返す、というサンプルがある。 このサンプルを試用して react-bootstrapを使ったりGrunt 使ったりして 自分なりにReact.jsでのserver-sideレンダリングに対する理解を深めるため コードを書いてみよっかなと思った。 以下記録。 まずreact-server-exampleを試す をgit cloneし、動作確認をしてみた。 プロジェクトソースを手元に持ってくる

    【個人メモ】React.jsを使ってserver-sideレンダリングを試す - Qiita
  • いちいちbundle execしたくない 決定版 - Qiita

    はじめに Gemfileを使ってgemを管理してるプロジェクトで、日常的にbundle exec 何々ってやってて、alias be='bundle exec'とかしてるけど、beすら打つのが面倒、って状況よくありますよね。 結論から 2013/12/26にリリースされたRubyGems 2.2.0以降であれば、環境変数でRUBYGEMS_GEMDEPS=-とすることでbundle execを使わなくてもGemfileを読んでくれる。 少し追記 RUBYGEMS_GEMDEPSは"gem dependency file"へのパスを指定する機能。RUBYGEMS_GEMDEPS=MyGemfileであればカレントディレクトリからMyGemfileを読むことになる。カレントディレクトリからの相対パス、絶対パスともに使用可能。存在しないファイルを指定してもエラーは出ないので注意。 "-"だけが特

    いちいちbundle execしたくない 決定版 - Qiita
  • マルチベンダルータ制御APIライブラリ NAPALMを触ってみた - Qiita

    (追記)2016年12月24日に記事の続編を書きました。そちらのほうがより詳しく記載してますので、ご興味あればみてください。 続・マルチベンダルータ制御APIライブラリ NAPALMを触ってみた NAPALM概要 NAPALMというルータ制御APIライブラリが、NANOG64にて紹介されました。 https://www.nanog.org/meetings/abstract?id=2588 NAPALM (読み方は、日人的には「ナパーム」でしょうか。NANOGでは「ネイパーム」と呼ばれていました)は、Spotify社が提供しているOSSのPythonライブラリであり、名前は「Network Automation and Programmability Abstraction Layer with Multivendor support」の略のようです。 ソースコードはgithubで公開

    マルチベンダルータ制御APIライブラリ NAPALMを触ってみた - Qiita
  • Elixirで試しに何か書いてみる(その2) - Qiita

    Elixirで試しに何か書いてみる(その1)の続きです。 プロセスによる並行動作で高速化を狙います。 [2015/6/5追記:GitHubのURL仕様変更とriot.jsのURL変更に対応して修正しました] 今のところ Elixirで試しに何か書いてみる(その3) - Elixirのアプリケーション Elixirで試しに何か書いてみる(その4) - Taskを使って簡単にする Elixirで試しに何か書いてみる(その5) - 失敗したらやり直す まで徐々に改良をしています。 並行動作による高速化 その1のプログラムの動作が遅いのは - ひとつのURLのデータ取得が終わって結果が出力されるのを待って - 次のURLのデータを取りに行っているから です。 ここを同時にいくつものURLにアクセスするようにすればかなりの改善が期待できます。Goのプログラミング例ではgoroutineを使いましたが

    Elixirで試しに何か書いてみる(その2) - Qiita
  • [翻訳] なぜ私はElixirに賭けたか - メンテナンスプログラマになりたくなければ君もそうしろ - Qiita

    Ken Mazaikaさんの2015年1月31日付のブログ記事、Why I’m betting on Elixir And why you should too, unless you want to become a maintenance programmer.の翻訳です。 [翻訳] Elixir - 次に来る大物Web言語もそうでしたがなんかRailsのプログラマさんたちがやたらアツく語ってるんですね、Elixirを。 メンテナンスプログラマになりたくなければ1、なんてタイトルからして挑発的です。私の3つ前の仕事はまさにそういう保守系でしたけど。 あんまりアツいんで皆さんとアツさを共有したくて翻訳しました。 なおQiitaのCentOS + Erlang + Elixir + PhoenixのDockerイメージで今日から始めるElixir on Phoenix入門の追記のところでも

    [翻訳] なぜ私はElixirに賭けたか - メンテナンスプログラマになりたくなければ君もそうしろ - Qiita
  • WebAPIリクエスト仕様書としてcurlコマンドのご提案 - Qiita

    WebAPIの仕様を記述する方法はいくつかあると思う。 普通に日語で記述する JSON Hyper-Schema、WADL、RAML、Swaggerなどを使う 仕様書の代わりにプログラムを書く HTTPメッセージそのものを記述しておく でも、文法にばらつきがあったり、読みにくかったり、ツールのセットアップが面倒だったり、どれもイマイチな所があって、手軽な方法が欲しいと思っていた。 何気なくcurlコマンドのオプションを調べていたら、「もうこれでAPIドキュメント扱いにしちゃえばいいんじゃね?」と思えてきたのでメモしておく。 curlコマンドのおさらい curlコマンドはlibcurlの付属コマンドで、最近のUnix系OSなら大抵最初から入っていると思う。コマンドの詳細はmanを読んでいただければ。 cURL - How To Use (マニュアルページ日語訳) curlコマンドのオプシ

    WebAPIリクエスト仕様書としてcurlコマンドのご提案 - Qiita
  • mermaid.jsが素晴らしいけどなかなか使ってる人見かけないので実例晒す(追記あり) - Qiita

    mermaid.jsとは JavaScriptのチャート作成ライブラリです。他にも似たようなのは色々ありますが、これ一でフローチャート、シーケンス、ガントに対応してるので、個人的にお気に入り。 http://knsv.github.io/mermaid/ サイトの各チャートのページ見ると書き方と何ができるかはわかるので、ご覧あれ。 僕の使い方 JSのライブラリを自分でインポートして何かすることはほとんど無くて(後述の理由からガントだけJSで使ってるけど)、基的には以下の2つの方法で使ってる。 Haroopad フリーでクロスプラットフォーム(OS X, Win, Linux)なMarkdownエディタ。 v0.13からmermaid.jsがインテグされているので、何もしなくてもそのまま使える。 mermaid.jsのグラフの書き方は、コード表記で、言語をmermaidにしてあげるだけ。

    mermaid.jsが素晴らしいけどなかなか使ってる人見かけないので実例晒す(追記あり) - Qiita
  • fluentdで本番環境を再現する - Qiita

    toyama0919/fluent-plugin-http_shadowというShadow Proxyっぽいことを簡単にやるプラグインを作りました。 production環境で半年くらい動かしてたのでメモしときます。 「Fluentd Meetup 2015 夏」で実際のユースケースを発表しました。 Shadow Proxyサーバとは Shadow Proxyサーバについては以下がわかりやすいです。 気軽なMySQLバージョンアップ - まめ畑 Go言語を含む複数種類の言語により実装されたソフトウェアのベンチマーク - Qiita 実装としては以下のようなものが公開されています。 cookpad/kage lestrrat/p5-Geest kentaro/delta 番のリクエストをそのままバックエンドにあるサーバーに複製して送信するのですが、アプリケーションの規模が大きくなればなるほ

    fluentdで本番環境を再現する - Qiita
  • 【数学】固有値・固有ベクトルとは何かを可視化してみる - Qiita

    線形代数に固有値という概念が出てきます。最初はイメージしにくいのでは、と思うのですが重要な概念かつ、統計学でも頻繁に利用されるので、これもこの可視化シリーズとしてアニメーショングラフを書いて説明することを試みたいと思います。 このようなグラフの意味を読み解いていきます。 1.固有値・固有ベクトルとは? まず、固有値・固有ベクトルとはなんぞや。数式で表すと下記のことです。 ${\bf x}\neq {\bf 0}$の${\bf x}$で、行列Aをかけると、長さが$\lambda$倍になるような${\bf x}$の事を固有ベクトル, $\lambda$を固有値と言います。 知らない人は???で、これだけではよくわからないですね。 早速、グラフィカルな説明も交えて説明していきたいと思います。 2.行列Aによる線形変換 固有値・固有ベクトルの説明の前に、行列による線形変換について取り上げます。 例

    【数学】固有値・固有ベクトルとは何かを可視化してみる - Qiita
  • 2018年のCommon Lispのコーディングスタイルはこれだ! - Qiita

    Tutorial on Good Lisp Programming Style(これがおすすめだ!) http://norvig.com/luv-slides.ps (Lisp Users and Venders Conference 1993でのPeter Norvig氏の発表) 日語訳 https://sites.google.com/site/okshirai/home/tutorial-on-good-lisp-programming-style-ja.txt こちらも有用で有名なガイドです。こっちの方がgoogleのものより知られているかも。 一度は目を通しておきましょう。 Google Common Lisp スタイルガイド (これもおすすめだ!) Google Common Lisp スタイルガイド 日語訳 というかこれとNorvig&Pitman氏のもの位しかないです。

    2018年のCommon Lispのコーディングスタイルはこれだ! - Qiita
  • 正規表現からLLVMへのコンパイラを実装する - Qiita

    正規表現技術入門というの中に、正規表現のJITコンパイルという技術が紹介されている。VM型の正規表現エンジンは以前作った1ので、これをLLVMへコンパイルすればおもしろいのではないかと考えて、実行することにした。なお、実装にはScalaを用いた。 追記: また、JVMのバイトコードへJITコンパイルする実験も書きました。 正規表現のJITコンパイラを実装する 正規表現の抽象構文木 VMの実装の時に用いたものと同じく、次のデータ構造を用いる。 sealed trait Regex case object Empty extends Regex case class Let(c: Char) extends Regex case class Con(a: Regex, b: Regex) extends Regex case class Alt(a: Regex, b: Regex) ext

    正規表現からLLVMへのコンパイラを実装する - Qiita
  • CocosConsoleの使い方 - Qiita

    CocosConsoleはゲーム内にTCPサーバを立てネットワーク越しに実行中のゲームと通信する機能で、タッチイベントの発行やノードツリーの出力などができます。cocos2d-xに標準で搭載されており、CocosCodeIDEなどから利用されています。既存のコマンドを使用するだけでなく独自のコマンドを追加することも可能なので、デバッグや自動テストなど様々な応用が可能です。 初期化 ConsoleのインスタンスにはDirector経由でアクセスでき、listenOnTCPで接続を待機します。 Console *_console = Director::getInstance()->getConsole(); _console->listenOnTCP(6010); import os import sys from socket import * from threading import

    CocosConsoleの使い方 - Qiita
  • nginxのパラメータチューニングとh2o - Qiita

    (追記:タイトルが少々煽り気味な気がしたので微妙に変更しました。) h2oとnginxの性能比較 nginxよりも速いとされるh2oですが、実際に自分でもローカルでベンチマークを取ってみました。環境は以下の通りです。 EC2のc4.8xlargeインスタンス gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-16) Linux ip-172-31-13-40 3.14.35-28.38.amzn1.x86_64 #1 SMP Wed Mar 11 22:50:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux nginx-1.8.0 h2o-1.2.1-alpha1 wrk(ベンチマーク) ベンチマークコマンド 実行するベンチマークコマンドは以下になります。なお、オプションはできるだけRequest/secが大きくなるように調

    nginxのパラメータチューニングとh2o - Qiita
  • 炎上案件に突如ディレクターとして投入されたときにやってみたこと - Qiita

    ぼんやり1メンバーとして眺めていたプロジェクトが、リリース1週間前になって「あれも足りない!これも出来てない!どうすんじゃゴラァ」となったときに突如ディレクターとしてぶっこまれ投入されたときにやってみたことのメモ。 一次対応 とにもかくにもPJTに投入されて最初にやったこと。 コミュニケーションルールをみんなで確認して、守ってもらうようにした 誰が何の情報を持ってて、そして誰から誰にどんな指示が出てて、それらがどんなステータスか、、、 もうぐっちゃぐちゃになっていた。 ディレクターは一度死ぬが、一旦全部ディレクターに報告させて、ディレクターから適切な人に指示を出すことにし、メンバー同士でのダイレクトなコミュニケーションをいったん、原則禁止した。 (ディレクターがAさんとBさんで直接やって、と指示を出すときもあるが、それもやりとりの結果をAさんから必ずフィードバックさせるようにした。) ただ

    炎上案件に突如ディレクターとして投入されたときにやってみたこと - Qiita
  • ActiveRecordを速くしたいだけの人生だった - Qiita

    Help us understand the problem. What is going on with this article? Rails3.2からRails4.2に上げたらActiveRecordが遅くなったので、どうやって調査して、どのように対処したかを語ってみたい。 とても長いので、ダルい人は最初と最後だけ読めばよいです。 TL;DR 環境: Ruby 2.1.5 ARオブジェクトを大量に(ざっくり750kくらい)loadするバッチ処理 3.2系での実行時間は約480sec、 4.2系では約2900sec 約6倍の性能劣化 原因: preloadで性能劣化してた CollectionProxyの生成周りで遅くなってた Rails4からARオブジェクトの1attribute毎にObject生成するので遅い GCの時間も増えた 調査方法: Githubのcommit、Issueを

    ActiveRecordを速くしたいだけの人生だった - Qiita
  • zshでpecoと連携するためのanyframeというプラグインを作った - Qiita

    これは何? zshの操作で、pecoとかpercolとか、Anything風インターフェースで選択するやつがよく使われてる。これを使うと、例えばコマンドライン履歴からインクリメンタルに検索して、それを実行、とかできるようになる。 でも、pecoとかpercolはシェルとは関係なくて、単に「インクリメンタルに絞り込む」ってところだけしかやってくれない。それだけでは役に立たなくて、「選んだ結果を実行する」とかのシェルの処理が必要になる。 それで、そういうシェルの処理を自分で書きたくない人向けにanyframeというのを作った。 https://github.com/mollifier/anyframe これはzsh用のプラグインで、これを使うと自分でシェルの関数を書かなくても、キーバインドとかaliasを設定するだけでpeco/percolの便利なやつをすぐ使えるようになる。 特徴 普通の人が

    zshでpecoと連携するためのanyframeというプラグインを作った - Qiita