Skip to content

Instantly share code, notes, and snippets.

View suma's full-sized avatar

Shuzo Kashihara suma

View GitHub Profile
@suma
suma / document.cpp
Created December 14, 2010 23:46
Document::writeのDOCTYPE_BUFFER/DOCTYPE_ORIGINALを分離したいが..
#include <limits>
#include <QFile>
#include <QDataStream>
#include <QUndoStack>
#include "document.h"
#include "filemapreader.h"
const size_t Document::DEFAULT_BUFFER_SIZE = 0x100000;
@suma
suma / gist:775641
Created January 12, 2011 03:26
thrift parser output AST and symbols
input =
namespace java my.first.idl
namespace cpp my.first.idl
struct Column {
1: required string name;
2: required string value;
3: required i64 timestamp;
4: optional i32 ttl;
}
@suma
suma / layout.xml
Created May 11, 2011 08:39
android layout example
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/top"
@suma
suma / gist:1787805
Created February 10, 2012 08:31
git my alias
alias got='git'
alias gut='git'
alias gitco='git commit'
alias gitch='git checkout'
alias gitb='git branch'
alias gitl='git log'
alias gitf='git diff'
alias gif='git diff'
@suma
suma / mist.rb
Created May 11, 2012 11:16
Convert MIST for Jubatus Ruby Client see next slide http://www.slideshare.net/suma_/jubatus-12892694
class MIST
def initialize(file)
@bags = []
File.open(file) {|file|
# collect LEVEL 1 each threads
bag = []
line = file.gets
pos = line.index('thread')
if pos
@suma
suma / ctfwatcher.html
Created May 20, 2012 14:33
creating spike for CTF visualizer with WebGL(three.js) base on three.js examples (MIT lisence)
<!doctype html>
<html lang="en">
<head>
<title>ctf watcher</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<style>
body {
/* background:#000; */
background:#000;
@suma
suma / is_derived.cpp
Created June 21, 2012 16:27
c++ is_derived implementation
is_derived r: 1
is_derived x: 1
is_derived y: 0
@suma
suma / gist:3696007
Created September 11, 2012 04:41 — forked from odasatoshi/gist:3695467
分散環境におけるjubatusの設定情報の与え方とモデルについて
【configを動的に再変更できたほうがいいか否か】
- できたほうがいい
- メリット
- 設定変更の自由度があがる
- 設定調整、実験、評価がやりやすくなる
- プロセス再起動なしで状態を初期化できる
- デメリット
- 同一インスタンスのサーバで設定の一貫性を保証、もしくは一貫性がないことに対処できる仕組みが必要になる
- それに伴い、正常なサービスを提供できなくなる可能性がある 例:サーバが停止する、サーバが誤った結果を返す
- 以下の【課題】の部分に相当
@suma
suma / gist:3780347
Created September 25, 2012 06:49
Jubatus ZK Session expired時にどう振る舞うと良いか
【Jubatus ZKとの接続でSESSION_EXPIREDしたときどうするか問題】
- ZKを利用しているOSSの実装
- EXPIREしたらexit(自殺)する
- EXPIREしてもZKと繋がるまで再接続し続ける
- 無限ループ・回数制限を設ける
- 接続が切れている間は、ZK関連のサービスを提供できない(キャッシュ保持してるかもしれない。もしくは、キャッシュはクリアする実装)
- Jubatusにおける選択肢
- EXPIREしたらプロセスを終了する
- EXPIREしてもZKへ接続リトライする(リトライし続ける、回数制限等つけてリトライする)
@suma
suma / gist:3785663
Created September 26, 2012 02:31 — forked from odasatoshi/gist:3780438
Jubatus ZK Session expired時にどう振る舞うと良いか
【Jubatus ZKとの接続でSESSION_EXPIREDしたときどうするか問題】
- ZKを利用しているOSSの実装
- EXPIREしたらexit(自殺)する
- EXPIREしてもZKと繋がるまで再接続し続ける
- 無限ループ・回数制限を設ける
- 接続が切れている間は、ZK関連のサービスを提供できない(キャッシュ保持してるかもしれない。もしくは、キャッシュはクリアする実装)
- Jubatusにおける選択肢
- EXPIREしたらプロセスを終了する
- EXPIREしてもZKへ接続リトライする(リトライし続ける、回数制限等つけてリトライする)