先看个正常的写法: scala> val x = 1 x: Int = 1 体会一下元组的写法: scala> val (x,y,z)=(1,2,3) x: Int = 1 y: Int = 2 z: Int = 3 再来体会一个Array的匹配: scala> val Array(x,y,_)=Array(1,2,3) x: Int = 1 y: Int = 2 很好理解嘛!调用了Array伴生对象的unapplySeq(arr)嘛! 再来看个崩溃一点的: scala> val…
Bash 变量是不分类型的 ------------------------ 不像其他程序语言一样,Bash 并不对变量区分"类型".本质上,Bash 变量都是字符串. 但是依赖于上下文,Bash 也允许比较操作和算术操作.决定这些的关键因素就是,变量中的值 是否只有数字. 赋值 a= a="sdsd" #注意=左右不要有空格,否则就变成比较字符串操作 引用 $a #借助$符 操作字符串 字符穿连接 a="sdfs" b="dsds&q…
第 1 章 scala的概述1 1.1 学习sdala的原因 1 1.2 Scala语言诞生小故事 1 1.3 Scala 和 Java  以及 jvm 的关系分析图 2 1.4 Scala语言的特点 3 1.5 Windows下搭建Scala开发环境 4 1.6 Linux下搭建Scala开发环境 5 1.7 Scala开发工具的介绍 8 1.7.1 idea工具的介绍 8 1.7.2 Scala插件安装 8 1.8 scala的开发的快速入门 10 1.8.1 IDE工具Idea 来开发 “…
第2章 变量 val,var,声明变量必须初始化:变量类型确定后不可更改 数据类型:与java有相同的数据类型,在scala中数据类型都是对象 特殊类型:Unit:表示无值,只有一个实例值写出(),相当于void:Null:null:Nothing:null(表示非正常执行) 标识符命名规范:大于1个操作符可以作为标识符:反引号包含的任意字符,包含关键字 scala关键字 第3章 运算符 没有java中的++,--,使用+=,-=替代 键盘输入:StdIn.readxxx 第4章 流程控制 if…
基于.net的分布式系统限流组件   在互联网应用中,流量洪峰是常有的事情.在应对流量洪峰时,通用的处理模式一般有排队.限流,这样可以非常直接有效的保护系统,防止系统被打爆.另外,通过限流技术手段,可以让整个系统的运行更加平稳.今天要与大家分享一下限流算法和C#版本的组件. 一.令牌桶算法: 令牌桶算法的基本过程如下: 假如用户配置的平均发送速率为r,则每隔1/r秒速率将一个令牌被加入到桶中: 假设桶最多可以存发b个令牌.当桶中的令牌达到上限后,丢弃令牌. 当一个有请求到达时,首先去令牌桶获取令…
Scala与Java具有很多相似之处,但又有很多不同.这里主要从一个Java开发者的角度,总结在使用Scala的过程中所面临的一些思维转变. 这里仅仅是总结了部分两种语言在开发过程中的不同,以后会陆续更新一些切换后在开发过程中值得注意的地方.以下列举了部分,但令人印象深刻的Scala语言的不同之处,具体的代码演示样例及具体阐述见下文.  Scala中可直接调用Java代码,与Java无缝连接. 语句能够不用";"结束.且推荐不适用";". 变量声明时以var或va…
1. AQS共享模式 前面已经说过了AQS的原理及独享模式的源码分析,今天就来学习共享模式下的AQS的几个接口的源码. 首先还是从顶级接口acquireShared()方法入手: public final void acquireShared(int arg) { if (tryAcquireShared(arg) < 0) doAcquireShared(arg); } 与acquire()方法一样,tryAcquireShared()为自己是实现的对资源获取的接口,AQS对返回值的语义已经定…
(1)jdk中原子类的使用: jdk5中提供了很多原子类,它会使变量的操作变成原子性的. 原子性:原子性指的是一个操作是不可中断的,即使是在多个线程一起操作的情况下,一个操作一旦开始,就不会被其他线程干扰. jdk中的rt.jar中提供给了很多的原子性操作类.它们是位于java.util.concurrent.atomic包中,如图: 由图可以看到,jdk提供了很多基础类型的原子类操作,已经对象(AomicReference)原子操作类,数组的原子操作类,已经对象属性院子操作类(AtomicRe…
CockroachDB学习笔记--[译]CockroachDB中的SQL:映射表中数据到键值存储 原文标题:SQL in CockroachDB: Mapping Table Data to Key-Value Storage 原文链接:https://www.cockroachlabs.com/blog/sql-in-cockroachdb-mapping-table-data-to-key-value-storage/ 原作者:Peter Mattis , Tamir Duberstein…
作者:Grey 原文地址:Redis学习笔记八:集群模式 前面提到的Redis学习笔记七:主从复制和哨兵只能解决Redis的单点压力大和单点故障问题,接下来要讲的Redis Cluster模式,主要是用来解决Redis的单点容量问题. 如何来解决Redis单点容量问题呢? 如果数据可以拆分,我们可以让不同业务的客户端打到不同的Redis实例中. 如果数据不能拆分,我们有如下方式: 方案2-1 modula方式 可以通过Hash加上取模的方式来定位打到哪个Redis实例中. 这种方式的弊端在于:模…