2019年七月第三周总结
快速阅读
回顾本周对于Tuxedo中间件,welloigc中间件使用的调查 ,以及系统设计时如何画时序图,数据流图,ERD图
最后介绍一个事件的使用MenualResetEvent
Tuxedo
是oracle推出的一个中间件服务, 采用Tuxedo协议进行通讯,主要用于金融,电信,制造行业中。
主要作用是使系统各部门可以相互操作,最大限度的节省系统资源,提高系统性能。
也可以参考:
https://max.book118.com/html/2017/0124/86421689.shtm
https://blog.csdn.net/u011445855/article/details/78274222/
http://www.hechunbo.com/index.php/archives/165.html
以下红色文件是tuxedo可以提供的功能
核心组成如下:
-
事物管理器。 是tuxedo服务器的核心。可以提供重要的分布式应用 。包括名字服务,数据路由,负载平衡。配置管理。事务管理和安全管理。
-
工作站/ws : 提供ATMI(应用事物管理接口)供客户应用 程序调用。
-
可靠队列服务/q : 该队列可以在网络故障时也能把数据传到服务器,和db协议,完成全局的事物处理。
-
域domain: 将多台服务器共同组成的系统划分为一个域 。
weblogic
也是oracle公司下的一个中间件服务,提供构造网站的必要软件 ,支持servlet解析和ejb
比apache功能强。apache只支持servlet。 如果要动脚 ejb需要配置jboss的使用。
参考:https://www.cnblogs.com/dim2046/p/5895889.html
http://www.hechunbo.com/index.php/archives/166.html
优点:
可伸缩性:动态增加服务器应用 ,不会中断服务,
高可用性:当服务器失败,可将应用 组件部署到其它多个服务器,
应用 程序故障转移:发生故障时,失败对象副本交结束些作业 ,转移到另一台计算 机。
负载均衡:对资源进行平均分发
缺点:
采用主备机,主机使用频繁,导致备机空闲; 一台故障,必须通知另一台,管理维护麻烦 ;用户切换要重登陆,延误时间
参考:https://wenku.baidu.com/view/452f5d7f31b765ce05081441.html
系统架构设计
-
防重放:采用md5(时间戳方式+random(0,1000))
-
不可抵赖性:采用数据签名加时间戳来审计
-
架构中存储节点如何扩展:主从复制提高系统的读取能力,通过垂直拆分和水平拆分将数据分布多个存储节点
-
负载均衡技术:weblogic自带的。 nginx, sprng cloud , kafka .
-
保障高并发系统的稳定性和高可用性:高并发,线程池,数据库,负载均衡,超时控制,外部依赖控制,重试设计,压力测试 。
系统设计要画的图
以下时序图,erl图,dfd图都可以在visio中完成。也有部分网站支持,但最好在visio中画,因为合并到文档 中比较方便 ,也方便 别人修改。
-
时序图:对角色,对象,生命线,激活。同学步消息,异步消息,返回,自关联,组合,选择组合。替换组合
-
ER图:实体关系图。由实体,属性,联系组成。
-
DFD图:数据流图,由流程,接口,数据存储,数据流等基本图元组成。
ManualResetEvent的使用
一个线程同步事件 ,通过发信号来控制线程来控制 是否有权限访问 资源
构造函数中的true表示waitone不能阻塞线程执行。 如果是false则线程中有waitone()线程执行到这里就会停止 。
如果中间让要继续,调用set()方法 ,如果再停止 就调用reset()方法。
参考:http://www.hechunbo.com/index.php/archives/172.html
友情提示
我对我的文章负责,发现好多网上的文章 没有实践,都发出来的,让人走很多弯路,如果你在我的文章中遇到无法实现,或者无法走通的问题。可以直接在公众号《爱码农爱生活 》留言。必定会再次复查原因。让每一篇 文章的流程都能顺利实现。