spring-cloud-zuul网关统一异常处理

阅读更多

Keepalived+LVS+Nginx负载均衡之高可用

为什么要使用LVS+Nginx

在用nginx+tomcat做负载均衡时,接收到客户端请求后,nginx会将请求负载转发到tomcat服务端,同时保持和客户端连接,当服务端处理完毕后nginx再将结果返回给客户端。那么就是说,客户端所有的流量都是要经过nginx的,这就造成了一个问题,系统架构中nginx出现了单机性能瓶颈。
而LVS做负载的时候,LVS接到客户端请求,将请求负载转发出去,同时断开与客户端连接,服务端处理完毕直接将结果返回给客户端,不再经过LVS。
所以,结合两者优缺点,在nginx前在加多一层LVS为nginx做负载均衡,避免nginx单机性能瓶颈,使系统高可用。
同时,使用Keepalived对LVC做双热备,避免单点故障。

阅读更多

redis一主多从集群配置

阅读更多

分布式ID生成-snowflake算法

应用场景

snowflake是twitter开源的分布式ID生成算法,其核心思想是:一个long型的ID,使用其中41bit作为毫秒数,10bit作为机器编号,12bit作为毫秒内序列号。这个算法单机每秒内理论上最多可以生成1000*(2^12),也就是400W的ID,完全能满足业务的需求。
借鉴snowflake的思想,结合各公司的业务逻辑和并发量,可以实现自己的分布式ID生成算法。

阅读更多