Skip to content

Instantly share code, notes, and snippets.

View schmurfy's full-sized avatar
:octocat:

Julien Ammous schmurfy

:octocat:
View GitHub Profile
@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 / 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)
# 在本地服务器建立 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 / sqlite.rb
Created August 29, 2013 14:04
in memory DB
require 'active_record'
require 'sqlite3'
ActiveRecord::Base.establish_connection(
:adapter => 'sqlite3',
:database => ':memory:'
)
ActiveRecord::Base.connection.instance_eval do
@schmurfy
schmurfy / app.rb
Last active December 21, 2015 04:19
scorched issue
require 'scorched'
class AppBase < Scorched::Controller
get('/1'){ render 'one' }
end
class App < AppBase
get('/2'){ render 'two' }
end
@schmurfy
schmurfy / Gemfile
Last active December 20, 2015 03:09
rails_inheritance_issue
source 'https://rubygems.org'
gem 'activerecord', '= 3.2.0'
# gem 'activerecord', '~> 4.0.0'
# gem 'activesupport', path: File.expand_path('../rails/activesupport', __FILE__)
# gem 'activemodel', path: File.expand_path('../rails/activemodel', __FILE__)
# gem 'activerecord', path: File.expand_path('../rails/activerecord', __FILE__)
gem 'sqlite3'
require 'rubygems'
require 'bundler/setup'
require 'celluloid'
require 'celluloid/monitoring'
require 'celluloid/autostart'
class SpyMaster
include Celluloid
#!/usr/bin/env ruby
#
# forking supervisor - forks workers and replaces dead workers.
# start it in one console, send signals to it from another console.
#
require 'rubygems'
require 'daemons/daemonize'
@schmurfy
schmurfy / workers.rb
Created September 20, 2012 21:22
Celluloid workers
require 'celluloid'
WORKERS_COUNT = (ARGV[0] || 1).to_i
class Output
include Celluloid
def puts(msg)
Kernel.puts(msg)
end
@schmurfy
schmurfy / actor_exit.rb
Created September 18, 2012 10:06
celluloid_testing
require 'celluloid'
class C
include Celluloid
def run
@active = true
while @active
puts "still running"
sleep 1