转载自:https://blog.52itstyle.com/architecture.html
技术选型
网关:Nginx、Kong、Zuul
缓存:Redis、MemCached、OsCache、EhCache
搜索:ElasticSearch、Solr
熔断:Hystrix
负载均衡:DNS、F5、LVS、Nginx、OpenResty、HAproxy
注册中心:Eureka、Zookeeper、Redis、Etcd、Consul
认证鉴权:JWT
消费队列:RabbitMQ、ZeroMQ、Redis、ActiveMQ、Kafka
日志收集:ELK、Redis
系统监控:GPE、PinPoint、Zipkin
文件系统:OSS、NFS、FastDFS、MogileFS
RPC框架: Dubbo、Motan、Thrift、grpc
构建工具:Maven、Gradle
集成部署:Docker、Jenkins、Git、Maven
数据库:MySql、Redis、MongoDB、PostgreSQL、Memcache、HBase
网络:专用网络VPC、弹性公网IP、CDN
数据库中间件:DRDS (阿里云)、Mycat、360 Atlas、Cobar (不维护了)
分布式框架:Dubbo、Motan、Spring-Could
架构必备
负载均衡(负载均衡算法)
反向代理
服务隔离
服务限流
服务降级(自动优雅降级)
失效转移
超时重试(代理超时、容器超时、前端超时、中间件超时、数据库超时、NoSql超时)
回滚机制(上线回滚、数据库版本回滚、事务回滚)
高并发
应用缓存
HTTP缓存
多级缓存
分布式缓存
连接池
异步并发
分布式事务
二阶段提交(强一致)
三阶段提交(强一致)
消息中间件(最终一致性),推荐阿里的RocketMQ
队列
任务队列
消息队列
请求队列
扩容
单体垂直扩容
单体水平扩容
应用拆分
数据库拆分
数据库分库分表
数据异构
分布式任务
网络安全
SQL注入
XSS攻击
CSRF攻击
拒绝服务(DoS,Denial of Service)攻击
待深入成文
聊聊spring @Transactional事物
聊聊JVM内存模型
Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore
聊聊系统重构升级☞前后端分离(JWT以及oauth2)
分布式跟踪工具Pinpoint技术实践
深入理解IP、PV、UV、TPS、QPS是怎么计算出来的?