一、什么是 Subversion?

(本文永久地址:http://www.jb51.cc/article/p-srhokzqs-bmq.html)

Subversion 是一个免费/开源的版本控制系统(version control system,VCS),也就是说,Subversion 可以跨越时间地对文件和目录,以及它们的修改进行管理. 这就允许你恢复数据的旧版本,或检查数据的修改历史. 由于这个特点,很多人把版本控制系统看成是一种“时间机器”。

Subversion 可以跨越网络进行操作,这就允许多个用户在不同的机器上工作. 从某种程度上讲,允许用户在各自的空间里修改和管理同一组数据可以促进团队协作,因为修改不再是单线进行,开发速度会更快. 由于所有的工作都被记录在,也就不用担心并行开发会降低软件的质量―如果出现不正确的修改,只要撤消那一次更改操作即可。

某些版本控制系统同时也是软件配置管理 (software configuration management,SCM) 系统. 这种系统经过精巧的设计,专门用于管理源代码树,具备许多与软件开发有关的特性―理解编程语言,提供了程序构建工具. Subversion 不是 SCM,它是一个通用系统,可以管理任意类型的文件集合. 对你来说,这些文件可能是源代码文件―对别人来说,可能是一个货物清单或数字电影。

二、Subversion 的架构

wKioL1l8LDrhuW5tAAFZGxQmg-k305.png-wh_50

图中的一端是存放所有版本数据的 Subversion 仓库,另一端是 Subversion 客户端程序,客户端程序管理着部分版本数据在本地的映射. 两端之间是穿过仓库访问 (Repository Access) 层的多条访问路径,其中一些路径跨越计算机网络,通过网络服务器对仓库进行访问,其他一些路径则不经过网络,直接访问仓库.

三、Subversion 的组件

svn

客户端命令行工具

svnversion

用于报告工作副本状态 (就项目的版本号而言) 的工具

svnlook

可以直接检查仓库的工具

svnadmin

用于创建,调整或修复 Subversion 仓库的工具

mod_dav_svn

Apache HTTP 服务器插件,该插件允许用户通过网络访问仓库

svnserve

一个定制的,可独立运行的服务器程序,可以以守护进程方式运行,也可以被 SSH 调用,这是另一种允许用户通过网络访问仓库的方法

svndumpfilter

过滤 Subversion 仓库转储数据流的程序

svnsync

可以跨越网络对仓库进行增量镜像备份的程序

svnrdump

可以跨越网络对仓库历史进行转储和加载的程序

svnmucc

该工具支持在没有工作副本的情况下,在一个单独的提交中对多个仓库执行基于 URL 的操作


四、安装Subversion前的准备

安装一些常用的依赖包

yum install -y make gcc gcc-c++ perl zlib-devel libaio libpng libpng-devel libjpeg-devel pcre-devel

yum install -y libXpm-devel openssl openssl-devel libxml2-devel bzip2-devel.x86_64 libjpeg-turbo-devel

yum install -y freetype freetype-devel libtool cmake ncurses-devel bison re2c curl-devel wget

rpm -ivh "http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm"

yum install -y libmcrypt-devel re2c unzip

安装Subversion需要的依赖包

(详情可参考官方文档:http://svn.apache.org/repos/asf/subversion/trunk/INSTALL)

1. Apache Portable Runtime 1.3 or newer

cd /usr/localhost/src

wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-1.5.2.tar.gz

wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

tar zxvf apr-1.5.2.tar.gz

cd apr-1.5.2

./configure --prefix=/usr/local/apr

make && make install

cd ..

tar zxvf apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

./configure --prefix=/usr/local/apr --with-apr=/usr/local/apr

make && make install

2. Zlib

http://www.zlib.net/

下载的当前版本为zlib-1.2.11.tar

解压后执行

./configure

make && make install

3. autoconf 2.59 or newer

yum install autoconf �Cy

4. libtool 1.4 or newer

yum install libtool -y

5. Apache Serf library 1.3.4 or newer

cd /usr/local/src

wget http://archive.apache.org/dist/serf/serf-1.2.1.tar.bz2

tar jxvf serf-1.2.1.tar.bz2

cd serf-1.2.1

yum install expat expat-devel �Cy

./configure --prefix=/usr/local/serf --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

make && make install

6. OpenSSL(OPTIONAL)

yum install openssl �Cy

7. Berkeley DB 4.X (可选安装)

yuminstall db4 -y

8.Cyrus SASL library (OPTIONAL)

yum -y install cyrus-sasl*

9. dbus

yum install dbus

10. Qt 4 (可选安装)

yum install qt qt-devel

11. GLib 2 (Unix only,OPTIONAL)

yum install glib2 glib2-devel

12. KDELibs 4 (可选安装)

yum install kdelibs kdelibs-devel

13. Python 2.7 or newer (https://www.python.org/)

(可选择安装)

14. sqlite(required)

https://www.sqlite.org/download.html

cd /usr/local/src

wgethttp://www.sqlite.org/2017/sqlite-amalgamation-3180000.zip

unzip sqlite-amalgamation-3180000.zip

先解压好,后面安装Subversion时要用到


五、安装Apache Web Server(2.2.X or newer)

下载源码包

cd /usr/local/src

wget http://mirrors.sohu.com/apache/httpd-2.2.34.tar.gz

tar zxvf httpd-2.2.34.tar.gz


编译&&安装

cd httpd-2.2.34

./configure --prefix=/webapp/apache2 --enable-dav --enable-dav-fs--enable-dav-lock --enable-so --enable-rewrite --enable-modules=all --enable-mods-shared=all --with-mpm=prefork --enable-maintainer-mode --enable-ssl--with-ssl --with-pcre --with-include-apr

make && make install

配置apache

cd /webapp/apache2/

vi conf/httpd.conf

找到

#ServerName www.example.com:80

改成

ServerName localhost:80

检查配置文件语法

bin/apachectl -t

配置启动脚本

cp /usr/local/src/httpd-2.2.34/build/rpm/httpd.init/etc/init.d/httpd

注意文件中有三处主要的地方需要修改下的:

httpd=${HTTPD-/webapp/apache2/bin/httpd}

pidfile=${PIDFILE-/webapp/apache2/logs/${prog}.pid}

CONFFILE=/webapp/apache2/conf/httpd.conf

请根据自己的安装目录更改相应的路径!

然后运行如下命令:

chmod +x /etc/init.d/httpd

chkconfig --add httpd

chkconfig httpd on

/etc/init.d/httpd start

netstat -lnp |grep httpd


六、安装Subversion

官网下载地址:http://subversion.apache.org/download.cgi

这里我们下载1.8版

cd /usr/local/src

wget http://mirrors.tuna.tsinghua.edu.cn/apache/subversion/subversion-1.8.18.tar.gz

tar zxvf subversion-1.8.18.tar.gz

把解压好的sqlite复制到subversion目录下

mv sqlite-amalgamation-3180000subversion-1.8.18/sqlite-amalgamation

cd subversion-1.8.18

./configure --prefix=/webapp/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --enable-mod-activation --with-apache-libexecdir=/webapp/apache2/modules --with-apxs=/webapp/apache2/bin/apxs --with-serf=/usr/local/serf --with-zlib

make && make install

创建版本库:

要创建一个版本库,首先要确定采用哪种数据存储方式。在 Subversion 中,版本库的数据存储有两种方式,一种是在 Berkeley DB 数据库中存放数据;另一种是使用普通文件,采用自定义的格式来储存,称为 FSFS

两种版本库数据存储对照表

特性 Berkeley DB FSFS
对操作中断的敏感 很敏感;系统崩溃或者权限问题会导致数据库“塞住”,需要定期进行恢复。 不敏感。
可只读加载 不能 可以
存储平台无关 不能 可以
可从网络文件系统访问 不能 可以
版本库大小 稍大 稍小
可扩展性:修订版本树的数量 数据库,没有限制 许多古老的本地文件系统在处理单一目录包含上千个条目时出现问题。
可扩展性:文件较多的目录 较慢 较快
速度:检出最新的代码 较快 较慢
速度: 大的提交 较慢,但是时间被分配在整个提交操作中 较快,但是最后较长的延时可能会导致客户端操作超时
组访问权处理 对于用户的umask设置十分敏感,最好只由一个用户访问。 对umask设置不敏感
功能成熟时间 2001年开始使用 2004年开始使用


确定了具体的数据存储类型,只要在命令行当中执行 svnadmin 命令就可以创建一个 Subversion 版本库,命令如下:


创建文件夹

mkdir /webapp/svndata

PATH=$PATH:/webapp/subversion/bin


执行svnadmin命令创建版本库,指定数据存储为FSFS

svnadmin create --fs-type fsfs /webapp/svndata/data


如果要指定为Berkeley DB,则将fsfs替换为bdb

对于Subversion 1.2以后版本,svnadmin缺省使用fsfs文件系统后端创建版本库。


ll /webapp/svndata/data/

总用量 24

drwxr-xr-x. 2 root root 4096 7月 28 07:29 conf

drwxr-sr-x. 6 root root 4096 7月 28 07:29 db

-r--r--r--. 1 root root 2 7月 28 07:29 format

drwxr-xr-x. 2 root root 4096 7月 28 07:29 hooks

drwxr-xr-x. 2 root root 4096 7月 28 07:29 locks

-rw-r--r--. 1 root root 246 7月 28 07:29 README.txt

conf 目录下存放了版本库的配置文件,包括用户访问控制和权限控制等内容;

db 目录下存放着 Subversion 所要管理的所有受版本控制的数据;

hooks 目录存放着钩子脚本及其模版(一种版本库事件触发程序);

locks 目录存放着 Subversion 版本库锁定数据;

format 文件记录了版本库的布局版本号。

svn import 命令来进行项目的导入:

svn import /tmp/ file:///webapp/svndata/data/ --message "init"

确认导入的项目是否正确:

svn list --verbose file:///webapp/svndata/data/

查看最新修订版本的信息:

svnlook info /webapp/svndata/data

"--revision 版本号",指定某一个修订版的显示:

svnlook info /webapp/svndata/data --revision1

显示版本库的具体树形结构,后面的--show-ids选项指定显示每一个显示元素的修改版本 ID

svnlook tree /webapp/svndata/data/ --show-ids


基本的服务器配置

svnserve 是一个轻量级的服务器, 使用自定义的协议通过TCP/IP与客户端通讯。客户端通过由 svn:// 或者 svn+ssh:// 开始的URL访问svnserve服务器。


启动SVN服务器:

svnserve �Cd -r /webapp/svndata

-i作为 inetd 启动

-d做为守护进程启

-r用来指定版本库的根路径

在客户端使用 TortoiseSVN 可以通过如下形式访问服务器:

svn://服务器IP/data

版本库的 conf 子文件夹下的配置文件说明:

1svnserve.conf

[general]

# anon-access = read #匿名用户的权限

# auth-access = write #认证用户的权限

password-db = passwd #指定密码文件

# authz-db = authz #权限控制文件

# realm = My First Repository

2passwd文件的配置及说明

[users]

# harry = harryssecret

# sally = sallyssecret

等号前面是用户名,后面是密码,密码是明文的。更改svnserve.conf的时候,需要重启SVN,更改authzpasswd文件,不需重启。

3authz文件的配置及说明

[groups]

# harry_and_sally = harry,sally

groups定义的变量就是组名,1个用户组可以包含1个或者多个用户,逗号分隔,上例中harry_and_sally就是一个组

版本库目录格式:

[<版本库>:/项目/目录]

@<用户组名> = <权限>

<用户名> = <权限>

其中,方框号内部可以有多种写法:

[/],表示根目录及以下,根目录是svnserve启动时指定的,这里配置的是/webapp/svndata/[/]就是表示对全部版本库设置权限。

[data:/],表示对版本库data设置权限

[date:/test],表示对版本库data中的test项目设置权限

[data:/test/aaa],表示对版本库datatest项目的aaa目录设置权限

权限主体可以是用户组、用户或*,用户组在前面加@*表示全部用户。

权限可以是wrrw、和空,空表示没有任何权限。

authz中每个参数都要顶格写,开头不能有空格。

[/]

Kevin = rw

@harry_and_sally = r

注意:权限配置文件中出现的用户名必须已在用户配置文件中定义

设置passwd,authz文件权限

chmod 600 conf/{passwd,authz} #非必须,最好改下

4. Checkout注意事项

windows上安装客户端TortoiseSVN之后,checkout版本的时候有个地方需要注意。

例如如果创建项目版本库的命令为 # svnadmin create /svn/testversion1/

启动svn服务的命令 # svnserve -d -r /svn/

那么在客户端检出该版本库的URL为:svn://xx.xx.xx.xx/testversion1/

如果启动svn服务的命令为 svnserve -d -r /svn/testversion1/,那么检出的URL则为:svn://xx.xx.xx.xx/

七、与 Apache Http Server 的结合

通过 Http 协议访问版本库是 Subversion 的亮点之一。使用 Http 协议意味着只需要打开浏览器,输入 URL 即可轻松的浏览整个版本库。灵活通常带来复杂性,Http 方式相对于 svnserve 方式来说需要更多的配置。

配置apache

为了使 Subversion dav 模块通信,需要安装 mod_dav_svn 插件,在Apache httpd.conf 文件中加入以下内容:

LoadModule dav_module modules/mod_dav.so

LoadModule dav_svn_module modules/mod_dav_svn.so

<Location /data>

DAV svn

SVNPath /webapp/svndata/data

</Location>

重启apache

/etc/init.d/httpd restart

浏览器输入“http://服务器IP/data”

显示:

data- Revision 1: /

这表示mod_dav_svn模块工作正常,如果无法显示,请检查防火墙和SELinx的配置

可以先临时关闭防火墙和SELinx(生产环境请按实际情况配置)

iptables �CF

setenforce 0

可以使用 SVNParentPath 代替SVNPath

SVNParentPath /webapp/svndate表示/webapp/svndata下的每个子目录都是一个版本库,可以通过:

http://服务器IP/svndata/data1

http://服务器IP/svndata/data2

|

|

|

http://服务器IP/svndata/data10

来访问。

权限设置:

1. Apache基本权限设置

最简单的客户端认证方式是通过HTTP基本认证机制,简单的使用用户名和密码来验证一个用户所自称的身份,Apache提供了一个htpasswd工具来管理可接受的用户名和密码 。


cd /webapp

apache2/bin/htpasswd -c svndata/passwd user1

-c 表示新建一个密码文件

vi apache2/conf/httpd.conf

Location 标签中加入以下内容:

AuthType Basic

AuthName "svn data"

AuthUserFile /webapp/svndata/passwd

Require valid-user

保存后,重启apache后即可

/etc/init.d/httpd restart

可以把"Require valid-user" 替换为"Require user harry sally",表示只有harry和sally可以访问该版本库。

2. mod_authz_svn 进行目录访问控制

使用mod_authz_svn模块可以更加细致的设置访问权限。


vi apache2/conf/httpd.conf

查看mod_auth_svn 模块是否加载

LoadModule authz_svn_modulemodules/mod_authz_svn.so

增加以下内容

<Location /svndata>

DAV svn

SVNParentPath /webapp/svndata

AuthType Basic

AuthName "svn data"

AuthUserFile /webapp/svndata/passwd

AuthzSVNAccessFile /webapp/svndata/accesspolicy

Satisfy Any

Require valid-user

</Location>

AuthzSVNAccessFile 指向的是 authz 的策略文件,详细的权限控制可以在这个策略文件中指定,如:

#两个分组:group1,group2

[groups]
group1=user1,user2
group2=user3,user4

#在根目录下指定所有的用户有读权限
[/]
*=r

#追加group1组用户有读写权限

@group1=rw

#在data下给予用户user1读写权限

[data:/]
user1=rw

#禁止所有用户访问/private目录

[/private]
*=

#给group2组用户读权限

@group2=r


如果要对具体每个版本库配置,用如下的语法:

[groups]
project1=user1,user2
project2=user3,user4

[data1:/]
*=r
@project1=rw
[data2:/]
*=r
@project2=rw

这样项目1project1组只能对data1版本库下的文件具有写权限而不能修改版本库data2,同样项目2project2组也不能修改data1版本库的文件。


修改完配置后记得保存重启apache:

/etc/init.d/httpd restart


另外还要修改对应目录的权限,让它们支持apache运行帐号可写

chown -R daemon:daemon /webapp/svndata/data


这个帐号可在apache配置文件httpd.conf中设置:

User daemon

Group daemon


八、测试

SVN服务器安装配置完毕,在客户端使用TortoiseSVN进行测试,结果如下:

wKiom1l8PVLTp4aYAAB60YPE16Q424.png-wh_50


根据提示输入用户名和密码

wKiom1l8O9rTq8ndAABY2kOOUkg438.png-wh_50

Centos6下SVN服务器(结合Apache)的搭建的更多相关文章

  1. html5 http的轮询和Websocket原理

    这篇文章主要介绍了html5 http的轮询和Websocket原理的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  2. HTML5 Web缓存和运用程序缓存(cookie,session)

    这篇文章主要介绍了HTML5 Web缓存和运用程序缓存(cookie,session),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  3. ios – Xcode警告:“没有处理文件的规则”和“找不到目录”

    重命名我的项目文件夹后,我收到以下错误消息:什么可能出错?解决方法关于第一个警告,您可以在项目设置中的“构建阶段”中检查XCode,即头文件不会出现在“编译源”列表中.

  4. ios – Objective-C中的Google用户serverAuthCode nil

    我正在尝试将GoogleSignIn框架集成到iOS应用程序中,并对服务器上的用户进行身份验证.我设法登录用户,但在–(void)signIn:(GIDSignIn*)signIndidSignInForUser:(GIDGoogleUser*)用户withError:(NSError*)错误委托方法,user.serverAuthCode为nil,我需要通过此服务器身份验证代码,嗯,验证服务器上

  5. 你如何将xcode项目转换为cocoapod?

    我有一段代码,我发现我在多个不同的项目中重复使用,所以我想把它变成一个cocoapod并使用私人cocoapod仓库.我的问题是如何将xcode项目设置为cocoapod?它应该是一个静态库还是一个带有appdelegate的空“项目”?

  6. ios – 如何将文件添加到主包的/ Library / Sounds目录中?

    根据Apple’sdocumentation,/Library/Sounds中的声音文件将在尝试播放声音时由系统搜索.如何将声音文件添加到此文件夹?适用于iOS的正确文档应为here总之,您只需将声音文件作为应用程序包的非本地化资源添加到项目中.

  7. ios – 资产目录与文件夹参考:何时使用其中一个?

    我可以将文件放入Assets.xcassets,或者我可以将文件放入文件夹引用.我何时会选择一个而不是另一个?

  8. ios – 在XCode提交期间,exclaimation point符号对文件意味着什么?

    当从XCode中提交对SVN存储库的更改时,某些文件具有“!”右栏中的符号.这个符号是什么意思,我应该用这些文件做什么?

  9. ios – 从icloud备份中限制sqlite-wal和sqlite-shm

    我是第一次使用coredata,我必须从文档目录中的iCloud备份限制sqlitedb文件,我使用下面的代码完成了它//阻止iCloud备份文档目录文件夹现在我不明白的是,我们还需要从icloud备份中限制sqlite-wal和sqlite-shm文件,如果是,那么如何从icloud备份限制sqlite-wal和sqlite-shm文件我想要一个解决方案,而无需从文档目录文件夹中更改sqlitedb位置…

  10. 在Xcode中安装的git中禁用osxkeychain凭证帮助程序

    解决方法如果您的问题主要关注的是安全性,并且您希望每次都输入密码,那么我会接受钥匙串以适应您的目标>进入osx钥匙串应用程序,>如果您使用的是https,请查找服务器名称>通过单击更改其设置,并在选项卡“访问控制”标记“询问钥匙串密码”下>如果需要,请从列入白名单的应用程序列表中删除git-credential-osxkeychain应用程序.请注意,在Linux上,默认行为也是自动发送凭据.

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部