一、安装
二、文件操作
# 文件上传
scp <path>/<filename> root@<ip>:/<path>
# 文件下载
scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2
目录操作
ls -a # 显示所有隐藏文件
ls -F # 所有文件夹后面会有“/”
ls -h # 自动人性化换算文件大小
创建与删除
mkdir <directoryame> # 创建目录
touch <filename> # 创建文件
rm <filename> # 删除文件
rm -i <filename> # 多一次确认的询问
rm -rf <directoryname> # 删除目录中所有文件
复制与移动
mv <filename> <directoryname> # 把file移动到directory
mv <filename1> <filename2> # 把1改名为2
cp <filename> <directoryname> # 复制
cp -r <directoryname1> <directoryname2> # 加-i进行递归拷贝
查看内容
cat <filename> #
more <filename> # 适合大的文件
三、打包与解压
tar -xjf <filename>
四、软件安装与管理
4.1 Ubantu源码编译准备工作
# 安装gcc g++ make
apt install -y gcc g++ make
以nmap端口扫描软件为例
https://nmap.org/dist/nmap-7.70.tar.bz2
# 下载压缩包
wget https://nmap.org/dist/nmap-7.70.tar.bz2
cd nmap-7.70 # 进入文件中
vi README.md # 查看安装方法
# 进行安装路径配置
./configure /usr/local/nmap
make # 执行make语句
make install # 执行make install 语句
cd /usr/local/nmap/bin # 进入安装文件目录
./nmap 127.0.0.1 # 扫描当前计算机开放的端口
4.2 使用uwsgi 部署python
# 安装django框架
django-admin startproject demo
cd /demo # 进入安装文件目录中
# 运行项目
python3 manage.py runserver
# 结束后(ctrl+C),进入settings编辑
vi demo/settings.py
# 将allowed hosts更改
ALLOWED_HOSTS = ['*']
# 重新运行
python3 manage.py runserver 0.0.0.0:8080
-
由于django由于性能差,只能用于开发环境,所以需要使用uwsgi来运行
# 安装uwsgi pip3 install uwsgi # 使用uwsgi的调试模式 uwsgi --http :<port> --chdir <project path> --module filename.wsgi #例如 uwsgi --http :9090 --chdir /root/demo --module demo.wsgi
-
每次更改文件后都需要关闭uwsig服务,再重新启用
ps -ef | grep uwsgi kill -9 <ID>
-
uwsgi测试django项目时无法加载静态文件
在settings.py中添加以下命令即可:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
-
将命令写入开机脚本中,避免每次开机都需要启动服务
vi /etc/rc.local
uwsgi --http :80 --chdir /root/demo --module demo.wsgi --daemonize /var/log/uwsgi.log # 在后台以服务的方式运行,且日志写入var/log/uwsgi.log文件中
4.3性能测试
除关注功能外,还要关注性能。
关注以下性能参数:
- 吞吐率
- 并发连接数
- 并发用户数
- 用户平均请求等待时间
- 服务器平均请求等待时间
4.4 mysql
mysql -u root -p <databasename> < <filename> # 将数据导入
mysql 默认条件下不能进行远程连接,因此需要授权用户进行新的连接
vi /etc/mysql/mysql.conf.d/mysqld.cnf # 进入mysl配置文件
将bind-address = 127.0.0.1注释掉
grant all on *.* to root@"%" identified by "<password>"
# 重启mysql服务
service mysql restart
五、MAC 连接阿里云
# 第一步 连接服务器
ssh <username>@<server.address.com> (-p <port>)
# 第二步 输入密码
# 第三步 切换到目标路径
cd <path>
# 提交
svn up
39.104.202.12
六、Nigix
暂不学习
七、Memcached 缓存
通常缓存包括:DNS、浏览器、App、代理缓存以及服务端缓存
缓存特指服务端缓存
memcached的安装
apt install -y memcached
memcached启用、停止与重启
service memcached start/stop/restart
memcached 参数配置
memcached的配置文件存放:/etc/memcached.conf
-
-m 内存,default 64M
-
-u 用户
-
-c 并发连接数
-
-p 监听端口,默认是11211
telnet 127.0.0.1 11211 # ip port ### 连接memcachaed stats # 查看memcached状态
查看状态时重点关注的内容
- curr_connections 当前连接数
- get_hits 总命中次数
- get_misses 总未命中次数
python操作memcached
pip3 install python-memcached # 安装扩展
import memcached # 导入模块
# 连接memcached
mc = memcached.Client(["127.0.0.1:11211"])
# 存入
mc.set('name', 'python', 60) # 过期时间为60s
# 读取
mc.get('name')
# 删除
mc.delete('name')
八、RabbitMQ消息队列
消息队列的作用包括:
- 同步
- 应用解耦
RabbitMQ 特点之一是 对高并发的处理较好、稳定
基础概念
使用高级消息队列协议Advanced Message Queuing Protocol(AMQP)
安装、启用、停止与重启
apt install -y rabbitmq-server
service rabbitmq-server stop/start/restart
开启rabbitmq管理——启用management-plugin
rabbitmq-plugins enable rabbitma_management
开启之后就可以利用浏览器进行web管理,登录者需要有响应的角色(tag)
http://serverip:15672/
http://serverip:15672/api/
# 查看运行消息
rabbitmqctl status
# 查看交换机
rabbitmqctl list_exchanges rabbitmqctl set_permissions -p <vhostpath> <user> <conf> <write> <read> # vhostpath 一般使用/指定根目录, “.*”代表所有权限
# 绑定信息
rabbitmqctl list_bingdings
# 添加用户
rabbitmqctl add_user <username> <password>
用户角色tag
rabbitmqctl set_user_tags <username> <tag>
# tag包括 **超级管理员administrator、监控者monitor、策略制定者policymaker、普通管理者management、其它none**
网友评论