首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

分布式队列编程:模型与实战

介绍 作为一种基础的抽象数据结构,队列被广泛应用在各类编程中。大数据时代对跨进程、跨机器的通讯提出了更高的要求,和以往相比,分布式队列编程的运用几乎已无处不在。但是,这种常见的基础性的事物往往容易被忽视,使用者往往会忽视两点: 使用分布式队列的时候,没有意识到它是队列。 有具体需求的时候,忘记了分布式队列的存在。 文章首先从最基础的需求出发,详细剖析分布式队列编程模型的需求来源、定义、结构以及其变化多样性。通过这一部分的讲解,作者期望能在两方面帮助读者:一方面,提供一个系统性的思考方法,使读者能够将具体需求

08
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    分布式系统设计新手入门---1,微服务的拆分

    在我的文章《Web Services的分布式方法》中介绍了分布式设计的方法。但读者反映太过学术化而无法理解。促使我开始这个系列文章的创作,以方便新手能够在实践中使用分布式技术。虽然分布式是一个历史悠久的概念,最早的分布式系统出现在20世纪60年代末推出的ARPANET。但时到今日分布式系统设计都对新手非常的不友好。也可能你学习过大量的分布式的理论,但面对复杂的软件系统仍然也感到束手无策。那么希望这个系列的文章能帮助你重新梳理分布式的知识,建立正确设计分布式系统的方法论。首先分布式的入门要求并不高,需要你是个有一定开发经验的软件工程师,了解基本的并发编程知识。并发编程是分布式设计的基础。你会发现并发编程的知识在分布式系统设计中被经常的使用。但请不要混淆并发编程和分布式系统设计,这是两个完全不同的概念。这里的并发编程特指使用多线程开发软件系统的方法。分布式系统设计是比并发编程更高级的软件系统设计开发行为。在本文中我们先快速的描述一个典型的服务,以及如何一步一步的拆分这个服务为微服务。通过对这个典型的案例,介绍拆分服务的基本方法。然后我们再逐步讨论为什么使用这个方法论,以及这个方法论的使用条件和原理。

    02

    SDP(0):Streaming-Data-Processor - Data Processing with Akka-Stream

    再有两天就进入2018了,想想还是要准备一下明年的工作方向。回想当初开始学习函数式编程时的主要目的是想设计一套标准API給那些习惯了OOP方式开发商业应用软件的程序员们,使他们能用一种接近传统数据库软件编程的方式来实现多线程,并行运算,分布式的数据处理应用程序,前提是这种编程方式不需要对函数式编程语言、多线程软件编程以及集群环境下的分布式软件编程方式有很高的经验要求。前面试着发布了一个基于scalaz-stream-fs2的数据处理工具开源项目。该项目基本实现了多线程的数据库数据并行处理,能充分利用域内服务器的多核CPU环境以streaming,non-blocking方式提高数据处理效率。最近刚完成了对整个akka套装(suite)的了解,感觉akka是一套理想的分布式编程工具:一是actor模式提供了多种多线程编程方式,再就是akka-cluster能轻松地实现集群式的分布式编程,而集群环境变化只需要调整配置文件,无需改变代码。akka-stream是一套功能更加完整和强大的streaming工具库,那么如果以akka-stream为基础,设计一套能在集群环境里进行分布式多线程并行数据处理的开源编程工具应该可以是2018的首要任务。同样,用户还是能够按照他们熟悉的数据库应用编程方式轻松实现分布式多线程并行数据处理程序的开发。

    01
    领券