发表于: 2017-11-01 18:44:03
2 936
今天完成的事情:
1.结合spring,使用Tuscany分离web和service
Service部分:
配置文件Tuscany.composite
Spring配置文件新增部分:
Service接口部分:
MainApp启动服务部分:
客户端(WEB)部分:
相比任务8只有一个改动的地方,不用再反复加载Spring配置文件
效果展示:
由于Tuscany年久失修,对最新的spring只支持到3.0.5,而对其他JDK等支持都未知,所以只能在IDEA内运行,打包出来就运行不了了,因此只在本地进行演示
效果展示:
在IDEA内开启两个server,端口分别为
效果:
关闭其中server1
效果:
可以看到,每次随机到server1时,会自动转向server2
任务九至此结束
2.任务八深度思考
任务八:
1.什么是rmi?为什么要使用rmi框架?
rmi即Remote Method Invocation,远程方法调用;
使用rmi框架可以调用其他计算机上服务,若使用Tuscany甚至可以调用不同平台上的数据,实现了分布式应用,提高了系统的扩展性。也可以将压力大的主服务器作为客户端,而使用其他服务器作为服务端,有效的解决了高并发的问题
2.什么是SCA?什么是分布式?分布式有什么优点?
SCA是SOA(面向)服务架构的一个标准,即服务组件框架,它只关心两个组件间的接口,而不关心具体服务细节的实现。
一个程序或者系统,拆分为不同的部分运行在不同的机器上,就可以称为分布式,C/S架构也是分布式
优点:
①将分布在不同地方的资源充分利用。
②可以将负载从单个分成多个,提高效率。
③即使一个节点或多个节点失效,也不会面临系统崩溃的风险,提高了系统的稳定性
3.为什么要把web和service分离?应用了哪些概念?
①因为分离web、service大大增加了系统的可扩展性。若是集中在一个项目内的话只能使用同一种语言编写,而且每个项目都要配上相对应的服务,服务一旦失效对应的web服务也失效了。而分离web和service后可以在不同平台上交互数据,并且一个节点失效之后可以从另一个节点上获取数据,极大的增强系统的抗压性和可扩展性
②应用了SCA分离组件的概念,同时的应用了分布式的概念
明天计划的事情:
完成复盘前要做的PPT
遇到的问题:
如上面所说的service部分打包后无法运行,据我观察,在idea内解析xml用的是spring框架自带的xml解析器,而打包后使用的解析器用的是java自带的解析器,出的问题没找到解决的方法,不过听师兄说公司内的重新封装的Tuscany解决了这个问题
收获:
学会使用Tuscany,本来还有疑问为什么有了java rmi为什么还要用已经不再维护的Tuscany,这是因为java rmi只支持java编译的客户端、服务端,而Tusacny可以跨平台进行客户端、服务端的数据交互,扩展性强了不止一个级别
进度:
任务八开始时间:2017.10.31
预计demo时间:2017.11.01
任务于2017.11.01完成
禅道
http://task.ptteng.com/zentao/project-task-350.html
评论