Ruby系统管理实战

出版时间:2008-12  出版社:机械工业出版社  作者:Andre Ben Hamou  页数:208  译者:仲田  
Tag标签:无  

前言

  几年前刚通过Python接触到Ruby时,我的第一感觉就是,和传统语言相比,Python已经够好了,可Ruby比Python还好!它的语法简单易懂、灵活多变,而且实现了真正纯粹的面向对象——-一切都是对象(例如1.upto(10)这种在传统语言中不敢想像的语法)。它在几十年来程序语言设计的前人经验积累基础上,进行了大胆的组合与创新,从量变到质变,达到了一个全新的高度。一直以来,我有一种观点:编程语言应该面向程序员,尽量为程序员提供便利,而不是为了方便机器编译,而让程序员背上不必要的学习和使用负担。Ruby正是这样一门语言,它让我有一种感觉:我找到了!  Ruby语言自从诞生以来,由于没有“杀手级”应用,一直默默无闻地在小范围传播,未得到广泛注意。直到2005年RubyonRails横空出世,世人才惊觉在耀眼夺目的Rails背后,有如此强大的Ruby。原来Ruby可以这么用,原来Ruby可以这么强!可以说,没有强大灵活的Ruby,就没有一鸣惊人的Rails!  本书让我们看到,Ruby在系统管理员手中,还可以得到进一步的发挥,让系统管理维护的日常繁杂事务变得如此井井有条,而且利用Ruby灵活而强大的语法,只需几行代码,即可快速解决问题。  值得一提的是,教授语言的大师BruceEckel(写过《ThinkinginC++》、《Thinkingin Java》、《Thinkingin Python》等获奖名著)和面向对象设计大师Martin Fowler(写过《Patˉternsof Enterprise Application Architecture》、《Refactoring》、《UML Distilled》、《Planning Extreme Programming》等获奖名著)都对Ruby推崇备至。自从Ruby出现后,他们也像常人一样从Python移情别恋了。  本书作者是Ruby“狂热分子”,他在自己就职的公司,尤其是本职岗位(系统管理员)推行Ruby,取得了良好的成果。他根据自己的亲身经历和丰富经验写成本书,其中涵盖UNIX(和Linux)管理员经常碰到的问题和日常例行工作,包括:  用单行脚本代码快速解决问题。  脚本的性能分析和优化。  利用Ruby强大的元编程实现领域专用语言。  用程序驱动和模板驱动等方式创建文件。  在文件和网络中实现对象的存储和读取。  利用XML和各种网络协议解析企业数据。  网络传输数据收集、事件监控和统计结果展示。  用GEM包扩展Ruby的功能。  用RAKE进行测试和文档生成。  本书译者分别为仲田、顾娟、吴畏、汪燕。其中仲田负责第1、2、3、5、8、10章和附录,顾娟负责第4、6章,吴畏负责第11、12章,汪燕负责第7、9章,最后由仲田统稿。  翻译的过程也是一种学习,通过翻译本书我才发觉自己的眼界非常狭窄,原来系统管理维护也是这么丰富多彩,其中的趣味和困难丝毫不亚于程序开发。本书让我大开眼界,希望也能让你感觉耳目一新,这样也不枉作者和译者的一番辛苦,当然,更对得起你为本书花费的人民币了。  祝你读得愉快!

内容概要

本书主要讲述用 Ruby来进行系统管理和维护。本书用Ruby来构建文件,存储和检索对象,接入数据云团,构建领域专用语言,处理企业数据,监控网络,执行网络流量分析,测试与编写文档等。本书帮助你掌握Ruby编码风格的实用技巧,学会分析和改进脚本的性能,并把关于脚本开发流程的实用建议加以运用。    本书适合系统管理人员和系统维护人员参考。

作者简介

Abdre Ben Hamou,目前就职于Freedom 255公司(英国主要的互联网服务商之一)。他毕业于英国帝国学院。

书籍目录

