免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 76687 | 回复: 0
打印 上一主题 下一主题

【有奖讨论】如何用分布式中间件技术提升Java企业级开发效率?(获奖名单公布啦) [复制链接]

论坛徽章:
1
15-16赛季CBA联赛之广夏
日期:2020-04-23 15:22:06
1 [报告]
发表于 2020-04-19 20:15 |显示全部楼层
(1)大家可以谈谈自己对“分布式中间件”的认识和理解,可以说一说自己所知晓的目前市面上比较流行、应用比较广泛的中间件有哪些。
在分布式系统中,中间件是非常重要的组成,具有较高的技术门槛。随着互联网的飞速发展,高吞吐、高并发、低延迟和负载均衡已成为普遍需求,为此,作为枢纽的中间件也从“集中式”发展为“分布式”。
目前市面上比较流行、应用比较广泛的中间件有Redis、Kafka、ZooKeeper、Etcd、RabbitMQ、Nginx

(2)对于分布式系统架构的整体演进历程以及中间件的落地实施,读者朋友们认为中间件起到的主要作用是什么?还能承担起哪些职责?
中间件起到的主要作用是实现缓存、消息队列、锁以及负载均衡等。中间件是基础软件的一大类,属于可复用软件的范畴,顾名思义,中间件处于操作系统软件与用户的应用软件的中间,因此,中间件具有很好的独立性,可作为一个独立的软件系统运转。

(3)本书着重介绍了几款目前应用比较广泛的中间件:Redis、RabbitMQ、ZooKeeper和Redisson及其丰富的应用场景,大家可以分享还有哪些典型的应用场景?
基于 Redis 的分布式缓存、基于 Kafka 的分布式消息队列、基于 ZooKeeper 的分布式锁等,没有一种方案可以打遍全场,在中间件选型和方案设计的时候,需结合性能需求、开发成本、可扩展性、可维护性等进行综合评估。例如:基于 ZooKeeper 实现分布式锁的方案非常成熟,参考资料详实,但它并不一定适合你的应用场景。

(4)本书花了大篇幅的笔墨介绍了Redis的应用场景——抢红包系统的设计与开发,谈谈你对整体实现流程的理解以及还有哪些可以改进的地方?
redis提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File)。
RDB,简而言之,就是在不同的时间点,将redis存储的数据生成快照并存储到磁盘等介质上;
AOF,则是换了一个角度来实现持久化,那就是将redis执行过的所有写指令记录下来,在下次redis重新启动时,只要把这些写指令从前到后再重复执行一遍,就可以实现数据恢复了。
其实RDB和AOF两种方式也可以同时使用,在这种情况下,如果redis重启的话,则会优先采用AOF方式来进行数据恢复,这是因为AOF方式的数据恢复完整度更高。
我认为如果没有数据持久化的需求,也完全可以关闭RDB和AOF方式,这样的话,redis将变成一个纯内存数据库,就像memcache一样。

评分

参与人数 1可用积分 +20 收起 理由
飘絮絮絮丶 + 20 赞一个!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP