![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大型网站系统与java中间件实践
文章平均质量分 69
Promise_kk
这个作者很懒,什么都没留下…
展开
-
分布式系统
什么是分布式系统:组件分布在网络计算机上,组件之间仅仅通过消息传递来通信并协调行动。为什么使用分布式系统:1.升级单机系统性价比低,2.单机系统存在系能瓶颈,3.出于稳定性和可用性。多线程交互方式:1.互不通信,2.基于共享容器,如生产者和消费者例子,3.通过事件协同,如wait/notify。 分布式系统就是多机的多进程。网络通信:我们使用比较多的是TCP/IP网络模型,使用Socket编程主要原创 2017-06-30 07:04:00 · 272 阅读 · 0 评论 -
大型网站架构演进
什么是大型网站:海量数据和高并发的访问量缺一不可,因此肯定是一个分布式系统。中间件系统就是在大型网站架构演进过程中出现发展的。大型网站架构演进(以交易网站为例): 单机网站:包括用户模块,商品模块,交易模块等。三个模块都在同一个应用服务器中,用户表数据表交易表在同一个数据库中,通过jdbc连接。整个应用在同一台机器上。数据库与应用分离:应用存在一台机器上,数据库在另一台机器上,仍然是通过j原创 2017-06-30 07:45:17 · 304 阅读 · 0 评论 -
构建java中间件
中间件:中间件起到的是桥梁作用,是应用与应用之间的桥梁, 也是应用与服务之间的桥梁,特定的中间件用来解决特定的问题。 远程过程调用和对象访问中间件:解决分布式环境下应用的互相访问问题,是应用服务化的基础。 消息中间件:解决应用间的消息传递,解耦,异步的问题。 数据访问中间件:解决应用访问数据库的共性问题。中间件基础: JVM调优与运行时问题的处理 垃原创 2017-06-30 13:58:04 · 395 阅读 · 0 评论 -
服务框架
为什么使用服务框架:应用直接访问底层的服务(数据库,缓存,分布式文件系统,搜索引擎等)足够解决问题,比如商品模块访问底层服务,交易模块访问底层服务,它们都会用到用户相关的功能,会有很多代码冗余且不利于管理。在应用和底层间添加服务,可以使结构更为清晰,提高稳定性,避免代码冗余。服务框架的设计和实现: 本地调用变为远程调用:服务框架客户端从上到下依次为:接口调用,寻址路由,编码,通信,服务端从原创 2017-06-30 14:59:35 · 980 阅读 · 0 评论 -
数据访问层
给数据库减压:1:优化应用,看是否有不必要的压力;2:看有没有办法降低数据库压力,如缓存,搜索引擎等;3:将数据库的数据和访问分到多台数据库上,分开支持。数据拆分有俩种方式:垂直拆分和水平拆分 垂直拆分带来的影响: 单机的ACID被打破了,要么放弃原来的事务,要么引入分布式事务; Join操作变的比较困难 靠外键约束的场景会收影响原创 2017-06-30 17:37:49 · 298 阅读 · 0 评论