常见web攻击手段:XSS跨站脚本攻击,CSRF跨站请求伪造,SQL注入攻击,文件上传漏洞可执行脚本,DDoS 分布式拒绝服务攻击。
URL访问工具:curl
查看请求访问量:找到服务器的访问日志
访问量排名前十的IP地址:cat access.log | cut -f1 -d " " | sort | uniq -c | sort -k 1 -n -r|head -10
访问量排名前十的url:cat access.log | cut -f11 -d " " | sort | uniq -c | sort -k 1 -n -r|head -10
查看最耗时的页面: cat access.log |sort -k 2-n -r |head -10
统计404请求占比:export total_line=`wc -l access.log | cut -f1 -d " "`
&& export not_found_line=`awk '$6=='404' {print $6}' access.log | wc -l `
&& expr $not_found_line \*100/$total_line
面向SOA:
稳定性:
高度解耦依赖管理
降级
服务分级
高并发系统设计原则:
操作的原子性:ALL OR NOTHING 常用来实现数据同步机制,事务日志保证了数据存储的可靠性,又提高了数据写入的效率。
多线程同步:多个线程并发的访问和操作同一数据。
数据的一致性:分布式系统通常通过复制数据来提高系统的可靠性和容错性并且将数据的副本放在不同的机器上,使用弱一致性或最终一致性来提高系统的性能和吞吐能力
系统的可扩展性:廉价的PC,水平扩展,适当取舍
性能测试:
ab: ab -n 100 -c 100 www...........
优化:
前端优化:页面Http请求数量 是否使用cdn网络 是否使用压缩传输
程序代码优化
压缩
结果是否缓存
数据库性能优化:
合理运用索引
反范式设计
使用查询缓存
使用搜索引擎
使用k-v数据库