作者介绍 技术评审者介绍 作者致谢 引言第1章 Ruby能为你做什么  1.1 Hello World程序  1.2 Ruby内幕    1.2.1 对象漫谈:面向对象理论    1.2.2 对象实战:Ruby的OO观点    1.2.2 秘传技巧:读写方法省了很多事    1.2.3 块和yield的奥妙     1.2.4 包罗万象:关于类型的理性途径  1.3 管理员专用药膏第2章 常规任务的快速解决方案  2.1 单行代码示例    2.1.1 用Ruby进行grep匹配搜索    2.1.2 处理注释    2.1.3 运用行号    2.1.4 与字段打交道    2.1.5 巧妙的记录处理方法    2.1.6 创建定制的目录列表    2.1.7 定时监控命令执行情况  2.2 更大型的单行代码示例    2.2.1 翻转日志:定时执行的单行代码    2.2.2 Ruby跳板  2.3 当“写得快”遇上“跑得快”第3章 性能问题:实用主义观点  3.1 脚本可以运行得更快    3.1.1 数字游戏    3.1.2 脚本 VS 标准二进制程序  3.2 性能分析    3.2.1 UNIX的time命令    3.2.2 Benchmark性能基准库    3.2.3 Profiler性能优化分析库  3.3 性能优化    3.3.1 算法优化    3.3.2 语句优化    3.3.3 减轻副作用    3.3.3 扔下C炸弹  3.4 撞击瞬间速度第4章 元编程的威力  4.1 灵活的方法签名    4.1.1 默认值      4.1.2 散列表式参数    4.1.3 对缺失方法的动态指派  4.2 宏    4.2.1 模块包含    4.2.2 对象扩展    4.2.3 业务领域专用语言(DSL)    4.2.4 插件API:用来增加宏的宏  4.3 沉重的元编程第5章 用聪明的方法生成文件  5.1 安全第一     5.1.1 文件锁定     5.1.2 安全的文件操作方法  5.2 白纸黑字胜过空口无凭    5.2.1 群策群力:程序驱动式创建文件    5.2.2 电闪雷鸣:模板驱动式创建文件  5.3 当直白文件不再满足需要第6章 对象的存储和检索  6.1 本地磁盘存储    6.1.1 检视时间    6.1.2 汇集思想    6.1.3 YAML不是标记语言    6.1.4 评估其他备选方案的性能指标  6.2 网络感知存储     6.2.1 总体设计原则    6.2.2 memcached:天上有朵大散列    6.2.3 数据库    6.2.4 用ActiveRecord实现对象—关系映射  6.3 与大家伙打交道第7章 处理企业数据   7.1 解析数据     7.1.1 离别是如此甜蜜的忧伤:被界定符分隔的数据值     7.1.2 XML数据   7.2 网络服务    7.2.1 轻量级目录访问协议(LDAP)    7.2.2 XML远程方法调用(RPC)    7.2.3 简单对象访问协议(SOAP)    7.2.4 表示状态转换(REST)  7.3 回归基础  第8章 有趣又有收益的联网   8.1 基础网络I/O操作    8.1.1 给我套接字    8.1.2 套接字错误和异常    8.1.3 定时监控:有目的的超时    8.1.4 基于套接字的监控  8.2 高级网络服务    8.2.1 协议的羞耻    8.2.2 构建Web机器人    8.2.3 一起抛出服务器  8.3 监视与控制    8.3.1 用SSH获取命令    8.3.2 网络数据包监控  8.4 本章结尾第9章 网络监控  9.1 收集数据    9.1.1 简单网络管理协议(SNMP)    9.1.2 安全外壳  9.2 分析数据    9.2.1 汇集数据    9.2.2 事件解析    9.2.3 事件过滤与赋值     9.2.4 综合考虑    9.2.5 聚集分析  9.3 展示数据     9.3.1 图表    9.3.2 图  9.4 璀灿耀眼的宝物 第10章 Ruby的扩展:宝石在握  10.1 Gems的管理与使用    10.1.1 安装RubyGems     10.1.2 gem命令       10.1.3 在代码中使用Gems     10.1.4 通过gem_server访问文档   10.2 创建Gems       10.2.1 Gem到底是什么东西?     10.2.2 收集所需文件      10.2.3 编写gem规格说明书      10.2.4 构建Gem       10.2.5 发布Gem     10.3 满口宝石   第11章 测试与编写文档   11.1 Rake工具       11.1.1 基本任务     11.1.2 文件任务     11.1.3 确保目录存在     11.1.4 一般化规则       11.1.5 任务合成     11.1.6 编写文档的任务    11.2 测试      11.2.1 Ruby的测试库      11.2.2 执行测试      11.2.3 测试支架       11.2.4 测试包       11.2.5 用Rake做测试   11.3 编写文档       11.3.1 自动编写文档       11.3.2 基本注释      11.3.3 头标记、分隔符和链接     11.3.4 列表      11.3.5 处理命令     11.3.6 用Rake生成文档  11.3 任务完成 第12章 Ruby的未来   12.1 运行环境    12.1.1 YARV解释器    12.1.2 JRuby解释器  12.2 语言方面的变化    12.2.1 数组和散列表    12.2.2 字符串    12.2.3 I/O操作    12.2.4 块参数本地化    12.2.5 数组拆解    12.2.6 对象打拍子    12.2.7 读-写属性    12.2.8 Enumerable类升级  12.3 新的开始附录 Ruby的执行方法

