Ruby on Rails 入门之:(22) Ruby 中Time的使用

Ruby on Rails生产环境部署:Apache+Passenger+MySQL深度配置指南 Ruby on Rails 是典型的服务器端 Web 应用框架,其生产部署依赖于 Ruby 运行时、Web 服务器(如 Apache)与应用服务器(如 Passenger)的精密协同。理解 Passenger 作为 Ruby 和 Apache 之间的运行时桥梁机制,是解决 'App could not be started' 等静默失败的关键;而 MySQL 的 sql_mode、lower_case_table_names 等底层参数,则直接决定 ActiveRecord 行为一致性与数据完整性。本文面向 阅读详情

使用Time可以获取系统时间,也可以自己创建时间,还可以格式化输出系统的时间。


Time类的使用见代码:


#encoding:utf-8

time = Time.new;
puts time;
puts time.year;
puts time.month;
puts time.day;
puts time.hour;

puts "*****************************";

puts "使用mktime生成一个指定的时间";
mkTime1 = Time.mktime(2012,3,16);
puts mkTime1;

puts "使用local函数生成一个指定的时间";
mkTime2 = Time.local(2012,4,12);
puts mkTime2;

puts "使用gm方法生成一个指定的时间";
mkTime3 = Time.gm(2012,4,12);
puts mkTime3;

puts "使用to_a方法将时间转换成数组";
time2 = Time.new;
a = time2.to_a;
a.each do |item|
	puts item.to_s;
end
time3 = Time.new - time2;
puts "上面操作消耗的时间是:" + time3.to_s + "s";

puts "格式化时间输出";

time = Time.now;
puts time.strftime("%x");
puts time.strftime("%Y年%m月%d日 %H时%M分%S秒");

上面代码的输出为:


watkins@watkins:~/temp/workspace/ruby$ ruby time.rb
2012-10-15 16:00:40 +0800
2012
10
15
16
*****************************
使用mktime生成一个指定的时间
2012-03-16 00:00:00 +0800
使用local函数生成一个指定的时间
2012-04-12 00:00:00 +0800
使用gm方法生成一个指定的时间
2012-04-12 00:00:00 UTC
使用to_a方法将时间转换成数组
40
0
16
15
10
2012
1
289
false
CST
上面操作消耗的时间是:9.6729e-05s
格式化时间输出
10/15/12
2012年10月15日 16时00分40秒
watkins@watkins:~/temp/workspace/ruby$ 



Node.js vs Rails技术选型实战指南:从I/O模型到MVP上线决策 Web后端框架选型本质是运行模型与业务负载的匹配问题。Node.js基于事件循环的异步I/O模型天然适配高并发、低延迟、外部依赖密集型场景;Rails依托多进程+GIL的同步阻塞模型,在复杂业务逻辑、强数据一致性、快速MVP交付等场景中具备显著工程效率优势。二者差异不在抽象性能参数,而在于CPU密集型任务处理能力、错误定位成本、生态契约完备性及团队调试范式适配度。真实项目中,应依据TTFB占比、上线周期、数据模型稳定性、运维监控习惯等5个实操维度动态决策,而非追求单一‘最优解’。本文结合17个生产系统经验, 阅读详情

相关推荐

Capistrano部署入门:可审计、可回滚的Ruby自动化流水线

Capistrano是一种面向Web应用发布的结构化部署工具,其核心原理是将部署过程建模为带角色、阶段和依赖关系的有向执行图,通过Ruby DSL实现动态决策与错误传播,从而保障操作的可追溯性与可回滚性。相比声明式工具(如Ansible),它更擅长处理数据库迁移验证、服务健康检查、灰度切换等需条件判断与异常响应的工程场景。技术价值在于以最小侵入方式,在Linux服务器上构建标准化、可协作、符合最小权限原则的交付流水线。典型应用场景包括Rails应用持续发布、内网私有云标准化部署、遗留系统现代化改造等。本文聚

weixin_34301132的博客 398

Rails之关于时间(时区)

It’s About Time (Zones)这是时间系列的第一篇文章。第二篇的主题是 a case study in multiple time zones。Ruby提供了两个类来管理时间:Time和DateTime。Ruby1.9.3之后两者之间的区别越来越小。鉴于Time包含闰秒和夏令时的概念。本文中,我们将使用Time来举例。 TZInfo是一个时区库,提供不同时区的夏令时转换。它被封装成

