Skip to content

Instantly share code, notes, and snippets.

View schmurfy's full-sized avatar
:octocat:

Julien Ammous schmurfy

:octocat:
View GitHub Profile
# 在本地服务器建立 rubygems.org 的镜像缓存,以提高 gem 的安装速度
# 此配置设置缓存过期为1天,也就是说,新上的 gem 无法马上安装
# 做这个起什么作用?
# rubygems 的很多资源文件是存放到 Amazon S3 上面的,由于 GFW 对某些 S3 服务器又连接重置或丢包,导致 gem 安装异常缓慢或有时候根本无法连接安装。
# 而通过这种跳板的方式可以很好的解决这个问题,当然前提是 Nginx反向代理 服务器需要在国外
proxy_cache_path /var/cache/rubygems levels=1:2 keys_zone=RUBYGEMS:10m
inactive=24h max_size=1g;
server {
listen 80;
@schmurfy
schmurfy / test.rb
Created May 1, 2014 17:42
conccurent-ruby sandbox
class Processor
include Concurrent::ActorContext
def receive(msg)
# do something with the message(s)
<mystery>.post(msg)
@schmurfy
schmurfy / Makefile
Created May 20, 2014 09:20
parallella
# awesome reference:
# http://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html
EPIPHANY_HOME=/opt/adapteva/esdk
# EPIPHANY_PLATFORM=emek3
ESDK=${EPIPHANY_HOME}
ELIBS=${ESDK}/tools/host/lib
EINCS=${ESDK}/tools/host/include
@schmurfy
schmurfy / influxdb_logs
Created June 25, 2014 11:19
influxdb crash
[06/25/14 11:18:08] [INFO] Loading configuration file /etc/influxdb.toml
[06/25/14 11:18:08] [INFO] Redirectoring logging to stdout
[06/25/14 11:18:08] [INFO] Starting Influx Server 0.7.3 bound to 127.0.0.1...
[06/25/14 11:18:08] [INFO] Opening database at /apps/monitoring/data/metrics
[06/25/14 11:18:08] [INFO] Opening wal in /apps/monitoring/data/wal
[06/25/14 11:18:08] [INFO] Ssl will be disabled since the ssl port or certificate path weren't set
[06/25/14 11:18:08] [INFO] Initializing Raft HTTP server
[06/25/14 11:18:08] [INFO] Raft Server Listening at 127.0.0.1:8090
[06/25/14 11:18:08] [INFO] Initializing Raft Server: http://admin.monitoring:8090
[06/25/14 11:18:08] [INFO] Recovered from log
GEN vm/gen/config_variables.h
/Users/Schmurfy/.rbenv/versions/2.1.0/bin/ruby vm/codegen/config_vars.rb vm/gen/config_variables.h
/Users/Schmurfy/.rbenv/versions/2.1.0/bin/ruby vm/codegen/encoding_extract.rb /private/tmp/rubinius/vendor/oniguruma vm/gen/encoding_database.cpp
mkdir -p /private/tmp/rubinius/staging//library/encoding/converter
/Users/Schmurfy/.rbenv/versions/2.1.0/bin/ruby vm/codegen/transcoders_extract.rb /private/tmp/rubinius/vendor/oniguruma/enc/trans vm/gen/transcoder_database.cpp
/Users/Schmurfy/.rbenv/versions/2.1.0/bin/ruby vm/codegen/field_extract.rb vm/builtin/basic_object.hpp vm/builtin/object.hpp vm/builtin/integer.hpp vm/builtin/fixnum.hpp vm/builtin/array.hpp vm/builtin/bignum.hpp vm/builtin/executable.hpp vm/builtin/access_variable.hpp vm/builtin/alias.hpp vm/builtin/block_environment.hpp vm/builtin/block_as_method.hpp vm/builtin/byte_array.hpp vm/builtin/io.hpp vm/builtin/channel.hpp vm/builtin/module.hpp vm/builtin/constant_table.hpp vm/builtin/class.hpp vm/builtin/compiled_code.h
function getInRange(origin_id, range, ret){
if( range > 0 ){
g.V(origin_id).Both("gate_to").ForEach(function(n){
var system_name = g.V(n["id"]).Out("name").ToValue();
if( ret.indexOf(system_name) == -1 ){
ret.push( system_name )
getInRange(n["id"], range - 1, ret)
}
})
{"name":"metadata","hostname":"VMHost2","pid":3142,"level":30,"msg":"Setup interval to purge deleted zones.","time":"2014-09-08T10:28:47.993Z","v":0}
{"name":"metadata","hostname":"VMHost2","pid":3142,"level":30,"msg":"Starting zwatch","time":"2014-09-08T10:28:47.995Z","v":0}
Uncaught TypeError: Cannot read property 'length' of undefined
FROM
Object.async.each (/usr/node/0.10/node_modules/async.js:113:17)
/usr/vm/lib/metadata/agent.js:126:15
gotVMs (/usr/vm/node_modules/VM.js:1489:13)
/usr/vm/node_modules/vmload/index.js:944:13
/usr/node/0.10/node_modules/async.js:240:13
@schmurfy
schmurfy / linking.rb
Last active August 29, 2015 14:07
concurrent-ruby experimentations
require 'rubygems'
require 'bundler/setup'
require 'concurrent'
logger = Logger.new($stderr) #
# Concurrent.configuration.logger = lambda do |level, progname, message = nil, &block|
# logger.add level, message, progname, &block
# end #
@schmurfy
schmurfy / lldb_trace
Created February 26, 2015 12:38
rbx-2.5.2 sigsegv
Process 66561 stopped
* thread #1: tid = 0x83c67, 0x00000001001b0254 ruby`rubinius::GarbageCollector::scan(rubinius::ManagedThread*, bool) [inlined] rubinius::GarbageCollector::scan(this=<unavailable>, this=<unavailable>) + 63 at gc.cpp:367, name = 'rbx.ruby.main', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x1)
frame #0: 0x00000001001b0254 ruby`rubinius::GarbageCollector::scan(rubinius::ManagedThread*, bool) [inlined] rubinius::GarbageCollector::scan(this=<unavailable>, this=<unavailable>) + 63 at gc.cpp:367
364 Object*** buffer = displace(vrb->buffer(), offset);
365 for(int idx = 0; idx < vrb->size(); idx++) {
366 Object** var = displace(buffer[idx], offset);
-> 367 Object* cur = *var;
368
369 if(cur && cur->reference_p() && (!young_only || cur->young_object_p())) {
370 if(Object* tmp = saw_object(cur)) {
@schmurfy
schmurfy / multiple.rb
Created March 5, 2015 16:01
rom tinkering
require 'rubygems'
require 'bundler/setup'
require 'rom'
require 'rom/memory'
require 'rom/sql'
sql = ROM.setup(:sql, "sqlite:memory")
sql.default.connection.create_table(:animals) do