分布式架构
文章平均质量分 82
亲立
做技术不仅要有一份执着和细致的心,还要有一份平静的心态。
展开
-
使用Netty开发实现高性能的RPC服务器
目录 什么是Netty 为什么要用Netty 如何使用Netty 什么是Netty Netty是一个提供异步事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 为什么要用Netty 处理大文件、电子邮件、近实时消息,可以使用该协议快速实现一个不影响应用程序稳定性和性能的服务器。 如何使用Netty 由于Netty主要是在分布式中使用的,免不了要用...原创 2018-07-23 14:32:52 · 1540 阅读 · 0 评论 -
Redis分布式
目录 Redis是什么 为什么要用Redis 如何用Redis Redis是什么 Redis是基于内存、可持久化的日志型、Key-Value数据库 高性能存储系统,并提供多种语言的API。 为什么要用Redis 数据结构(Data Structure)需求 越来越多, 但memcache中没有, 影响开发效率 性能需求 随着读操作的量的上升需要解决,经历的过程有: 数据库读写...原创 2018-07-18 13:40:22 · 469 阅读 · 0 评论 -
单例设计模式
单例设计模式有饿汉式、懒汉式、双重判定锁几种模式。不过在访问量同时在百万以上时,均不适应,前两者线程不安全,后者比较耗费性能,用户体验度也不好。那该怎么去优化呢? 推荐使用静态内部类的单例模式。但是如何在反射的情况下保证单例?如何在反序列化中保证单例? 下面代码即可解决: package singleton; import java.io.Serializable; public cl...原创 2018-07-18 13:52:06 · 467 阅读 · 0 评论 -
分布式之延时任务方案解析
数据库轮询 思路 该方案通常是在小型项目中使用,即通过一个线程定时的去扫描数据库,通过订单时间来判断是否有超时的订单,然后进行update或delete等操作 优缺点 优点:简单易行,支持集群操作 缺点:(1)对服务器内存消耗大 (2)存在延迟,比如你每隔3分钟扫描一次,那最坏的延迟时间就是3分钟 (3)假设你的订单有几千万条,每隔几分钟这样扫描一次,数据库损耗极大 JDK的...原创 2018-07-18 14:58:46 · 585 阅读 · 0 评论 -
Nginx分布式+Tomcat实现负载均衡
目录 什么是Nginx 为什么要用Nginx 如何用Nginx 什么是Nginx Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。 为什么要用Nginx 由C语言编写,对系统资源和CPU资源利用率都很高,支持50000并发连接数,并且安装和配置简便,启动速度极快,支持Linux、Mac OS...原创 2018-07-18 17:46:08 · 630 阅读 · 0 评论 -
LVS实现负载均衡
目录 什么是LVS 为什么要用LVS 如何用LVS 安装配置 ipvsadm用法 LVS的10种调度算法 LVS三种工作模式:NAT(地址转换)、DR(直接路由)、TUN(隧道) LVS-NAT:地址转换 架构图: 工作方式: 部署 脚本 LVS-DR:直接路由 架构图: 工作方式: 部署 脚本 LVS-TUN:隧道 架构图: 工作方式: LVS的健康状态...原创 2018-07-20 16:54:09 · 635 阅读 · 0 评论