ミ安之偌素 2703

Rails异步任务解耦:Sidekiq+Redis实战指南

异步任务处理是现代Web应用保障响应性能与系统稳定性的基础能力。其核心原理在于将耗时、非关键路径的操作(如邮件发送、文件处理、外部API调用)从同步请求流中剥离,交由独立工作进程异步执行,从而避免阻塞主线程、降低HTTP延迟、提升吞吐上限。技术价值体现在可靠性(失败重试、死信队列)、可观测性(队列监控、指标采集)与资源隔离(CPU/IO解耦)。典型应用场景包括电商下单后的库存更新、用户注册后的欢迎邮件、报表生成及第三方服务集成。本文聚焦Ruby on Rails生态,以Sidekiq与Redis组合为实践主

weixin_33713503的博客 414

rails 日期Date、时间Time的一些常用方法总结

获取当前时间当前时间Time.now1UTC时间,国际标准时间Time.now.utc1日相关今日开始时间00:00:00Time.now.beginning_of_day => 2016-07-24 00:00:00 +0800123今日结束23:59:59Time.now.at_end_of_day => 2016-07-24 23:59:59 +0800123昨日开始时间00...

ice_bling的博客 4434

手把手实战:RK3588上YOLOv8模型从训练到部署全流程解析

本文详细解析了在RK3588开发板上部署YOLOv8目标检测模型的全流程。从模型训练、正确导出适配的ONNX格式,到使用RKNN-Toolkit2进行模型转换与量化,最后在板卡上完成部署与性能测试。文章提供了完整的代码示例和关键避坑指南,帮助开发者高效实现嵌入式AI应用落地。

weixin_28224217的博客 404

10bit SAR ADC电路:200多页设计与仿真文档,附gpdk045工艺与testbench,可直接导入Virtuoso仿真,含以太网、PLL电路例程及进阶ADC

拥有超过200页的详细设计和仿真文档,它以gpdk045工艺为基础,testbench均可直接导入virtuoso仿真,为我们提供了一个全面了解ADC电路设计的绝佳机会。通过对10bit SAR ADC电路的详细解析,我们不仅了解了其设计背后的原理和实现方法,还体会到了数字与模拟技术的交融之美。这个SAR ADC的结构采用了经典的电荷重分配架构。一个10bit SAR ADC电路,有200多页详细的设计和仿真文档,附带对应的gpdk045工艺,testbench都有,可直接导入virtuoso仿真。

OMyAVKmGPBOF的博客 1333

rails时区配置

【代码】rail时区配置。

qq_48180430的博客 266

别再只飞不记了!用CsvView分析你的大疆飞行日志,优化航拍与排查炸机原因

本文详细介绍了如何利用CsvView工具分析大疆无人机的飞行日志,帮助用户优化航拍效率和飞行安全。通过解读飞行日志中的关键数据,如电池性能、飞行轨迹等,用户可以及时发现潜在问题并改进飞行习惯。文章还提供了事故排查方法和进阶分析技巧,适合无人机爱好者和专业飞手。

weixin_42535461的博客 548

Rails中的Time.now与Time.zone.now

Rails中Time.now直接获取系统时区当前时间(本地电脑时间) Time.zone.now获取Rails中设定时区的当前时间 例:config/application.rb中将时区设为东京时区 config.time_zone = 'Tokyo' Time.now获取本地电脑的北京时间 Time.zone.now获取之前设置好的东京时间

ミ安之偌素 1727

深入解析FastDDS:SHM与DATA-SHARING传输层的性能对比与实现细节

本文深入对比了FastDDS中SHM与DATA-SHARING两种传输层的实现机制与性能差异。SHM采用端口化共享内存模型,存在两次数据拷贝;而DATA-SHARING通过共享历史实现真正的零拷贝,大幅降低延迟与CPU占用。文章结合实战测试数据,为机器人、自动驾驶等高实时性场景提供了关键的性能优化选型与配置指南。

weixin_28358083的博客 231

AI大模型驱动的智能座舱研发体系重构

AI大模型正重构智能座舱研发体系的核心逻辑,需以场景认知为起点、混合架构为支柱、AI原生生态为落脚点。未来,研发体系需持续融合认知科学、边缘计算与开放生态理论,推动座舱从“工具”进化为“伙伴”。

我的专栏 1916

ruby on rails 常用的日期取值

