非常教程

Ruby 2.4参考手册

DRb

DRb::DRbSSLSocket

Parent:DRb::DRbTCPSocket

通过SSL套接字的DRb协议

基于SSL的DRb套接字的URI是:drbssl://<host>:<port>?<option>。该选项是可选的

公共类方法

new(uri,soc,config,is_established)显示源代码

创建一个DRb :: DRbSSLSocket实例。

uri是我们连接的URI。soc是我们绑定的tcp套接字。config是我们的配置。哈希或SSLConfig is_established是否soc是当前建立的布尔值

这是基于DRb协议自动调用的。

调用超类方法BasicObject.new

# File lib/drb/ssl.rb, line 305
def initialize(uri, soc, config, is_established)
  @ssl = is_established ? soc : nil
  super(uri, soc.to_io, config)
end

打开(uri,config)显示源文件

返回一个DRb :: DRbSSLSocket实例作为客户端连接,连接SSL。这是从DRb.start_service或连接到远程对象时调用的:

DRb.start_service 'drbssl://localhost:0', front, config

uri是我们连接到的URI,'drbssl://localhost:0'上面config是我们的配置。无论是哈希还是DRb :: DRbSSLSocket :: SSLConfig

# File lib/drb/ssl.rb, line 248
def self.open(uri, config)
  host, port, = parse_uri(uri)
  host.untaint
  port.untaint
  soc = TCPSocket.open(host, port)
  ssl_conf = SSLConfig::new(config)
  ssl_conf.setup_ssl_context
  ssl = ssl_conf.connect(soc)
  self.new(uri, ssl, ssl_conf, true)
end

open_server(uri,config)显示源文件

返回一个DRb :: DRbSSLSocket实例作为服务器端连接,SSL连接。这是从DRb.start_service或连接到远程对象时调用的:

DRb.start_service 'drbssl://localhost:0', front, config

uri是我们连接到的URI,'drbssl://localhost:0'上面config是我们的配置。无论是哈希还是DRb :: DRbSSLSocket :: SSLConfig

# File lib/drb/ssl.rb, line 268
def self.open_server(uri, config)
  uri = 'drbssl://:0' unless uri
  host, port, = parse_uri(uri)
  if host.size == 0
    host = getservername
    soc = open_server_inaddr_any(host, port)
  else
    soc = TCPServer.open(host, port)
  end
  port = soc.addr[1] if port == 0
  @uri = "drbssl://#{host}:#{port}"

  ssl_conf = SSLConfig.new(config)
  ssl_conf.setup_certificate
  ssl_conf.setup_ssl_context
  self.new(@uri, soc, ssl_conf, false)
end
Ruby 2.4

Ruby 是一种面向对象、命令式、函数式、动态的通用编程语言,是世界上最优美而巧妙的语言。

主页 https://www.ruby-lang.org/
源码 https://github.com/ruby/ruby
版本 2.4
发布版本 2.4.1

Ruby 2.4目录

1.缩略 | Abbrev
2.ARGF
3.数组 | Array
4.Base64
5.基本对象 | BasicObject
6.基准测试 | Benchmark
7.BigDecimal
8.绑定 | Binding
9.CGI
10.类 | Class
11.比较 | Comparable
12.负责 | Complex
13.计算续体 | Continuation
14.覆盖 | Coverage
15.CSV
16.日期 | Date
17.日期时间 | DateTime
18.DBM
19.代理 | Delegator
20.摘要 | Digest
21.Dir
22.DRb
23.编码 | Encoding
24.枚举 | Enumerable
25.枚举 | Enumerator
26.ENV
27.ERB
28.错误 | Errors
29.Etc
30.期望值 | Exception
31.错误类 | FalseClass
32.Fiber
33.Fiddle
34.文件 | File
35.文件实用程序 | FileUtils
36.查找 | Find
37.浮点 | Float
38.Forwardable
39.GC
40.GDBM
41.GetoptLong
42.Hash
43.Integer
44.IO
45.IPAddr
46.JSON
47.Kernel
48.语言 | 3Language
49.记录 | Logger
50.编排 | Marshal
51.MatchData
52.数学 | Math
53.矩阵 | Matrix
54.方法 | Method
55.模型 | Module
56.监控 | Monitor
57. 互斥 | Mutex
58.Net
59.Net::FTP
60.Net::HTTP
61.Net::IMAP
62.Net::SMTP
63.NilClass
64.数字 | Numeric
65.对象 | Object
66.ObjectSpace
67.Observable
68.Open3
69.OpenSSL
70.OpenStruct
71.OpenURI
72.OptionParser
73.路径名 | Pathname
74.完整输出 | PrettyPrint
75.Prime
76.Proc
77.过程 | Process
78.PStore
79.PTY
80.队列 | Queue
81.随机 | Random
82.范围 | Range
83.合理的 | Rational
84.Readline
85.Regexp
86.Resolv
87.Ripper
88.RubyVM
89.Scanf
90.SDBM
91.SecureRandom
92.Set
93.Shell
94.信号 | Signal
95.Singleton
96.套接字 | Socket
97.字符串 | String
98.StringIO
99.StringScanner
100.结构 | Struct