rgw main

说明关闭标准的错误输出,而使用标准输出替换.这是因为FCGX 将信息输出到了STDOUT.

参数:
默认参数 –debug-rgw 和 –keystring , 如果 argv 中具备输入参数, 则通过argv_to_vec替换这些默认参数.
函数 argv_to_vec 和 env_to_vec 表示将环境变量参数和输入参数都输出到args 中.

根据输入参数和默认输入参数,通过函数global_pre_init进行初始化, 在该函数中生成对下面重要的全局变量进行初始化操作. 这个函数分析会放在以后的章节中讨论,本身的几个参数也非常的重要.花费一个章节,来讨论该函数.
CINIT_FLAG_UNPRIVILEGED_DAEMON_DEFAULTS : 默认类型, 无特权. 这个是和下面的几个对应而言的.



通过配置g_conf->rgw_frontens 获取到frontends , 该容器中存放frontend的类型.
如果这个容器为空了, 则将fastcgi存放到该容器中.

该段是对前端进行信息的初始化,并将其存放在fe_map容器中,Civetweb因为其本身是内置在Radosgw中的, 所以需要加上一些特殊的处理. 端口以及flags

获取到frontend后,继续初始化操作.

如果参数中具有-h 或者 –help, 则usage()后退出.

该函数并没有内容.

将该用做成daemon的模式.以便后台运行,

初始化超时锁,当应用初始化操时时会返回退出.

进入初始化操作.
Enable_perf_counter() 初始化计数统计.
Common_init_finish() 初始化加密类 以及 service_thread . (admin_sock 的内容被接收.)

Rgw_tools_init 初始化ext_mime_type表
Rgw_init_resolver 初始化RGWSolver类,该类用于解析host/cname后续专门章节解析RGWResolver类.

对于Curl 以及FCGX_Init的初始化,调用是外部的.so的API.
rgw main的更多相关文章
- ceph rgw multisite基本用法
Realm: Zonegroup: 理解为数据中心,由一个或多个Zone组成,每个Realm有且仅有 一个Master Zonegroup,用于处理系统变更,其他的称为Slave Zonegroup, ...
- RGW Data Layout
目录 Overview metadata bucket index data RGW Pools RGW Object References Overview RGW 中三个基本概念:user, bu ...
- 010 Ceph RGW对象存储
一.对象存储 1.1 介绍 通过对象存储,将数据存储为对象,每个对象除了包含数据,还包含数据自身的元数据 对象通过Object ID来检索,无法通过普通文件系统操作来直接访问对象,只能通过API来访问 ...
- python下的web服务器模块
python下的web服务模块有三种: BaseHTTPServer: 提供基本的Web服务和处理器类,分别是HTTPServer和BaseHTTPRequestHandler SimpleHTTPS ...
- ceph S3客户端操作--s3cmd
S3 client 访问ceph rgw 安装: yum install s3cmd 验证安装是否成功: $s3cmd --version s3cmd version 1.5.2 #表示安装成功 在c ...
- CEPH-4:ceph RadowGW对象存储功能详解
ceph RadosGW对象存储使用详解 一个完整的ceph集群,可以提供块存储.文件系统和对象存储. 本节主要介绍对象存储RadosGw功能如何灵活的使用,集群背景: $ ceph -s clust ...
- Ceph RGW服务 使用s3 java sdk 分片文件上传API 报‘SignatureDoesNotMatch’ 异常的定位及规避方案
import java.io.File; import com.amazonaws.AmazonClientException; import com.amazonaws.auth.profile ...
- cosbench 压测RGW生产环境
配置信息: 使用 2个万兆网卡的RGW主机,并用OSPF做高可用和负载均衡. Ceph OSD集群 有21Node (万兆网卡+ 12个4T SATA机械硬盘) 测试VM配置: 使用在使用VXLA ...
- Cosbench测试 RGW S3 path_style_access=true模式支持
使用Ceph RGW Cosbench 测试时,文档中没有写如何使用 path_style_access 模式的方法. 查看了一下cosbench源码发现已经支持,只是文档没有写. 提交了一个iss ...
随机推荐
- ES5_03_Object扩展
ES5给Object扩展了一些静态方法, 常用的2个: 1. Object.create(prototype, [descriptors]) * 作用: 以指定对象为原型创建新的对象 * 为新的对象指 ...
- web前端css(三)
一 . 文本属性和字体属性(常用) 1. 文本属性 text-align: left, right, enter, justify(两端对齐,只适用于英文); /*对齐方式*/ color: ...
- kuangbin专题专题四 Frogger POJ - 2253
题目链接:https://vjudge.net/problem/POJ-2253 思路: 从一号到二号石头的所有路线中,每条路线中都个子选出该路线中两点通路的最长距离,并在这些选出的最长距离选出最短路 ...
- ServiceFabric极简文档-4.0 开发环境搭建
1. VS2017安装包启动页,安装Azure.(安装的VS的Tool)2. 下载Service Fabric Web PI,安装Service Fabric(自动安装SDK与Runtime)
- 20140117-配置文件为什么放在UI层
配置文件为什么放在UI层 (刚才写着代码突然忘了配置文件为什么要放在UI层了,只记得晓虎老师强调过.找了半天视频……) 现总结一下: 晓虎老师给出的理由,大体如下:比如一个web项目,分成三层,DAL ...
- 【原创】一个shell脚本记录(实现rsync生产文件批量迁移功能)
#!/bin/bash #Date:2018-01-08 #Author:xxxxxx #Function:xxxxxx #Change:2018-01-17 # #设置忽略CTRL+C信号 trap ...
- Guid几种格式及之间的互换,以及利用Base64缩短guid的长度到22个字符和还原
1.Guid.NewGuid().ToString("N") 结果为: 38bddf48f43c48588e0d78761eaa1ce6 2.Guid.NewGuid().ToSt ...
- python菜鸟基础知识(一)
第三章 基础 3.1程控制语句 3.1.1if语句 1.单if if 关键字 空格 条件 冒号 缩进 结果 print(1) if 3 > 2: print(9) print(8) 2 ...
- spark 源码分析之十七 -- Spark磁盘存储剖析
上篇文章 spark 源码分析之十六 -- Spark内存存储剖析 主要剖析了Spark 的内存存储.本篇文章主要剖析磁盘存储. 总述 磁盘存储相对比较简单,相关的类关系图如下: 我们先从依赖类 Di ...
- springBean生命周期----来自spring实战总结
1.Spring对bean进行实例化 2.Spring将值和bean的引用注入到bean对应的属性中(比如说注入到被依赖的bean的方法中或属性里) 3.如果bean实现了BeanNameAware接 ...