
Ruby
文章平均质量分 92
居十四
君子性非异也, 善假于物也.
展开
-
Ruby on Rails concurrency 并发处理
Ruby on Rails concurrency 并发处理背景系统使用分布式部署, 在提高并发的同时, 也引入了并发问题.并发问题往往较难调试和处理.所幸, Rails 和 ruby 社区提供一些优秀的方案可以用来解决并发问题.这里做一个总结, 分享给大家.(受到个人的局限性, 文章后续会根据自己的经验再次更新.)概要并发问题的处理方式,大致分为2类 机制 和 分布式锁机制Uniqueness constraint 唯一性约束Optimistic Locking 乐观锁分布式原创 2022-05-18 22:18:29 · 519 阅读 · 0 评论 -
文件close后就一定持久化到硬盘了吗
文件close后就一定持久化到硬盘了吗背景关于文件操作的api是我们工作中经常使用到的.同时, 我们工作中的一些编程语言都提供了库函数方便我们直接调用.经常被提到的一个 best practice 就是文件不再使用后, 一定要close.例如下面的ruby代码:f = File.new("out", "w")f.write("1234567890") #=> 10f.close #=> nil但是, 文件被close掉后, 就一定在原创 2022-04-03 15:18:43 · 1878 阅读 · 0 评论 -
Rails 缓存
Rails 缓存caching_with_rails 中介绍了 Rails 缓存的相关内容;我结合工作中的使用写下了本篇文章; 部分内容翻译自 rails 的官方文档;简介缓存(cache)是一种提高应用性能的高效方式;通过缓存, 应用可以在一台服务器和单一的数据库下, 维持上千的并发用户;Rails 提供了一系列开箱即用的功能;掌握这些技术, 你的 Rails 应用可以服务上百网的浏览器, 并且不需要过高的响应事件和服务器要求;注意: rails 的缓存默认只有在 production 下原创 2021-08-29 18:03:30 · 556 阅读 · 0 评论 -
rack puma rails
rack puma rails背景2021 年 五一, 突然对 web server 与 rails 之间的关系,好奇我们的程序是如何接收到请求, 找到我们的业务程序代码, 并返回对应的结果的;于是, 便写下这篇文章;说明文章所涉及到的代码已上传 GitHub rack-puma-rails文章涉及到的程序版本rack 2.2puma 5.1rails 6.1文中提到的 web server 是指的服务器软件, 而非计算机.简述rack 是一个 ruby web server(原创 2021-05-03 19:10:52 · 706 阅读 · 0 评论