ruby
文章平均质量分 79
zdq0394
关注云计算(IaaS、PaaS)、大数据
展开
-
Ruby EventMachine - The Speed Demon
By Ilya Grigorik on May 27, 2008http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/Ruby EventMachine,作为一个框架既有大批拥趸(Evented Mongrel,Analogger, Evented Starling)也饱受非议。一定程度上,人们对框架的翻译 2012-08-08 19:38:52 · 1481 阅读 · 0 评论 -
基于盛大云IaaS部署CloudFoundry平台
本文主要介绍针对盛大云的IaaS平台搭建PaaS平台(CloudFoundry)的过程(单机版本)。(1)申请盛大云的云主机一台。配置类型为(标准主机 | 8 ECU (单核) 4G 60G),操作类型为(Ubuntu10.04 | 64位 基础),带宽(BGP线路2Mbps)(https://hbc2.grandcloud.cn/#/dashboard)。(2)以root账号登陆远程连接原创 2012-09-21 22:47:01 · 1536 阅读 · 0 评论 -
Cloud Found使用dev_setup进行单节点部署之排错分析
转载:http://blog.csdn.net/wearenoth/article/details/8035968最近开始学云计算,看了一些基本概念的书,发现以前的很多知识现在都用的上。只是有一些新的知识需要学习。废话不多说,遇到的第一个问题就是如何用Cloud Foundry部署一个自己的集群,当然第一步就是做一个单节点的PaaS平台。网上就有如何布置安装的帖子,我何转载 2012-10-18 10:41:30 · 1526 阅读 · 0 评论 -
cloudfoundry dev setup 分析以及chef学习
cf通过chef可以部署单节点实例。只需要按照http://support.cloudfoundry.com/entries/20407923-single-multi-node-vcap-deployment-using-dev-setup的介绍即可安装。本文就尝试着分析一下整个部署的流程,同时也对chef进行一些学习。vcap_dev_setup好了,首先从最外部的脚本进入,就转载 2012-10-18 15:20:29 · 1080 阅读 · 0 评论 -
Ruby的头号Gem:Rake
RakeRake简介Rake和Make及AntRake的意思是Ruby Make,一个用ruby开发的代码构建工具。Rake的英文意思是耙子,一种很朴实的劳动工具。真的是很贴切,Rake正是一个功能强大、勤勤恳恳的劳动工具。Rake会经常跟C/C++领域的make和Java世界的Ant进行对照,事实上,它们有很多相似的地方。我们先来看一下make和ant的历史。转载 2012-10-18 13:11:42 · 914 阅读 · 0 评论 -
CloudFoundry源码分析:Router
Router的实现主要由两部分组成: 一个是lib/router/router.rb,主要作用和nats服务器交互,管理router表。一个是lib/router/router_uls_server.rb,主要是处理各种外部请求。RouterRouter(lib/router/router.rb)主要通过注册事件和nats服务器交互,处理其他模块发布的信息,并统计一些运行信息。rout原创 2012-08-26 10:16:54 · 1129 阅读 · 1 评论 -
sinatra分析
sinatra分析原文:https://docs.google.com/document/pub?id=1fkYc_N7i8Q2VSDliq6v8eFlWsnQyccrgxoH4oZf6lY01.sinatra简介Sinatra is a DSL for quickly creating web applications in Ruby with min转载 2012-10-27 23:18:14 · 2083 阅读 · 0 评论 -
Ruby1.9与Ruby1.8的不兼容处
formal argument cannot be an instance variable:In ruby1.8 it’s possible to use an instance variable as a block argument:class Foo attr_accessor :bar def test [1,2,3].each {|@bar| } # @原创 2012-10-29 00:43:42 · 1221 阅读 · 0 评论 -
ubuntu10.04下ruby相关问题
(0)ubuntu10.04下安装ruby相关sudo apt-get install ruby build-essential libopenssl-ruby ruby1.8-dev irb rdoc libssl-dev libreadline5-dev zlib1g-dev(1)ubuntu10.04下安装bundler# gem install bundlerER原创 2012-10-16 22:19:58 · 999 阅读 · 0 评论 -
Ruby全局变量汇总
Ruby全局变量汇总名字English库名中文释义返回值$0$PROGRAM_NAME程序名字字符串$*$ARGV参数值数组$:无原创 2012-12-27 14:59:32 · 1417 阅读 · 0 评论 -
CloudFoundry源码分析:Service框架(1)
本文主要介绍cloud foundry的service框架,主要内容包括(1)service_gateway的启动过程;(2)service_node的启动过程;以及几个重点流程分析包括(3)服务的注册和注销;(4)服务实例的生成、删除、绑定、解绑1、service_gateway的启动过程一个服务的启动过程从VCAP::Services::Base::Gateway(vcap_servi原创 2013-01-05 16:04:38 · 2443 阅读 · 0 评论 -
Gem 与 Bundler - Ruby项目依赖管理
Gem 与 Bundler - Ruby项目依赖管理(此文转载,抱歉忘记出处了)gem与bundler是关于一个ruby项目的软件包依赖的, 它们是以一个ruby项目为中心的. 如果是跟项目无关的ruby运行环境的配置管理, 需要去了解 rvm 与 gemset.gem:gem就是ruby的软件包. 一个gem就是一个ruby软件.转载 2012-10-16 09:05:13 · 12331 阅读 · 3 评论 -
CloudFoundry源码分析:vcap-tool
概述vcap-tool,顾名思义,是vcap平台的一个工具。这个工具将vcap平台的运行数据整合进OpenTSDB。OpenTSDB是一个基于HBase的、分布式的、可扩展的Time Series Database (TSDB)。OpenTSDB was written to address a common need: store, index and serve metrics collect原创 2012-10-15 11:09:18 · 1170 阅读 · 0 评论 -
Ruby Fiber指南(一)基础
这是一个Ruby Fiber的教程,基本是按照《Programming in lua》中讲述协程章节的顺序来介绍Ruby Fiber的,初步分为5节:基础、参数传递、过滤器、迭代器、应用。这是第一节,介绍下Ruby Fiber的基础知识。 Ruby 1.9引入了Fiber,通常称为纤程,事实上跟传统的coroutine——协程是一个概念,一种非抢占式的多线程模型。所谓非抢占式就是当一转载 2012-08-29 10:00:39 · 1563 阅读 · 0 评论 -
Ruby Fiber指南(三)过滤器
在学习了Fiber的基础知识之后,可以尝试用Fiber去做一些比较有趣的事情。这一节将讲述如何使用Fiber来实现类似unix系统中的管道功能。在unix系统中,可以通过管道将多个命令组合起来做一些强大的功能,最常用的例如查找所有的java进程:ps aux|grep java通过组合ps和grep命令来实现,ps的输出作为grep的输入,如果有更多的命令就形成了一条过滤链。过滤器本质转载 2012-08-29 10:03:25 · 1464 阅读 · 0 评论 -
Ruby Fiber指南(二)参数传递
这一篇其实也算是Fiber编程的基础篇,只不过参数传递算是一个比较重要的主题,因此独立一节。参数传递发生在两个Fiber之间,作为Fiber之间通讯的一个主要手段。 首先,我们可以通过resume调用给Fiber的block传递参数:1 #resume传递参数给fiber2 f=Fiber.new do |a,b,c|3 p a,b,c4 end5转载 2012-08-29 10:02:07 · 1312 阅读 · 0 评论 -
Ruby Fiber指南(四)迭代器
原文:http://www.blogjava.net/killme2008/archive/2010/03/12/315257.html上一节介绍了利用Fiber实现类unix管道风格的过滤链,这一节将介绍利用Fiber来实现迭代器,我们可以将循环的迭代器看作生产者-消费者模式的特殊的例子。迭代函数产生值给循环体消费。所以可以使用Fiber来实现迭代器。协程的一个关键特征是它可以不断颠倒调用者转载 2012-08-29 10:04:54 · 937 阅读 · 0 评论 -
EventMachine简介
简介Eventmachine是什么?Eventmachine能用来做什么?第一个问题很好回答:EventMachine是Reactor模式的一个高性能实现。按照Wikipedia的定义:Reactor模式是一个处理服务请求的并发编程模型。多个服务请求同时发往一个服务句柄(Service Handler)。服务句柄(Service Handler)多路分用到来的请求并把它们同步转发给相关的请求处翻译 2012-08-24 00:31:11 · 4323 阅读 · 0 评论 -
Ruby Actor指南(五)实现Actor
写这个指南的时候,计划是第五章写一个Fiber的应用例子,但是一时没有想到比较好的例子,模仿《Programming in Lua》中的多任务下载的例子也不合适,因为Ruby中的异步HttpClient跟lua还是很不一样的,体现不了Fiber的优点。因此,这第五节一直拖着没写。 恰巧最近在小组中做了一次Erlang的分享,有人问到Erlang调度器的实现问题,这块我没注意过,那时候就根转载 2012-08-29 10:05:53 · 1296 阅读 · 0 评论 -
CloudFoundry源码分析:Cloud Controller(2) vmc push命令执行过程分析
概述众所周知,Cloud Controller的主要功能之一就是作为CF的管理平台和VMC交互。本文以vmc push命令为线索分析把一个app应用上传到CF平台的过程。vmc pushVMC PUSH主要过程是把一个APP应用上传到CF平台,然后启动APP应用。为此,VMC PUSH命令执行过程中要和CC做多次交互:包括检查状态、是否重名等等,这里主要介绍其中主要的步骤中Client原创 2012-09-30 20:37:15 · 1675 阅读 · 1 评论 -
CloudFoundry源码分析:Cloud Controller(1)平台信息和用户管理
概述Cloud_Controller是Cloud Foundry的中心控制器,负责整个Cloud Foundry管理工作:包括平台信息管理、用户管理、应用管理、服务管理等。业务模块Cloud_Controller是一个标准的rails应用(除了views部分)。通过路由表,我们可以发现Cloud_Controller的所有请求及处理入口,主要包括四个部分(1)平台相关信息(in原创 2012-09-27 13:59:40 · 1644 阅读 · 0 评论 -
CloudFoundry源码分析:DEA
DEA(Droplet Execution Agent),主要流程都在agent.rb文件中实现。由于CloudFoundry平台是以NATS为中心的,只要弄清楚了这个组件能够处理的NATS消息,也就清楚了这个组件的基本流程。DEA也不例外。Agent主要注册了以下几种事件,下面分别介绍这些方法的实现流程 。 NATS.subscribe('dea.s原创 2012-09-25 13:13:41 · 1289 阅读 · 0 评论 -
CloudFoundry源码分析:NATS
简介NATS是一个轻量的消息发布-订阅系统。NATS的核心是Event machine。Server名为server.rb的文件有两个。一个是lib/nats/server.rb,这个是server包装类,也就是server的入口类:Server包装类通过EventMachine启动了两个服务。(1) Nats Server,核心消息服务器EventMachine::s原创 2012-08-17 23:20:41 · 3863 阅读 · 1 评论 -
CloudFoundry源码分析:Service框架(2)
本文主要介绍cloud foundry的service框架,上接(http://blog.csdn.net/zdq0394/article/details/8464269),主要内容包括(5)Cloud Controller和Service Gateway的交互过程 (6)Service Gateway和Service Node的交互过程。5、Cloud Controller和Service原创 2013-01-06 14:59:48 · 1299 阅读 · 0 评论