架构师简单学习

少量用户:单机系统

万级用户:数据库与应用分离

十万级用户:使用缓存改善性能;应用服务集群化

百万级用户:使用反向代理和CDN加速响应;数据库读写分离

千万级用户:使用分布式文件系统和分布式数据库系统

亿级用户:使用搜索引擎、NoSQL、消息队列与分布式服务

架构的重要程度

需求

价值

原则

实践

工具

性能测试方法

  • 性能测试:系统设计之初的目标
  • 负载测试:不断的加大测试压力,使系统某项或多项指标达到边界值,找到系统最佳运行的指标数据
  • 压力测试:最大的并发请求能力
  • 稳定性测试:系统持续的,长期的运行数据指标

系统性能优化的分层思想

机房与骨干网络性能优化:

  • 异地多活的多机房架构
  • 专线网络与自主CDN建设

服务器与硬件性能优化:

  • 使用更优的CPU、磁盘、内存、网卡,对软件的性能优化可能是数量级的,有时候远远超过代码和架构的性能优化

操作系统性能优化:

  • 系统某些指标设置,比如关闭transparent huge pag

虚拟机性能优化:

  • 比较典型的,Java垃圾回收器,并发回收器CMS,G1回收器

基础组件性能优化:

  • jetty代替jboss,性能提升非常大

软件架构性能优化:

  • 缓存
  • 异步
  • 集群

软件代码性能优化:

  • 遵循面向对象的设计原则与设计模式编程,避免“烂代码”
  • 并发编程,多线程与锁
  • 资源复用,线程池与对象池
  • 异步编程,生产者消费者
  • 数据结构,数组、链表、hash表,树

高可用架构

  1. 可用性度量
  • 可用性指标
  • 故障分
  1. 高可用架构
  • 负载均衡
  • 备份与失效转移
  • 消息队列隔离
  • 限流与降级
  • 异地多活
  1. 高可用运维
  • 自动化部署
  • 自动化监控
  • 自动化测试
  • 预发布测试

系统安全架构

Web攻击:

  • XSS攻击:第三方脚本攻击
  • SQL注入攻击
  • CSRF攻击:跨站点攻击

Web防护:

  • 过滤消毒
  • SQL参数绑定
  • 验证码
  • Web防火墙

加密:

  • 单项散列加密:比如用户登录密码,不可逆向解密
  • 对称加密
  • 非对称加密:比如https,加密公钥,解密私钥

信息过滤反垃圾:

  • 分类算法:贝叶斯算法,通过对邮件内容,判断是否为垃圾邮件
  • 布隆过滤器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值