0

2. Scala变量

2.1 变量是程序的基本组成单位 举一个简单的例子 2.2 变量的介绍 2.2.1 概念 变量相当于内存中一个数据存储空间的表示,可以把变量看作是一个房间的门牌号,通过门牌号我们可以找到对应的房间,而通过变量名可以访问到变量(值)。 2.2.2 变量使用的基本步骤 1) 声明/定义变量(Scala要 ...

铖歌 发布于 2019-04-20 20:07 评论(0)阅读(67)
0

Akka-CQRS(5)- CQRS Writer Actor 部署和测试

上篇我们做了一个WriterActor的例子,主要目的是示范WriterActor如何作为集群分片用persistentActor特性及event-sourcing模式实现CQRS的写功能。既然是集群分片,那么我们就在这篇讲讲WriterActor的部署和测试,因为这个里面还是有些值得注意的地方。下 ...

雪川大虫 发布于 2019-04-06 20:55 评论(0)阅读(229)
0

Akka-CQRS(4)- CQRS Writer Actor 示范

我觉着,CQRS的写部分最核心、最复杂的部分应该是Writer-Actor了。其它的监管(supervising)、分片部署等都比较规范,没太多的变动。几乎Writer-Actor所有的业务逻辑都在Receive函数里,这个地方应该算是最复杂的地方。我的想法是搭建一个标准框架,保证可以运行Write ...

雪川大虫 发布于 2019-03-30 09:47 评论(1)阅读(265)
1

Akka-CQRS(3)- 再想多点,全面点

上篇我介绍了CQRS模式存写部分的具体实现和akka-persistence一些函数和消息的用法。在这篇本来是准备直接用一个具体的例子来示范CQRS模式编程,主要是写端,或者是数据采集端。想着模拟收银机的后端操作,可以使用集群分片(cluster-sharding),每个分片shard代表一部POS ...

雪川大虫 发布于 2019-03-20 14:36 评论(0)阅读(311)
0

2018-12-09 疑似bug_中文代码示例之Programming in Scala笔记第九十章

续前文: "中文代码示例之Programming in Scala笔记第七八章" 源文档库: "program in chinese/Programming_in_Scala_study_notes_zh" 疑似中文命名bug "program in chinese/Programming_in_S ...

吴烜 发布于 2019-03-11 11:02 评论(0)阅读(50)
0

2018-11-13 中文代码示例之Programming in Scala学习笔记第二三章

由于拷贝后文档格式有变, 仅摘几段如下. 完整而且代码带语法高亮的源版在: "program in chinese/Programming_in_Scala_study_notes_zh" 前言: 本书已有中文版, 此笔记并不是对原教程的翻译, 而是围绕示例进行选摘, 并顺便将所有示例改成中文命名( ...

吴烜 发布于 2019-03-11 06:23 评论(0)阅读(51)
0

2018-02-17 中文代码示例[译]Scala中创建隐式函数

前言: 学习Scala时, 顺便翻译一下自己有兴趣的文章. 代码中所有命名都中文化了(不是翻译). 比如原文用的是甜甜圈的例子. 原文: "Scala Tutorial Learn How To Create Implicit Function" 简述 本文学习如何创建隐式函数, 以便对几乎任何类型 ...

吴烜 发布于 2019-03-07 14:24 评论(0)阅读(50)
0

Scala_方法和函数

方法的定义 如果没有=和{}包裹的方法体,那么该方法被隐式申明为抽象(abstract)方法,包含它的类就是抽象类。 当输入相同类型的参数个数无法确定时,可以使用变长参数,如:def sum(args : Int*) = {for(arg <- args) println(arg)}。 如果方法体直 ...

99八十一 发布于 2019-03-05 00:22 评论(0)阅读(98)
0

Scala_数据类型

Scala与Java有着相同的数据类型,Scala数据类型都是对象,Scala中没有类似Java中那样的原始类型。Scala 的基本数据类型有: Byte,Short,Int,Long 和 Char (这些成为整数类型)。整数类型加上 Float 和 Double 成为数值类型。此外还有 Strin ...

99八十一 发布于 2019-03-04 22:02 评论(0)阅读(102)
0

scala-数组操作

package com.bigdata import scala.collection.mutable.ArrayBuffer object ArrayO { def main(args: Array[String]): Unit = { val arrayBuffer = ArrayBuffer[... ...

下雨天晒太阳 发布于 2019-02-14 14:35 评论(0)阅读(57)
0

Akka-CQRS(2)- 安装部署cassandra cluster,ubuntu-16.04.1-LTS and MacOS mojave

对于akka-cluster这样的分布式软件系统来说,选择配套的数据库类型也是比较讲究的,最好也是分布式的,如cassandra,能保证良好的HA特性。前面的例子里示范akka-persistence时已经使用了cassandra作为journal和snapshot-store。一直以来基本上都在一 ...

雪川大虫 发布于 2019-02-11 16:51 评论(0)阅读(295)
0

Spark笔记(一):错误总结

1.转义字符: 常见的replaceAll,split,mkstring中涉及到特殊字符的都要加上转义字符,比如str.split("\\|"),str.replaceAll("\\[", "") 报错信息: java.util.regex.PatternSyntaxException: Unclo ...

等木鱼的猫 发布于 2019-01-25 11:44 评论(0)阅读(134)
0

Akka-CQRS(0)- 基于akka-cluster的读写分离框架,构建gRPC移动应用后端架构

上一篇我们讨论了akka-cluster的分片(sharding)技术。在提供的例子中感觉到akka这样的分布式系统工具特别适合支持大量的带有内置状态的,相对独立完整的程序在集群节点上分布运算。这里重点要关注这些程序的内部状态,它们会占用系统资源包括内存。把状态保存在内存里相对存放在数据库里能显著提 ...

雪川大虫 发布于 2019-01-22 16:05 评论(0)阅读(456)
0

Scala-Unit7-Scala并发编程模型AKKA

一、Akka简介 Akka时spark的底层通信框架,Hadoop的底层通信框架时rpc。 并发的程序编写很难,但是Akka解决了spark的这个问题。 Akka构建在JVM平台上,是一种高并发、分布式、并且容错的应用工具包; Akka使用Scala语言编写,同时它提供了Scala和Java的开发接 ...

给你一个公主抱 发布于 2019-01-20 01:54 评论(0)阅读(48)
0

Scala-Unit6-final/type关键字、样例类&样例对象

一、关键字 1.final关键字 用final修饰的类:不能被继承 用final修饰的方法:不能被重写 注意:(1)在Scala中变量不需要用final修饰,因为val与var已经限制了变量是否可变 (2)final不能修饰特质,但是可以修饰抽象类 如图代码,Pig继承特质Animal后使用“ctr ...

给你一个公主抱 发布于 2019-01-17 18:59 评论(0)阅读(169)
0

Akka-Cluster(6)- Cluster-Sharding:集群分片,分布式交互程序核心方式

在前面几篇讨论里我们介绍了在集群环境里的一些编程模式、分布式数据结构及具体实现方式。到目前为止,我们已经实现了把程序任务分配给处于很多服务器上的actor,能够最大程度的利用整体系统的硬件资源。这是因为通过akka-cluster能够把很多服务器组合成一个虚拟的整体系统,编程人员不需要知道负责运算的 ...

雪川大虫 发布于 2019-01-17 08:51 评论(0)阅读(363)
0

Scala-Unit5-Scala面对对象与模式匹配

Java中的面向对象:万物皆对象。 我们要封装数据,定义模板等操作,素以我们需要面向对象。 一、Scala中的单例对象 在java中用static关键字修饰方法或成员变量,作用是可以直接通过"类名."的方式调用方法或变量 在Scala中没有static关键字,Scala给我们提供了单例对象的模式来实 ...

给你一个公主抱 发布于 2019-01-16 10:14 评论(0)阅读(62)
0

Spark-Unit2-Spark交互式命令行与SparkWordCount

一、Spark交互式命令行 启动脚本:spark-shell 先启动spark:./start-all.sh 本地模式启动命令:/bin/spark-shell 集群模式启动命令:/bin/spark-shell --master spark://spark-1:7077 --total-execu ...

给你一个公主抱 发布于 2019-01-13 10:26 评论(0)阅读(142)
0

scala-Unit-3-Scala基础语法2

一、定义方法、函数、及方法转换为函数 1.方法的定义: def 方法名(参数1:数据类型,参数2:数据类型...):返回值类型 ={ } 2.定义函数: val h1 = (a:Int,b:Int) => {a * b} 3.方法转换为函数(在Windows下的命令行操作) def m2(a:Int ...

给你一个公主抱 发布于 2019-01-09 23:03 评论(0)阅读(65)
0

Akka-Cluster(5)- load-balancing with backoff-supervised stateless computation - 无状态任务集群节点均衡分配

分布式程序运算是一种水平扩展(scale-out)运算模式,其核心思想是能够充分利用服务器集群中每个服务器节点的计算资源,包括:CPU、内存、硬盘、IO总线等。首先对计算任务进行分割,然后把细分的任务分派给各节点去运算。细分的任务相互之间可以有关联或者各自为独立运算,使用akka-cluster可以 ...

雪川大虫 发布于 2019-01-03 10:53 评论(1)阅读(359)