タグ

ブックマーク / blog.64p.org (9)

  • /dev/random のエントロピーが足りないときは Haveged を使う - tokuhirom's blog

    /dev/random を利用した乱数生成器を利用する場合、VPS などの場合にはエントロピーが足りなくて stuck する場合があります。 たとえば以下のような感じ。 "localhost-startStop-1" #10 daemon prio=5 os_prio=0 tid=0x00007f63e8001800 nid=0x2697 runnable [0x00007f640251f000] java.lang.Thread.State: RUNNABLE at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(FileInputStream.java:255) at sun.security.provider.SeedGenerator$URLSeedGenerator.

    wyukawa
    wyukawa 2017/01/06
    最近oracle dbに対するsqoop importでrandom指定しているのにconnection resetが出てたんだけどhavegedインストールしてみようかな。
  • Jet Brains Night 行ってきた - tokuhirom's blog

    Yahoo! Japan さんのオフィスで Jet Brains Night というミートアップイベントがあったので行ってきた。 大きめのセミナールームを2個ぶち抜いた感じで、スクリーンが前面4面とサイド2面あってとにかく広くてきれいな開場でした。 IntelliJ の tips とか一個ぐらい学べればいいなーと思って行ったけど結構いろいろあって良かったです。 JetBrains 製品全般の紹介という感じで良かった。 JS については以下の tips 知らなかった! なるほどなー。 IntelliJ に typescriptの型定義ファイル読んで補完させるとかできるのか…… #jbnight — tokuhirom (@tokuhirom) November 22, 2016 File watchers プラグインで eslint かけるのが便利か。なるほどなあ。 #jbnight — t

    wyukawa
    wyukawa 2016/11/24
    内容とは全く関係ないですが、僕も同じ日にYahoo! Japan さんに行ってpodcast収録してました。
  • OSS版 Ansible Tower alternative である Ansible Semaphore を試したぞ! - tokuhirom's blog

    Ansible Tower の OSS Alternative であるところの Ansible Semaphore を試した。 Ansible を利用してデプロイするのの web ui である。 installation guide 通りにやれば利用可能。 docker run -d --name=mysql -p 127.0.0.1:3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw mysql などとして mysqld を立ち上げておく(もちろん、別に docker じゃなくてもいい)。 https://github.com/ansible-semaphore/semaphore/releases から最新版のバイナリを取得(golang なので single binary)。 semaphore -setup として、起動。セットアップが始まる

    wyukawa
    wyukawa 2016/06/25
    こんなのあるんだ。まあでも試すのはもうちょっと待ってからで良さそうだな。それにしてもなぜにpythonじゃなくてgoなんだろ。
  • spring-boot のメトリクスデータを graphite に送る - tokuhirom's blog

    graphite とはまあザックリ言うと growthforecast みたいなものだが、python で書かれていて、ダッシュボード的な機能が充実してるって感じのものです。 画面の様子は以下の様な感じ。 Graph Tree: Dashboard: 以下の様な感じで、nc で直接書き込める。http based な gf とはちょっと違う。 PORT=2003 SERVER=graphite.your.org echo "local.random.diceroll 4 `date +%s`" | nc -q0 ${SERVER} ${PORT} で、こういうやつにメトリクスデータを送るにはどうしたらいいか。spring-boot 自体はメトリクスの出力先として statsd, redis, opentsdb しかサポートしていない。 statsd から graphite に書き込ませるこ

  • spring boot アプリケーションのMetrics値取得について - tokuhirom's blog

    Spring boot の metrics 機能について spring boot には metrics 機能が標準でついている。metrics では Counter と Gauge の2種類のメトリクスをわせることが可能である。 Counter は、単純に増加/現象する値を表すのに使うメトリクス値である。 たとえば、アクセスの件数、エラーの件数、現在利用中の値を取得したりするのに使う。 サンプルコードは以下の通り。 @Service public class FooService { @AutoWired private CounterService counterService; @Autowired private FooRepository fooRepository; public Foo get(String key) { counterService.increment("f

  • groovy で ant task を記述したい - tokuhirom's blog

    ant でロジックを記述するのはなかなか大変であるし、今となっては潰しのきかないスキルでもあり、未来ある若者に ant を使わせるべきではない。 しかし、世の中には ant を利用することを強いられている若者もいると聞く。 そういった中で、タスクを groovy でこなす方法を紹介しよう。 groovy でタスクを定義できれば、コードの可読性があがりハッピーになれるはずだ。 groovy でタスクを定義するためには groovy 体を自動で取得する必要があるが、これは maven ant tasks で行う。maven ant tasks は、ant から maven の依存関係解決を呼べるようにしたライブラリである。 maven ant tasks はすでにインストール済みである場合も多いと思うが、入っていない場合は以下のようにすればよい。 mkdir ~/.ant/lib/ wget

    wyukawa
    wyukawa 2015/08/14
    ふむ>“今となっては潰しのきかないスキルでもあり、未来ある若者に ant を使わせるべきではない。 しかし、世の中には ant を利用することを強いられている若者もいると聞く。”
  • TOEICで125点しかとれないような人でもできる英文バグレポートの方法。 - tokuhirom's blog

    または、Pros と Cons をまちがえて書いてしまうような人でもできる英文バグレポートの方法。 まあ小手先のノウハウだけど、俺はこうやってるよ、という話。 ともかく再現可能なテストケースをかく再現可能なテストケースを書けば、コミュニケーションコストを大幅に削減することが可能。これは日人同士の場合でもそうだし、プログラマにとっては必須の技能の一つであるから、是非身につけて実践するべき。 マルチスレッドに起因するものなど、再現可能なテストコードがかきづらいものはともかく、それ以外であれば、再現テストコードを書くべき。 再現テストコードを書けない場合、そもそも自分がバグの原因を把握できていない場合がおおいので、そんな状況でなれていない言語によるコミュニケーションをとるのは困難。

    wyukawa
    wyukawa 2015/03/19
    “あと、英語ができるにこしたことはない。”
  • LL から Java に移行した人がはまりがちなこと - tokuhirom's blog

    こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl

    wyukawa
    wyukawa 2014/10/01
  • Java 8 で例外を投げていることをテストしたい - tokuhirom's blog

    特定の条件で例外を投げるコードを書いたときに、それをテストしたい。なんてときがある。 このクラスの例外があがってるってことだけ判断できればいいんだけどな、ぐらいのゆるい条件のとき。 そんな時は以下のようなユーティリティを定義すればいい。 public static void assertThrows(Class<? extends Exception> exceptionClass, Code code) { boolean thrown = false; try { code.run(); } catch (Exception ex) { System.out.println(ex); assertTrue(exceptionClass.isInstance(ex)); thrown = true; } assertTrue(thrown); } @FunctionalInterface

    wyukawa
    wyukawa 2014/07/14
    オレのJava知識は古いけど、ExpectedException使うという手もあるかも。
  • 1