ruby on rails 常用的日期取值获取当前时间 Time.nowUTC时间,国际标准时间 Time.now.utc日相关今日开始时间00:00:00 Time.now.beginning_of_day=> 2016-07-24 00:00:00 +0800今日结束23:59:59 Time.now.at_end_of_day=> 2016-07-24 23:59:59 +08

li_yong_kuan的专栏 5685

实例讲解CANoe报文解析使用方法

在日常工作中,经常需要分析车辆产生故障的原因,在电动汽车中,分布式控制器及线束在其中某一个地方出现问题,就有可能造成车辆故障,但是由于电气零件无法直观的观察到哪个部位发生了故障,所以要借助工具测量电气变量或者采集报文信息通过分析,解析出故障原因,从而为车辆的开发,测试,维修提供支持。其中汽车行业最通用的通讯方式就是CAN通讯,本文针对使用CANoe对CAN报文离线分析的使用方法做详细介绍。

qq_43011586的博客 1万+

Ubuntu 22.04下用rbenv管理Ruby版本的完整实践指南

Ruby 是一种动态、开源的编程语言,广泛用于 Web 开发,尤其与 Rails 框架深度绑定;版本管理则是保障多项目兼容性与环境可复现性的核心技术能力。其原理在于通过路径级拦截(shims)和环境变量控制,实现无需 root 权限、不污染系统 Ruby 的轻量级多版本共存。该技术显著提升开发效率与 CI/CD 稳定性,适用于 Rails 应用部署、遗留系统维护及团队标准化建设等场景。本文聚焦 Ubuntu 22.04 系统特性,详解 rbenv 与 ruby-build 协同工作的底层逻辑、依赖配置要点及

weixin_33795093的博客 420

【异常】Cursor导入Karpathy指南失败解决方案Failed to import GitHub/GitLab rules: Error executing git: Cloning into

摘要:本文解决了Git克隆单个文件报错的问题,指出git clone只能克隆整个仓库而非单个文件。提供了两种解决方案:1) 推荐手动创建规则文件,在Cursor项目中新建.mdc文件并粘贴Karpathy行为指南完整内容;2) 备选克隆整个仓库获取文件。指南包含编码行为规范,强调简单性、精准修改和明确目标。还说明了如何设置全局规则和即时生效的方法。

奶爸的编程之路,也就一周冷个三天 174

Docker:快速部署 Temporal 工作流引擎的技术指南

Temporal是一个开源的分布式工作流引擎,适用于复杂业务流程(如订单处理、支付流程等),提供状态持久化、自动重试、多语言SDK支持等特性。部署简单,支持Docker Compose,包含核心服务、Web UI及数据库。以TypeScript为例,开发者可快速编写工作流(如订单处理)和Worker,通过CLI或SDK启动和管理。Temporal简化了分布式系统的可靠性设计,适合电商、自动化任务等场景。

木头 640

Ubuntu 22.04下用rbenv管理Ruby版本的必要性与实操指南

Ruby 是 Rails 应用运行的基础解释器,其版本兼容性直接决定开发环境是否稳定可用;rbenv 作为轻量级 Ruby 版本管理工具,通过 PATH 劫持与目录隔离机制,实现多版本共存、项目级精准切换和无副作用卸载;相比系统包管理器 apt 安装的过时 Ruby(如 Ubuntu 22.04 自带的 2.7.4),rbenv 支持手动编译最新稳定版(如 Ruby 3.1.4),确保 OpenSSL、zlib、readline 等关键依赖正确链接,从而解决 gem native extension 编译失

weixin_34127717的博客 453

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Profiling模式完全攻略:用rails-perftest深入分析Rails代码执行效率

Rails应用的性能优化是提升用户体验的关键环节,而**rails-perftest**作为专业的性能测试工具,能帮助开发者精准定位代码瓶颈。本文将带你全面掌握Profiling模式的使用方法,通过实战案例和详细步骤,让你轻松上手Rails应用的执行效率分析。 ## 🚀 什么是Profiling模式? Profiling模式是rails-perftest提供的高级分析功能,它通过外部 pro

gitblog_00755的博客 673

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

CentOS 6 上安装 Ruby 2.6.10 与 Rails 6.1.7.6 完整指南

