william.chan's blog

done is better than perfect

Gem: Sidekiq 如何处理异步任务

整体的架构 介绍任务的入队过程、Sidekiq 任务在 Redis 中的存储方式和消费者对任务的处理过程,除此之外,文章将介绍 Sidekiq 中间件的实现以及任务重试的原理。 参考链接 https://draveness.me/sidekiq/

Gem: sidekiq清空队列的两种方式

一是使用sidekiq的api,二是直接操作redis

使用sidekiq的api清空队列的任务 sidekiq里有提供操作队列的api,首先引入 require 'sidekiq/api' 获取所有队列:Sidekiq::Queue.all 获取默认队列:Sidekiq::Queue.new# the "default" queue 按名称获取队列:Sidekiq::Queue.new("mailer") 清空队列的所有任务:Sidekiq:...

Ruby: 类查找中 :: 的作用

:: 表示从顶层开始搜索

:: 表示从顶层开始搜索 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 class Violin class String attr_accessor :s, :vs def initialize @vs = self # 确保引用的是内置的原始 String 类,使用 `::` 双冒号 ...

Gem: 显示 Sidekiq Web UI

显示出sidekiq web ui的相关操作

Sidekiq Gemfile 1 2 gem 'sidekiq', '~> 6.0', '>= 6.0.6' gem 'sinatra', '~> 2.0', '>= 2.0.8.1' config/routes.rb 1 2 require 'sidekiq/web' mount Sidekiq::Web => '/sidekiq' bundl...

Ruby 语法:File.expand_path

项目中看到的 ruby 语法备注

File.expand_path 1 2 3 4 5 6 7 8 9 10 # config/application.rb # 加载 config/ 文件夹中的 property.rb 文件 require File.expand_path("../property", __FILE__) # __FILE__ 指当前文件 # ../ 表示 __FILE__ 的父目录 # 路径解析过程...

Linux 操作系统:/etc/passwd

《Linux 操作系统》用户账号文件 passwd

用户账号文件 /etc/passwd 文件的每一行 1 2 3 4 5 # 每一行保存一个用户的资料,用户数据按域以冒号 `:` 分隔 username:password:uid:gid:userinfo:home:shell # eg: webuser:x:500:500:webuser:/home/webuser:/bin/bash 用户影子文件 /etc/shadow 1 2...

Linux 操作系统:zip压缩

《Linux 操作系统》zip 用法介绍

获取帮助信息 1 2 3 4 zip -h unzip -h man zip man unzip zip 压缩 1 2 3 4 5 # 压缩当前目录下的 etc.tar 包和 hello.bak 目录及其下的所有文件 zip -r compress.zip etc.tar hello.bak/ # 压缩文件 production.sql zip production.sql.zip...

Linux 操作系统:tar

《Linux 操作系统》tar 归档程序的用法介绍

tar 命令可以为Linux的文件和目录创建档案。利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar 最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用 tar 命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。 弄清两个概念:打包和压...

Jekyll 语法使用说明

收集和记录一些不熟悉的 Jekyll 语法

文章翻译:中英切换的实现 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <!-- Chinese Version --> <div class="zh post-container"> {% capture about_zh %} {% include posts/2017-07-12-upgrading-el...

Linux 操作系统:gzip 和 gunzip

《Linux 操作系统》gzip 文件压缩程序的用法介绍

查看使用说明 1 2 3 gzip -h gunzip -h zcat -h gzip 压缩 这里的中括号 [] 通常表示参数可选 1 2 3 4 5 6 7 8 9 gzip [-acdfhlKnNqrtvV] [-level] [-S suffix] [file] gzip hello.rb # hello.rb.gz gzip hello.rb.gz gzip: ...