摘要: 一、Rack中间件 1、什么是中间件 中间件其实就是Ruby应用服务器和Rack应用程序之间执行的代码 2、一个简单的例子 $LOAD_PATH.unshift(File.dirname(__FILE__)) require 'rack' require 'decorator' my_app = l 阅读全文
posted @ 2022-05-12 00:09 阿拉懒神灯 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 一、什么是Rack Rack是ruby应用服务器和Rack应用程序之间的接口, 这里面Ruby应用服务器可以是Webrick、thin等,Rack应用程序可以是rails、Sinatra等(其实 现在主流的ruby的Web框架都是基于Rack的)。在上图中,当用户的请求到达应用服务器时,应用服务器会 阅读全文
posted @ 2022-05-11 23:51 阿拉懒神灯 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 我们在部署rails应用时,大多时候都使用Nginx+Passenger的方式部署,本文主要对此架构下 Passenger的作用及其工作原理进行梳理。 一、什么是Passenger? Phusion Passenger是一个开源的Web应用服务器,它能够处理HTTP请求,管理进程和资源、 系统监控以 阅读全文
posted @ 2022-05-11 23:28 阿拉懒神灯 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 用过ruby人对method_missing肯定不陌生,通常我们利用这一神技来实现调用不存在的方法,以便进行回调,利用它可以很方便的实现我们自己的DSL。 在学习method_missing之前,先理解下ruby方法调用过程 当ruby对象执行某一方法时,他需要找到这个方法,其查找流程如下: 1、查 阅读全文
posted @ 2022-05-10 00:41 阿拉懒神灯 阅读(87) 评论(0) 推荐(0) 编辑
摘要: Ruby提供了ripper这个工具,我们可利用此工具分析ruby代码,方便定位性能问题。 以下内容都是以如下代码为例: x > 100 ? 'foo' : 'bar' Ruby在执行程序前会将代码转化为更加结构化的语句 第一步:将代码切分为一个一个的词条 ripper的tokenize的方法可以将代 阅读全文
posted @ 2022-05-10 00:37 阿拉懒神灯 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 一、介绍 iostat用于监视系统IO以及CPU使用情况。 二、安装 sudo apt-get install sysstat 三、语法和选项、参数 语法:iostat [选项] [参数] 选项: -c:仅显示CPU使用情况 -d:仅显示设备IO情况 -k:显示状态以kb/s为单位 -m:显示状态以 阅读全文
posted @ 2022-05-10 00:27 阿拉懒神灯 阅读(133) 评论(0) 推荐(0) 编辑
摘要: Sinatra是一个ruby的轻量级Web框架,这这个框架总共就1000多行代码,非常简洁,值得一读。 一、Sinatra组成 Sinatra的主要实现的代码在base.rb中,主要有以下几个部分: Request:继承于Rack::Request,用于描述一个请求,通过这个类可以很方便获取到请求 阅读全文
posted @ 2022-05-10 00:20 阿拉懒神灯 阅读(92) 评论(0) 推荐(0) 编辑
摘要: kubectl作为我们主要的操作K8S的工具,其具备非常丰富的功能,但是如果不经过打磨,使用起来还是存在诸多不便,今天我们来看看如何将我们的kubectl打磨的更加易用。 一、命令自动补全 kubectl中提供非常多的命令,如果每一次都要手动一个字符一个字符的敲未免太累了,那么如何配置自动补全呢?这 阅读全文
posted @ 2022-02-12 10:33 阿拉懒神灯 阅读(532) 评论(1) 推荐(0) 编辑
摘要: Pod在整个生命周期中被系统标示为各种状态,熟悉Pod的各种状态对于理解Pod的调度策略、重启策略很有必要。 一、Pod生命周期 Pod的所处阶段信息保存在PodStatus.Phase,Phase有如下几种值: Pending: API Server已经创建该Pod,但一个或多个容器还没有被创建, 阅读全文
posted @ 2022-01-25 09:10 阿拉懒神灯 阅读(313) 评论(0) 推荐(0) 编辑
摘要: Kubernetes在创建Pod时,会为Pod和容器设置一些额外的信息,比如Pod名称、Pod IP、Node IP、Label、Annotation、资源限制等,我们经常会在应用程序中使用到这些数据,比如利用Pod名称作为应用日志的字段,方便分析日志。为了能在容器内获取这些信息,我们可以使用Dow 阅读全文
posted @ 2022-01-25 09:08 阿拉懒神灯 阅读(543) 评论(0) 推荐(0) 编辑