章节摘录

  第1章 Ruby能为你做什么  正如在前言中所说,Ruby是我的首选语言,它是我解决系统管理问题时的本能选择。再强调一次,它在我心目中有如此高的评价,是因为它:  易于写出可读性极高的代码。  强调惯例忧于配置,因此一小段代码可以完成很多事情。  提供与C程序库的无缝接口机制。  ……

编辑推荐

  Ruby已红遍世界,成为Perl和Python全方位的真正挑战者。具体来说,越来越多的人正在见证Ruby灵活的语法机制、一流的功能特性,以及平缓的学习曲线,这让它成为从最不起眼的服务器到最大型的企业部署环境中系统管理维护任务的自然选择。  在本书中,你将学会用Ruby的方式来构建文件、接入数据云团、构建领域专用语言、执行网络流量分析,以及完成其他更多事务。  本书源自作者Andr6 Ben Hamou作为系统管理员的亲身经验,有助于你掌握Ruby编码风格的实用技巧,学会分析和改进脚本的性能,并把关于脚本开发流程的实用建议加以运用,包括怎样做测试和构建文档。  最重要的是,你会发现,Ruby的强大威力给系统管理维护带来极大的好处。  本书有以下特色:  对Ruby的基础概念和实用技巧给予同等关注。  从其他语言选取示例,便于程序员迁移到 Ruby。  体裁简明、行文风趣、内容丰富——和许多面向系统管理员的书籍不一样,那些书通常过于冗长,难以消化。

图书封面

图书标签Tags

评论、评分、阅读与下载


    Ruby系统管理实战 PDF格式下载


用户评论 (总计7条)

 
 

  •   虽然不贵,但不值得买,没什么有用的东西。ruby整个都是这样,而这本书尤其,太松散。做程序要性能设计开发多重效率。ruby只是很花哨,不实用。和c/python比差远了。
  •   很好的一本书!既能学习Ruby,有能掌握unix/linux系统管理知识,提高系统管理效率!实战性非常强!
  •   这本书不错,不像一般书那么厚,也没什么贴图贴代码才凑文字。书中的思想给出了很多编程方面的经验,举例很独到也很幽默。这样的计算机类书,才算好书。
  •   书好读起来才会有味道!
  •   一直在当当买书
  •   ror目前是web2.0开发比较火的一项技术。但是我是一名linux的系统管理员,对系统管理脚本语言比较感兴趣。perl不错,但是语法古怪,可读性比较差。ruby是一门语法优雅的面向对象编程语言,可读性好。Ruby系统管理实战这本书是目前唯一能够在市面上买到的关于系统管理编程方面的书籍,看看了还可以,但是内容深度不够,很多主题没有讲到。适合初级读者阅读。希望以后能够买到更多ruby方面的好书籍。
  •   有很多系统管理方面的技巧
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7