为实现一个系统高可用、系统高并发的交易处理系统,在系统架构设计上,需要有诸多考虑.

高可用:指整个系统高可用,也指主机的冗余接管

kubeadm做高可用使用容器当负载均衡器 高可用和负载均衡区别_高可用

负载均衡概念:负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡有两方面的含义:首先,大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高.

限流技术:被用作控制网络接口收发通信数据的速率。 可以用来优化性能,减少延迟和提高带宽等。 现在在互联网领域,也借鉴了这个概念, 用来为服务控制请求的速率, 如果双十一的限流, 12306的抢票等。 即使在细粒度的软件架构中,也有类似的概念。

分布式事务顾名思义就是在分布式环境下运行的事务,对于分布式事务来说,事务的每个操作步骤是运行在不同机器上的服务的。分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作,提交或回滚事务的决定必须产生统一的结果(全部提交或全部回滚)

分布式session,

1.基于数据库的Session共享

2.基于NFS共享文件系统

3.基于memcached 的session,如何保证 memcached 本身的高可用性?

4. 基于resin/tomcat web容器本身的session复制机制

5. 基于TT/Redis 或 jbosscache 进行 session 共享。

6. 基于cookie 进行session共享

压力测试:基于很多压力测试工具.


kubeadm做高可用使用容器当负载均衡器 高可用和负载均衡区别_缓存_02

缓存应用有很多,redis,memcached等等

其实缓存路线有很多,但原则就是从前向后缓存,数据库是最后的数据源.

jvm调优,就是响应和垃圾回收等一些列程序处理问题.

队列应用主要是抢票,抢购,秒杀等使用场景,用程序实现队列.

动静分离的大部分做法是将静态资源部署在nginx上,后台项目部署到应用服务器上,根据一定规则静态资源的请求全部请求nginx服务器,达到动静分离的目标。