Ruby 是一种动态、开源的面向对象编程语言,以其简洁性和开发效率著称;Rails(Ruby on Rails)则是基于 Ruby 构建的全栈 Web 应用框架,强调约定优于配置。其核心原理依赖于 Ruby 运行时、gem 包管理机制及底层系统库(如 OpenSSL、zlib、libyaml)的协同工作。在老旧但仍在服役的生产环境中,如 CentOS 6 这类已停止官方支持的操作系统,Ruby 和 Rails 的部署面临内核 ABI 兼容性、SSL/TLS 协议演进、CA 证书过期、GCC 版本限制等多重技

weixin_33997389的博客 405

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

告别手动计算!business_time让Ruby时间处理效率提升10倍

在Ruby开发中,处理工作日和工作时间的计算常常让开发者头疼不已。无论是计算项目交付时间、处理工单响应时效,还是计算员工工作时长,传统的时间计算方式往往需要繁琐的手动判断节假日、周末和工作时段,不仅效率低下,还容易出错。而**business_time** gem的出现,彻底改变了这一现状,让Ruby时间处理效率提升10倍,轻松应对各类复杂的业务时间计算场景。 ## 什么是business_ti

gitblog_00869的博客 970

Ubuntu 22.04 Ruby 环境搭建:绕过 apt 陷阱,用 RVM 实现可复现开发环境

Ruby 是一种动态、面向对象的通用编程语言,其版本敏感性与依赖编译特性决定了本地开发环境必须兼顾隔离性与可复现性。在 Ubuntu 22.04 这类 LTS 系统中,apt 提供的系统 Ruby(3.0.2)存在版本滞后、缺失 dev 头文件、路径硬编码等根本缺陷,导致 nokogiri、pg 等含 C 扩展的 gem 编译频繁失败。RVM 通过源码编译管理、独立路径隔离和 gemset 沙箱机制,解决了 Ruby 版本切换、依赖锁定与跨环境一致性问题,成为工程化 Ruby 开发的事实标准。本文聚焦 Ub

weixin_34054931的博客 407

Ruby on Rails,在ubuntu中安装及使用rvm管理ruby版本

RVM的主要作用是方便的管理系统中的多个ruby版本而不至于混乱。 我们来看看如何安装RVM,我使用的ubuntu12.04LTS。 准备工作 后面需要使用curl,用dpkg -s curl命令检查一下系统中有没有安装 abbuggy@abbuggy-ubuntu:~$ dpkg -s curl Package: curl Status: install ok installed...

weixin_30457551的博客 128

Ruby for Rails笔记

http://blog.youkuaiyun.com/okmengmeng/article/details/9225685 byedebug http://railsguides.net/advanced-rails-model-generators/ integer primary_key decimal float boolean binary strin...

a662852186的博客 135

Ubuntu 14.04 下用 rbenv 安装 Rails 的工程实践指南

Ruby on Rails 是基于 Ruby 构建的全栈 Web 开发框架,其运行依赖特定版本的 Ruby 解释器与系统级 C 库(如 OpenSSL、Readline、SQLite3)。在老旧但仍在服役的 Linux 环境(如 Ubuntu 14.04)中,系统包管理器提供的 Ruby 版本过低、依赖缺失或 ABI 不兼容,导致 Rails 安装失败。rbenv 作为轻量级 Ruby 版本管理工具,不修改全局环境、无需 root 权限、仅依赖基础编译工具链,成为资源受限、权限受限、网络受限等边缘生产场景下

weixin_33910385的博客 449

Rails零停机部署实战:Puma+Foreman进程协同方案

零停机部署是现代Web应用的核心运维能力,本质是在操作系统层面协调进程生命周期、socket复用与信号处理。其技术原理依赖于Linux内核的SO_REUSEPORT机制、Puma的cluster模式优雅重启、以及Foreman对进程组状态的精确管控。该方案的价值在于规避服务中断风险,保障高并发场景(如日活1w+/QPS>50)下的用户请求连续性,广泛应用于SaaS、电商及自建Rails生产环境。本文聚焦Ruby on Rails生态中Puma与Foreman协同实现真正零停机的关键配置、内核约束与线上验证方

weixin_33966095的博客 423

Time.now.beginning_of_day

Time.now.beginning_of_day methodbeginning_of_dayRuby on Rails latest stable(v2.3.8) -0 notes- Class:ActiveSupport::CoreExtensions...

128
上一篇: Ruby on Rails 入门之:(21) ruby中代码块的使用以及动态执行代码
下一篇: Ruby on Rails 入门之:(23) Ruby 中文件,目录的操作
watkins
博客等级 码龄18年 1277粉丝 246原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值