Java分布式

资源链接:


Java分布式架构的演变及解决方案
http://www.cnblogs.com/malcome/articles/5909632.html

分布式
1、单机裸跑:
LAMP = [Linux + Apache + MySQL + PHP]
2、分开部署:
应用程序、数据库、文件 分别部署在独立的服务器上
3、数据缓存:
二八定律(80%的业务访问集中在20%的数据上),从而引入缓存
缓存:本地缓存(速度快、争用应用程序内存)
     远程缓存(速度慢、独立服务)
4、应用服务器集群:
多台服务器通过负载均衡同时向外提供服务,解决单服务器处理能力和存储空间上限问题
5、数据库读写分离:
6、反向代理和CDN加速(基于缓存)
7、使用NoSQL和搜索引擎
8、业务插分
按照业务进行插分改造,应用服务器按照业务区分进行分别部署
9、分布式服务

Java分布式应用技术基础:
1、消息队列框架
2、服务框架架构
3、服务总线架构


Dubbo
分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别Web Service模式中的WSdl,以服务者与消费者的方式在dubbo上注册)

核心部分:
1、远程通讯:
提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型、序列化、以及“请求-响应”模式的信息交换方式。
2、集群容错:
提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持
3、自动发现:
基于注册中心目录服务,使服务消费方能动态查找服务提供方,使地址透明,使服务提供方可以平滑或减少机器。
安全机制:
Dubbo通过Token令牌防止用户绕过注册中心直连,然后在注册中心上管理授权。Dubbo还提供服务黑白名单,来控制服务所允许的调用方。 
引入方式:
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需要用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载



HSF  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
非开源
需要JBoss容器

Zookeeper
https://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/




5个强大的Java分布式缓存框架
http://developer.51cto.com/art/201411/457423.htm


1、Ehcache – Java分布式缓存框架
Ehcache是一个Java实现的开源分布式缓存框架,EhCache 可以有效地减轻数据库的负载,可以让数据保存在不同服务器的内存中,在需要数据的时候可以快速存取。同时EhCache 扩展非常简单,官方提供的Cache配置方式有好几种。你可以通过声明配置、在xml中配置、在程序里配置或者调用构造方法时传入不同的参数。


官方网站:http://ehcache.org/
使用教程:http://www.codeceo.com/article/java-ehcache.html



2、Cacheonix – 高性能Java分布式缓存系统
Cacheonix同样也是一个基于Java的分布式集群缓存系统,它同样可以帮助你实现分布式缓存的部署。


官方网站:http://www.cacheonix.com/
使用教程:http://www.codeceo.com/article/java-cacheonix.html

3、ASimpleCache – 轻量级Android缓存框架
ASimpleCache是一款基于Android的轻量级缓存框架,它只有一个Java文件,ASimpleCache基本可以缓存常用的Android对象,包括普通字符串、JSON对象、经过序列化的Java对象、字节数组等。


官方网站:https://github.com/yangfuhai/ASimpleCache
使用教程:http://www.codeceo.com/article/asimplecache-android-cache.html

4、JBoss Cache – 基于事物的Java缓存框架
JBoss Cache是一款基于Java的事务处理缓存系统, 它的目标是构建一个以Java框架为基础的集群解决方案,可以是服务器应用,也可以是Java SE应用。


官方网站:http://jbosscache.jboss.org/
使用教程:http://www.codeceo.com/article/jboss-cache-java.html

5、Voldemort – 基于键-值(key-value)的缓存框架
Voldemort是一款基于Java开发的分布式键-值缓存系统,像JBoss Cache一样,Voldemort同样支持多台服务器之间的缓存同步,以增强系统的可靠性和读取性能。


官方网站:http://www.project-voldemort.com/voldemort/
使用教程:http://www.codeceo.com/article/voldemort-java-key-value-catch.html



WSDL : Web Services Description Language
NIO : Non-blocking IO
HSF 
Zookeeper 
Hadoop


负载均衡:
1、硬件负载均衡(F5 昂贵)
2、软件负载均衡(LVS、Nginx)
CDN加速:


分布式和集群的区别:
一句话:分布式是并联工作,集群是串联工作
分布式:一个业务拆分多个子业务,部署在不同的服务器
集群:同一个业务,部署在多个服务器
集群是个物理形态,分布式是个工作方式











使用Node编写一个分布式服务调用框架
使用Node做一个静态化网页
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值