分布式系统组成:分布式缓存、存储、消息队列
2017-09-06 22:15
239 查看
分布式缓存:
key-value存储加快了存取的速度。
消息队列:
将消息存储在队列中,不必等待回应,采用异步处理的方式,降低系统集成耦合度,提升了分布式系统的效率。
垂直化搜索引擎:
解决了分库分表或使用NoSQL导致无法多表关联的问题,又解决了like查询效率低下的问题。
memcache:
memcache维护一张巨大的HashTable用来存储缓存,数据读取速度为O(1)。
memcache开启:开启时配置缓存服务器地址及对应的端口
java程序配置:java程序中可以通过ip和端口找到对应的缓存服务器,并通过get,set之类的方法对缓存服务器内的数据进行修改查询
分布式session:
考虑到cookie的不安全性,及多服务器间session同步的难度,分布式session应运而生。将sessionId作为key,session作为value将session存储到缓存服务器
持久化存储:
分库存储,随着业务量增多,对 单个数据库的频繁访问导致其成熟的压力很大,可以将库内的多个表拆分开,分别存储在不同的数据库,这样可以减少单个数据库所承受的压力
随着数据访问量进一部增大,配置多台数据服务器,使所有服务器上数据相同,访问时再按策略选取,可以达到拓展系统的 目的。从数据服务器通过主服务器的binary log达到数据同步的目的。
对于巨大的单表 可以采用分表的策略来加快访问速度,提高吞吐。
分库与分表原理相同,目的是为了加快写操作
也可以结合分库分表:
非关系型数据库:redis:
消息队列:
消息队列的使用降低了系统间耦合度,避免了大量请求的同时涌入导致系统崩溃,起到了削峰填谷的作用。
key-value存储加快了存取的速度。
消息队列:
将消息存储在队列中,不必等待回应,采用异步处理的方式,降低系统集成耦合度,提升了分布式系统的效率。
垂直化搜索引擎:
解决了分库分表或使用NoSQL导致无法多表关联的问题,又解决了like查询效率低下的问题。
memcache:
memcache维护一张巨大的HashTable用来存储缓存,数据读取速度为O(1)。
memcache开启:开启时配置缓存服务器地址及对应的端口
java程序配置:java程序中可以通过ip和端口找到对应的缓存服务器,并通过get,set之类的方法对缓存服务器内的数据进行修改查询
分布式session:
考虑到cookie的不安全性,及多服务器间session同步的难度,分布式session应运而生。将sessionId作为key,session作为value将session存储到缓存服务器
持久化存储:
分库存储,随着业务量增多,对 单个数据库的频繁访问导致其成熟的压力很大,可以将库内的多个表拆分开,分别存储在不同的数据库,这样可以减少单个数据库所承受的压力
随着数据访问量进一部增大,配置多台数据服务器,使所有服务器上数据相同,访问时再按策略选取,可以达到拓展系统的 目的。从数据服务器通过主服务器的binary log达到数据同步的目的。
对于巨大的单表 可以采用分表的策略来加快访问速度,提高吞吐。
分库与分表原理相同,目的是为了加快写操作
也可以结合分库分表:
非关系型数据库:redis:
消息队列:
消息队列的使用降低了系统间耦合度,避免了大量请求的同时涌入导致系统崩溃,起到了削峰填谷的作用。
相关文章推荐
- 分布式的消息队列系统——Kafka
- 大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)
- 利用分布式消息队列降低系统耦合性
- [.NET领域驱动设计实战系列]专题八:DDD案例:网上书店分布式消息队列和分布式缓存的实现
- 分布式系统基础-消息队列概述
- 分布式系统常见问题总结(五)- 消息队列
- 消息队列在大型分布式系统中的实战应用场景精髓
- 分布式消息队列(Message Queue)系统:kafka扫盲
- 分布式消息队列(Message Queue)系统:kafka
- 分布式系统基础-消息队列之JMS
- 一共81个,开源大数据处理工具汇总:查询引擎、流式计算、迭代计算、离线计算、键值存储、表格存储、文件存储、资源管理、日志收集系统、消息系统、分布式服务、集群管理、基础设施、搜索引擎、数据挖掘=监控
- 分布式系统基础-消息队列之RabbitMQ
- 一共81个,开源大数据处理工具汇总:查询引擎、流式计算、迭代计算、离线计算、键值存储、表格存储、文件存储、资源管理、日志收集系统、消息系统、分布式服务、集群管理、基础设施、搜索引擎、数据挖掘=监控
- 基于Hbase存储的分布式消息(IM)系统-JABase
- 服务端技术进阶(五)分布式系统解决之道:目录、消息队列、事务系统及其他
- 分布式系统基础-消息队列之ActiveMQ
- 消息中间件在分布式系统中的作用与消息队列-ActiveMQ
- 大型网站系统架构系列:分布式消息队列(二)
- 服务端技术进阶(五)分布式系统解决之道:目录、消息队列、事务系统及其他
- 分布式系统基础-消息队列之Kafka