回顾:LNMP 设计理念:不改现有架构去优化,不得已再软件重构,开发以能用为目的
LVS\nginx LN P nosql mysql
LN P
调度器:流量分发 ;异地机房缓存:squid\varnish ;
一台服务器2万*4,raid5最少3个
yum update /升级服务器上软件包的版本
#######################################
版本控制:subversion软件(简称svn)
(达内TTS)文档[java,conf,shell,PPT]
subversion是一个自由/开源的版本控制系统,文件和目录可以超越时空,恢复到早期版本,或检查修改的历史。
应用场景:一个文档需多人协作并跟踪修改;恢复或查看修改的历史;
版本库:版本控制的核心;任意数量的客户端;客户端通过写数据库分享代码
核心任务:协作编辑和数据共享;允许共享信息;防止意外覆盖 特点:记录每一次改变
锁定-修改-解锁模型:导致管理问题(A锁定后忘记解锁等);导致不必要的串行开发、轮流工作效率底
拷贝-修改-合并模型(SVN、git):每个客户建立个人工作副本,并行工作;个别冲突手动解决
########################################
192.168.2.100(svn服务器-仓库)
1.安装软件
#yum -y install subversion
2.创建仓库目录
#mkdir /var/svn/ //普通目录
#svnadmin create /var/svn/project1 //创建仓库
# ls /var/svn/project1
#du -sh /var/svn/project1
3.导入一些文档[配置文件或shell或java或php脚本]
# ls -r /usr/lib/systemd/system | wc -l
# ls -R /usr/lib/systemd/system | wc -l
#cd /usr/lib/systemd/system
#svn import . file:///var/svn/project1 -m "ceshi"
#svn import . svn/http:/var/svn/project1 -m "service config file"
//将当前目录下的文档,导入到SVN仓库,-m后设置描述信息(原因)
4.查看导入的文档
#svn list file:///var/svn/project1
5.修改配置文件
#vim /var/svn/project1/conf/svnserve.conf
19行:anon-access = none //匿名没有权限
20行:auth-access = write //有效用户可读可写
27行:password-db = passwd //账户信息文件
34行:authz-db = authz //权限配置文件
#vim /var/svn/project1/conf/passwd
tom = 123456 //添加账户与密码
jerry = 123456 //添加账户与密码
#vim /var/svn/project1/conf/authz
[/] // /var/svn/project1
tom = rw
jerry = rw
[/foo/bar]
harry = rw
&joe = r //组
* = //其他人
6.起服务,重起
启动服务,-d后台,-r项目的根路径--共享仓库,仓库目录为/var/svn/project1/
启动的端口号为3690
#svnserve -d -r /var/svn/project1/
# netstat -antpu | grep 3690 //13836/svnserve
# kill -9 13836
# netstat -antpu | grep 3690
# svnserve -d -r /var/svn/project1/
##########################################
客户端:192.168.2.200操作:
#yum -y install subversion
#svn --help
1.下载代码到本地副本
#svn co --username tom --password 123456 svn://192.168.2.100 /temp/code //第一次登录
#svn co svn://192.168.2.100 /temp/code //非第一次登录
(将服务器上的文档下载到本地/temp/code目录下;co(checkout)下载,code目录会自动创建)
2.本地修改代码,上传到服务器
# vim /temp/code/user.slice //任意修改任意文件
# svn ci -m "dfjds" /temp/code/user.slice //commit(ci)提交到服务器
3.连接服务器将本地副本的数据更新,或还原被误删的数据
#rm -rf /temp/code/user.slice
#svn update /temp/code/
4.查看
#svn log svn://192.168.2.100 //查看历史记录