Skip to content

Instantly share code, notes, and snippets.

View you21979's full-sized avatar
💭
I may be slow to respond.

Yuki Akiyama you21979

💭
I may be slow to respond.
View GitHub Profile
var createBulkInsertBuilder = function(tbl, keys, count){
var f = function(keys, count){
var w = [];
for(var i = 0; i<count; ++i){
w.push('(' + keys.map(function(v){ return '?'}).join(',') + ')')
}
return w;
}
var q = [
'INSERT INTO',
@you21979
you21979 / loadbalance.md
Last active May 10, 2019 01:21
Websocketのロードバランス

Websocketのロードバランス戦略

問題

websocketに対応していないロードバランサを使うといくつか問題が起きる

  • upgradeヘッダを捨ててしまい接続できない(L7スイッチなど)
  • ポート番号枯渇により新規接続ができなくなる
  • タイムアウトの設定が短いと定期的に切断されてしまう
@you21979
you21979 / vpass-exe.js
Last active August 29, 2015 14:07
crawler-test
var vpass = require('./vpass');
var auth = {
userid:process.env['ID'],
password:process.env['PASS'],
strURL:'https%3A%2F%2Fwww%2Esmbc-card%2Ecom%2Fmem%2Fvps%2Findex%2Ejsp',
};
var v = new vpass();
v.doLogin(auth).
then(v.thenDownload()).
then(v.thenPoint()).
var mysql = require("mysql");
var Promise = require("bluebird");
Promise.promisifyAll(mysql);
Promise.promisifyAll(require("mysql/lib/Connection").prototype);
Promise.promisifyAll(require("mysql/lib/Pool").prototype);
var getConnection = exports.getConnection = function() {
return pool.getConnectionAsync().disposer(function(connection) {
try {
connection.release();
http://www.chriscalender.com/iops-innodb_io_capacity-and-the-innodb-plugin/
15k rpm: 180-210 IOPS
10k rpm: 130-150 IOPS
7200 rpm: 80-100 IOPS
5400 rpm: 50-80 IOPS
http://www.atmarkit.co.jp/fnetwork/tokusyuu/66ssd01/01.html
7.2K SATA/SAS 100~125 IOPS
15K SATA/SAS 200~300 IOPS
@you21979
you21979 / 0.normal.md
Last active January 4, 2018 18:00
起きる!メモリーリーク(javascriptクロージャー編)

メモリリークは起きない

var hoge = function(){
    var x = 0;
    return function(){
        return x++;
    }
}
var h = hoge();
console.log(h());
@you21979
you21979 / mono.sh
Last active August 29, 2015 14:05
centos6でmonoを動かす
# mono2.10と古くてもいいなら
rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y install mono-* mod_mono-* monodoc-* monotools-*
@you21979
you21979 / promise_injection.js
Last active August 29, 2015 14:05
プロミスのパイプラインを動的に拡張するための仕組み
var addtioalTask(pipeline){
pipeline.push(function(p){ return p.then(function(v){console.log(v);return v}) });
}
var pipeline = [];
addtionalTask(pipeline);
pipeline.push(function(p){ return p.then(function(v){return v}) });
pipeline.reduce(function(p, f){ return f(p) }, promiseAync());
@you21979
you21979 / csv.md
Last active August 29, 2015 14:04
csvとはなんだろ

CSVとはなんだ

カンマ区切りのフォーマットだがそんなのはどうでもいい。どういうパターンがあるか
フリーフォーマットなCSVを人間がどういう使い方をしているか。

決め事がなくファイルだけ渡された時にわかること

  • 配列を扱う
  • 不変である
  • 型がない

フィールド名(column)が決まっている場合

@you21979
you21979 / メモ.md
Last active August 29, 2015 14:04
ネットワークゲームに使えるOSSメモ
名前 要約 ライセンス URL
flatbuffers IDLを用いたオブジェクトシリアライザ Apache2 https://github.com/google/flatbuffers
thrift IDLを用いたRPCフレームワーク Apache2 https://thrift.apache.org/
RakNet ネットワークエンジン 修正BSD https://github.com/OculusVR/RakNet
bullet OpenCLなどのGPUが使える物理エンジン ZLib https://github.com/bulletphysics/bullet3
recastnavigation ナビゲーションメッシュ作成に使えるエディター ZLib https://github.com/memononen/recastnavigation