Skip to content

Instantly share code, notes, and snippets.

@kminiatures
kminiatures / gist:df34f50e390b80f51a4c
Created May 23, 2014 02:01
bitbucket pull-request POST hook to Slack chat
<?
function hash_value($obj, $keys){
if(empty($keys)) return $obj;
$key = array_shift($keys);
if(isset($obj[$key])){
return hash_value($obj[$key], $keys);
}else{
return '';
}
}
@oyakata
oyakata / README.txt
Created January 11, 2012 14:52
顔文字なアレ.py
--- sample1 ---
(`・ω・´)
(´・ω・`)
(´・m・`)
(`・ω・´)
(´・ω・`)
(´・m・`)
(`・ω・´)
--- sample2 ---
|
;;
;;; u-nya-mode
(defun cyclic (xs)
(setcdr (last xs) xs)
xs)
(defvar u-nya:message-list nil)
;; (defvar u-nya:update-hook nil)
# 参考URL: http://d.hatena.ne.jp/gmaxlab/20090329/1238329567
import httplib, ssl
#HTTPで上手くいく場合
http_session = httplib.HTTPConnection("squidのドメイン", 8080)
http_session.request("GET", "http://yahoo.co.jp/")
r1 = http_session.getresponse()
print r1.status, r1.reason
#HTTPSで失敗する場合
from zope.interface.registry import Components
from zope.interface import Interface
from zope.interface import Attribute
from zope.interface import provider
from zope.interface import implementer
## global registry
_global_registry = None
def global_registry():
return _global_registry or Components()
@podhmo
podhmo / cps-like-functions-example.scm
Created July 25, 2012 15:00
toy code using a cps like function (as ansync process simulation)
;; CPSスタイル.これは、実は非同期処理など結果がいつ計算されるか分からない場合のモデル。
;; 通常の同期処理とは異なり、引数のcontがいつ計算されるかは分からないが、*準備*ができたときcontに渡され次の計算が行われる。
(define (add1 x cont)
(cont (+ x 1)))
(define (mul2 x cont)
(cont (* x 2)))
;; つなげてみる。
@kmaehashi
kmaehashi / gist:5036511
Last active December 14, 2015 05:39
Jubatus RPC 関連の課題整理

RPC 関連の課題整理

  • Jubatus サーバのタイムアウト機能を使用したくないユーザ (--timeout 0) の救済方法を検討する

  • Jubatus サーバのタイムアウト機能を使用したいユーザの救済方法を検討する

    • サーバから timeout で自動切断(サーバから TCP FIN パケット送信)された後に RPC メソッドを呼んだ際に RPC エラーが起きるのが不親切 (C++/Python/Ruby のみ)
  • 解決策の案(松): サーバから受け取った FIN リクエストを正しくハンドリングするように修正 (msgpack-rpc ライブラリを修正)

# -*- coding:utf-8 -*-
## why define like a this?
def _get_getter(o, attribute_string):
return lambda : _getter(o, attribute_string)
def _getter(o, attribute_string):
for k in attribute_string.split("."):
o = getattr(o, k)
return o
@suma
suma / msgpackrpc.md
Last active May 9, 2016 22:59
MessagePack RPCクライアントの振る舞い及びエラー処理

MessagePack RPCクライアントの振る舞い及びエラー処理

概要

MessagePack-RPCのクライアントのエラー処理を正しく、またその後に何をすべきか(可能か)まとめる。 「このエラー起きたとき、どう処理すべきか?」ということを説明する。

説明しないこと:RPCサーバの作り方、各言語のライブラリのプロトコル実装やエラー定義の差。