AKKA 的基本介绍 | 学习笔记

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 快速学习 AKKA 的基本介绍

开发者学堂课程【Scala 核心编程 - 进阶AKKA 的基本介绍学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/610/detail/9112


AKKA 的基本介绍


内容介绍:

一、Akka 介绍

二、AKKA 的 Actor 模型


一、Akka 介绍

Akka 是一种并发的编程模型,为后续提供了 scala 和 JAVA 的连接。

(1)Akka 是 JAVA 虚拟机 jvm 平台上构建高并发、分布式、和容错应用的工具包和运行时。

简单理解为Akka是编写并发程序的框架

(2)Akka 用 scala 语音写成,同时提供了 scala 和 JAVA 的开发接口。

(3)AKKA 主要解决的问题是:

可以轻松的写出搞笑稳定,并发程序,程序员不再过多的考虑线程、锁和资源竞争等细节。

往往作为沉浸式的服务器结构,是撑不住实际的需求

传统的服务器结构:多个客户端连接至一个服务器,服务器支撑不住

多数情况下,提供一个负载均衡,有软件或者硬件的类别

而后台存在都各服务器,负载均衡可以将任务分散至多个服务器进行,缓解压力,一个负载均衡下可再配置下属负载均衡

操作模式如下图:

image.jpeg

如果使用 Akka 则可以针对上述问题进行简化操作,包括网络通讯等。


二、AKKA 的 Actor 模型

Actor 模型可以作为 AKKA 的核心程序

(1)处理并发问题关键是要保证共享数据的一致性和正确性,因为程序是多线程的,多个线程对同一数据进行修改,若不加同步条件,势必会造成数据污染。

但是当我们对关键代码加入同步条件 sync hronized 后,实际上大并发就会堵塞在这段代码,对程序效率有很大影响。

通过 JAVA 代码演示和测试,通过票的模拟情况进行演示

新建章节

Public class test{

Calss  Ticket{

Public void saletick et(){

//代码

//卖票this

(互斥)不能同时多个线程在线,所以存在互斥问题

//代码

此时存在多线程在线换言之对数据效率有很大影响,Actor 模型的出现解决了这个问题,此时 AKKA 可以简化并发编程

(2)若用单线程处理,不会有数据一致性问题,但系统性能有不能保证

(3)Actor 模型的出现解决了这个问题,简化并发编程,提升程序性能。

可以这样理解:actor 模型是一种处理并发问题的解决方案。

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
并行计算 Scala
175 Scala 项目案例(Akka简介)
175 Scala 项目案例(Akka简介)
104 0
177 Akka详细学习资料
177 Akka详细学习资料
49 0
|
XML Dubbo 网络协议
Dubbo学习笔记(一)基本概念与简单使用
Dubbo学习笔记(一)基本概念与简单使用
Dubbo学习笔记(一)基本概念与简单使用
|
运维 网络协议 安全
Akka 网络编程基础 | 学习笔记
快速学习 Akka 网络编程基础
Akka 网络编程基础 | 学习笔记
|
弹性计算 分布式计算 安全
E-Mapreduce 基本介绍|学习笔记
快速学习 E-Mapreduce 基本介绍
E-Mapreduce 基本介绍|学习笔记
|
编解码
Thrift原理分析(一) 基本概念
Thrift原理分析(一) 基本概念
2496 0
|
Java API Scala
Akka源码分析-ActorSystem
  由于本人对Akka比较感兴趣,也用Akka开发了一些系统,但对Akka的源码还没有具体分析过,希望研究源码的同时写一点博客跟大家分享。有不当之处还请指正。我准备采取Debug的方式来研究Akka的运行过程,从入口开始,直至分析Akka是如何运转的。
2312 0
|
前端开发 Java 容器
Netty In Action中文版 - 第三章:Netty核心概念
Netty In Action中文版 - 第三章:Netty核心概念 在这一章我们将讨论Netty的10个核心类,清楚了解他们的结构对使用Netty很有用。可能有一些不会再工作中用到,但是也有一些很常用也很核心,你会遇到。
1361 0
|
Web App开发 分布式计算 Spark
附录B Akka简介
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/beliefer/article/details/77449909 注:本文是为了配合《Spark内核设计的艺术 架构设计与实现》一书的内容而编写,目的是为了节省成本、方便读者查阅。
1360 0