美文网首页
使用并发的目的和并发的其中常用模型

使用并发的目的和并发的其中常用模型

作者: 每天学点编程 | 来源:发表于2018-02-05 09:26 被阅读21次

请关注我的微信公众号

个人微信公众号

技术交流群 (仅作技术交流):642646237

​请关注我的头条号:

使用并发的目的

  • 为了让程序并行运行从而发挥多核的优势
  • 若正确使用并发,程序还将获得及时响应、高效、容错、简单

并发的世界,并发的软件

世界是并发的,为了与其有效地交互,软件也应是并发的。
并发是系统及时响应的关键。

如果解决方案有着与问题类似的并发结构,就会简单许多:不需要创建一个复杂的线程来处理问题中的多个任务,只需要用多个简单的线程分别处理不同的任务即可。

分布式软件

地理分布型问题。软件在非同步运行的多台计算机上分布式地运行,其本质是并发。
分布式软件还具有容错性。

为了增强软件的容错性,并发代码的关键是独立性和故障检测。
独立性是指一个故障不会影响到故障任务以外的其他任务。
故障检测是指当一个任务失败时(原因可能是任务崩溃、失去响应或硬件故障),需要通知负责故障处理的其他任务来处理。
串行程序的容错性远不如并发程序。

七个模型——线程与锁

是其他模型的技术基础。

七个模型——函数式编程

其对并发编程和并行编程提供了良好的支持。
函数式编程消除了可变状态,所以从根本上是线程安全的,而且易于并行执行。

七个模型——Clojure之道分离标识与状态

七个模型——actor

适用于共享内存模型和分布式内存模型,也适合解决地理分布型问题,能提供强大的容错性。

七个模型——通信顺序进程(Communicating Sequential Processes,CSP)

表面上看,CSP模型与actor模型很相似,两者都基于消息传递。
不过CSP模型侧重于传递信息的通道,而actor模型侧重于通道两端的实体,使用CSP模型的代码会带有明显不同的风格。

七个模型——数据级并行

七个模型——Lambda架构

Lambda架构综合了MapReduce和流式处理的特点,是一种可以处理多种大数据问题的架构。

相关文章

  • 使用并发的目的和并发的其中常用模型

    请关注我的微信公众号 个人微信公众号 技术交流群 (仅作技术交流):642646237 ​请关注我的头条号: 使用...

  • Java Concurrency 并发模型

    Java Concurrency 并发模型 并发系统可以使用不同的并发模型来实现。 并发模型指定系统中的线程如何协...

  • Go并发模型:并发协程chan的优雅退出

    Go并发模型:并发协程chan的优雅退出 go chan的使用

  • 2019-03-20

    1. go的并发调度模型? go的并发调度模型可以简称为GPM模型,其中G代表goroutine,P代表gorou...

  • Golang CSP并发模型

    今天介绍一下 go语言的并发机制以及它所使用的CSP并发模型 CSP并发模型 CSP模型是上个世纪七十年代提出的,...

  • Golang CSP并发模型

    go语言的并发机制以及它所使用的CSP并发模型 CSP并发模型CSP模型是上个世纪七十年代提出的,用于描述两个独立...

  • jmeter之接口测试使用流程

    一、工具使用详解——jmeter 1、常用测试原件: 测试计划:默认 线程组:并发数、并发时间、并发次数 采样器:...

  • Elixir 简明笔记(十九) --- 多进程

    多进程 Elixir强大的并发来自其actor并发模型,简而言之就是可以使用大量的进程来实现并发。elixir中的...

  • Java并发基础篇(4):并发编程模型

    转自并发编程网:http://ifeve.com/ 并发系统可以采用多种并发编程模型来实现。并发模型指定了系统中的...

  • 并发模型(转载)

    并发系统可以采用多种并发模型来实现。并发模型指定了系统中的线程如何通过协作来完成分配给它们的作业。不同的并发模型采...

网友评论

      本文标题:使用并发的目的和并发的其中常用模型

      本文链接:https://www.haomeiwen.com/subject/xfkbzxtx.html