09 2019 档案
摘要:一、泊松分布 日常生活中,大量事件是有固定频率的。 某医院平均每小时出生3个婴儿 某公司平均每10分钟接到1个电话 某超市平均每天销售4包xx牌奶粉 某网站平均每分钟有2次访问 它们的特点就是,我们可以预估这些事件的总数,但是没法知道具体的发生时间。已知平均每小时出生3个婴儿,请问下一个小时,会出生
阅读全文
摘要:二叉查找树 由于红黑树本质上就是一棵二叉查找树,所以在了解红黑树之前,咱们先来看下二叉查找树。 二叉查找树(Binary Search Tree),也称有序二叉树(ordered binary tree),排序二叉树(sorted binary tree),是指一棵空树或者具有下列性质的二叉树: 若
阅读全文
摘要:https://www.tuicool.com/articles/jQjaeeQ
阅读全文
摘要:https://www.w3cschool.cn/echarts_tutorial/echarts_tutorial-nw9328xh.html
阅读全文
摘要:Zookeeper是分布式服务治理中间件 一、Zookeeper的简介 Zookeeper是分布式服务治理中间件 一、Zookeeper的简介 Zookeeper是分布式服务治理中间件 一、Zookeeper的简介 官方文档上这么解释zookeeper,它是一个分布式服务框架,是Apache Had
阅读全文
摘要:概述 本文是学习大型分布式网站架构的技术总结。对架构一个高性能、高可用、可伸缩及可扩展的分布式网站进行了概要性描述,并给出一个架构参考。文中一部分为读书笔记,一部分是个人经验总结,对大型分布式网站架构有较好的参考价值。 一、大型分布式网站架构技术 1、大型网站的特点 用户多,分布广泛 大流量,高并发
阅读全文
摘要:一、 引言 由于网上介绍的分布式的系统讲解并没有多少,所以在这儿就希望可以写一套系统的分布式的详解,未来也结合springboot的搭建分布式系统进行详细构建。也愿意坚持写下去,写给自己也分享给大家,希望大家可以提出宝贵的意见,一同长进。哈哈。。第一篇文章,开个头。 二、分布式定义。 了解起来分布式
阅读全文
摘要:随着计算机系统规模变得越来越大,将所有的业务单元集中部署在一个或若干个大型机上的体系结构,已经越来越不能满足当今计算机系统,尤其是大型互联网系统的快速发展,各种灵活多变的系统架构模型层出不穷。分布式的处理方式越来越受到业界的青睐——计算机系统正在经历一场前所未有的从集中式向分布式架构的变革。 集中式
阅读全文
摘要:一、 引言 由于网上介绍的分布式的系统讲解并没有多少,所以在这儿就希望可以写一套系统的分布式的详解,未来也结合springboot的搭建分布式系统进行详细构建。也愿意坚持写下去,写给自己也分享给大家,希望大家可以提出宝贵的意见,一同长进。哈哈。。第一篇文章,开个头。 二、分布式定义。 了解起来分布式
阅读全文
摘要:https://www.cnblogs.com/best/p/5648740.html
阅读全文
摘要:Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。 1、parameterType(输入类型) 通过parameterType指定输入参数的类型,类型可以是简单类型、hashmap、pojo的包装类型。#{}实现的是向prep
阅读全文
摘要:在全集配置文件中引入dtd约束“http://mybatis.org/dtd/mybatis-3-config.dtd”,主要有以下几个标签,现在详细解释下这几个标签的使用 1、properties属性 引入外部properties配置文件 <?xml version="1.0" encoding=
阅读全文
摘要:从输出结果可以看出,null对应的key已经被过滤掉;这明显不是我们想要的结果,这时我们就需要用到fastjson的SerializerFeature序列化属性 也就是这个方法:JSONObject.toJSONString(Object object, SerializerFeature... f
阅读全文
摘要:如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中: <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>x.x.x</vers
阅读全文
摘要:jdbc连接池的弊端 1、数据库连接,使用时就创建,不使用立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响 数据库性能。设想:使用数据库连接池管理数据库连接。2、将sql语句硬编码到java代码中,如果sql 语句修改,需要重新编译java代码,不利于系统维护。设想:将sql语句配
阅读全文
摘要:在应用中,有时没有把某个类注入到IOC容器中,但在运用的时候需要获取该类对应的bean,此时就需要用到@Import注解。示例如下: 先创建两个类,不用注解注入到IOC容器中,在应用的时候在导入到当前容器中。 1、创建Dog和Cat类 package com.example.demo; public
阅读全文
摘要:MVC注解式开发即处理器基于注解的类开发, 对于每一个定义的处理器, 无需在xml中注册. 只需在代码中通过对类与方法的注解, 即可完成注册. 定义处理器 @Controller: 当前类为处理器 @RequestMapping: 当前方法为处理器方法, 方法名随意, 对于请求进行处理与响应. @C
阅读全文
摘要:SpringMVC的工作原理图: SpringMVC流程 1、 用户发送请求至前端控制器DispatcherServlet。 2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处
阅读全文
摘要:今天看到一篇文章,很详细的描述了锁和锁粒度的概念,如下 为什么要加锁?加锁是为了防止不同的线程访问同一共享资源造成混乱。打个比方:人是不同的线程,卫生间是共享资源你在上洗手间的时候肯定要把门锁上吧,这就是加锁,只要你在里面,这个卫生间就被锁了,只有你出来之后别人才能用。想象一下如果卫生间的门没有锁会
阅读全文
摘要:总览图 如果文中内容有错误,欢迎指出,谢谢。 悲观锁、乐观锁 悲观锁、乐观锁使用场景是针对数据库操作来说的,是一种锁机制。 悲观锁(Pessimistic Lock):顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿
阅读全文
摘要:警告⚠️:本文耗时很长,先做好心理准备................哈哈哈 本篇我们讲通过大量实例代码及hotspot源码分析偏向锁(批量重偏向、批量撤销)、轻量级锁、重量级锁及锁的膨胀过程(也就是锁的升级过程) 我们先来说一下我们为什么需要锁? 因为在并发情况为了保证线程的安全性,是在一个多线程
阅读全文
摘要:一、原子性 原子性操作指相应的操作是单一不可分割的操作。例如,对int变量count执行count++d操作就不是原子性操作。因为count++实际上可以分解为3个操作:(1)读取变量count的当前值;(2)拿count的当前值和1做加法运算;(3)将加完后的值赋给count变量。 在多线程环境中
阅读全文
摘要:CPU的缓存一致性协议MESI 在多核CPU中,内存中的数据会在多个核心中存在数据副本,某一个核心发生修改操作,就产生了数据不一致的问题,而一致性协议正是用于保证多个CPU cache之间缓存共享数据的一致性。 cache的写操作 write through 写通 每次CPU修改cache中的内容会
阅读全文
摘要:什么是进程?什么是线程? 进程是系统中正在运行的一个程序,程序一旦运行就是进程。 进程可以看成程序执行的一个实例。进程是系统资源分配的独立实体,每个进程都拥有独立的地址空间。一个进程无法访问另一个进程的变量和数据结构,如果想让一个进程访问另一个进程的资源,需要使用进程间通信,比如管道,文件,套接字等
阅读全文
摘要:什么是线程阻塞? 在某一时刻某一个线程在运行一段代码的时候,这时候另一个线程也需要运行,但是在运行过程中的那个线程执行完成之前,另一个线程是无法获取到CPU执行权的(调用sleep方法是进入到睡眠暂停状态,但是CPU执行权并没有交出去,而调用wait方法则是将CPU执行权交给另一个线程),这个时候就
阅读全文
摘要:Java锁的种类以及辨析 锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) 。这些已经写好提供的锁为我们开发提供了便利,但是锁的具体性质以及类型却很少被提及。本系列文章将分析JAVA中常见的锁以及其特性,为大家答疑解
阅读全文
摘要:最近在读吴军的《谷歌方法论》和《见识》,结合自己的理解分享一下里面的观点。一本书其实观点也就一页纸这么多,其他的内容都是在举例子证明这些观点。不同的人在不同的年龄段对书中观点的理解会不一样,因为观点的理解和自己的经历有关,经历和观点产生共鸣才能有所收获。所以我并没有把书中全部的观点总结出来,而是结合
阅读全文
摘要:1 使用场景 关闭空闲连接。服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之。 清理过期数据业务上。比如缓存中的对象,超过了空闲时间,需要从缓存中移出。 任务超时处理。在网络协议滑动窗口请求应答式交互时,处理超时未响应的请求。 下单之后如果三十分钟之内没有付款就自动取消订单。 订餐通知:下单
阅读全文
摘要:可扩展的实时事务处理 我们相信编写并发、容错、可扩展的应用相当的困难。盖因大多数时候我们一直在使用错误的工具和错误的抽象等级。AKKA就是为了改变这一切的。我们利用角色模型提升了抽象等级,并且提供了一个用来构建可扩展的、弹性的以及响应式应用的更好的平台——更多信息请见Reactive Manifes
阅读全文
摘要:原文:http://doc.akka.io/docs/akka/2.3.6/general/terminology.html 译者:吴京润 本章我们试图建立一个通用的术语列表,用来定义有关并发和分布式系统的坚实的基础,而这也是akka的目标。请注意,在这些术语当中许多并没有一致的定义。我们简单的寻求
阅读全文
摘要:原文: http://doc.akka.io/docs/akka/2.3.5/general/actors.html 译者:Vitas 什么是角色? 前面角色系统一节介绍了一群角色如何形成一个层次结构,并且介绍了角色是构建应用程序的最小单位。本节我们将角色拿出来单独介绍,解释一些你在使用它的过程中可
阅读全文
摘要:前言...... Akka是一个构建在JVM上,基于Actor模型的的并发框架,为构建伸缩性强,有弹性的响应式并发应用提高更好的平台。本文主要是个人对Akka的学习和应用中的一些理解。 Actor模型 Akka的核心就是Actor,所以不得不说Actor,Actor模型我通俗的举个例子,假定现实中的
阅读全文
摘要:前言...... 前面简单介绍了Solace来自于哪家公司, 主要能做哪些事情. 本篇主要进一步介绍Solace作为消息传递的中间件如何工作的. 传统意义上来讲, 每当我们谈到消息中间件时, 首先想到的是基于Message Queue,有Apache的 Active MQ, IBM的Webshere
阅读全文
摘要:什么是Solace? Solace是一家加拿大注册的公司,总部设在安大略省渥太华. 成立于2001年. 这家公司一直致力于获取信息的艺术和科学,并提供世界上最灵活,最强大的数据移动平台。 背景 在信息爆炸的时代, 信息/数据已成为每个行业的生命线。如黑石收购汤森路透F&R的55%股权, 目标就是路透
阅读全文
摘要:实体类 如果我们想要将实体类中的某个字段或某几个不进行解析呢?那么我们可以使用transient 关键字,来标记它为不需要的,在fastjson中还提供了一种便捷的方法来自定义我们需要序列化的字段, 这样就只会序列化 id和age 的字段。
阅读全文
摘要:Java并发编程:Lock 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问 传送门。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。 也许有朋友会问,既然都可以通
阅读全文
摘要:前言.... 前言:把这段时间复习的关于集合类的东西整理出来,特别是HashMap相关的一些东西,之前都没有很注意1.7 ->> 1.8的变化问题,但后来发现这其实变化挺大的,而且很多整理的面试资料都没有更新(包括我之前整理的...) 1)说说常见的集合有哪些吧? 答:Map接口和Collectio
阅读全文
摘要:前言...... 前言:在之前的面试中,每每问到关于Java I/O 方面的东西都感觉自己吃了大亏..所以这里抢救一下..来深入的了解一下在Java之中的 I/O 到底是怎么回事..文章可能说明类的文字有点儿多,希望能耐心读完.. 什么是 I/O? 学习过计算机相关课程的童鞋应该都知道,I/O 即输
阅读全文
摘要:前言............. volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是
阅读全文
摘要:一、前言 只有光头才能变强 认识我的朋友可能都知道我这阵子去实习啦,去的公司说是用SpringCloud(但我觉得使用的力度并不大啊~~)... 所以,这篇主要来讲讲SpringCloud的一些基础的知识。(我就是现学现卖了,主要当做我学习SpringCloud的笔记吧!)当然了,我的水平是有限的,
阅读全文
摘要:为获得更好的阅读体验,请访问原文:传送门 一、流(Stream)简介 流是 Java8 中 API 的新成员,它允许你以声明式的方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现)。这有点儿像是我们操作数据库一样,例如我想要查询出热量较低的菜品名字我就可以像下面这样: 您看,我们并没有对菜
阅读全文
摘要:前言:什么是JDBC 维基百科的简介: Java 数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。它JDBC
阅读全文
摘要:前言 单例模式在平时算比较常见,有关java单例模式的写法有很多种,在这里分析一种比较好的写法。 代码 代码解释: 第一个注意点:使用私有的构造函数,确保正常情况下该类不能被外部初始化(非正常情况比如通过反射初始化,一般使用反射之后单例模式也就失去效果了)。 第二个注意点:getInstance方法
阅读全文
摘要:static 那天我朋友问了我个问题,static和单例模式有什么区别,所以我觉得static可以讲一下 他的问题是,把对象弄成static是不是就不变了 显然,这是还没弄清楚引用和对象的区别 其实存放在静态区中的是引用,而不是对象。而对象是存放在堆中的。如果有这样一句话 意思就是book这个引用,
阅读全文
摘要:在面向对象编程中必不可少需要在代码中定义对象模型,而在基于Java的业务平台开发实践中尤其如此。相信大家在平时开发中也深有感触,本来是没有多少代码开发量的,但是因为定义的业务模型对象比较多,而需要重复写Getter/Setter、构造器方法、字符串输出的ToString方法和Equals/HashC
阅读全文
摘要:出现permission denied 指的是 没有权限 再重新设置一次就可以了 具体的操作如下: 命令行中输入 他会提示你输入新密码,再次输入密码,就输入以前的一样的就行,成功之后,输入 如下图所示: 这时候你会发现你输入命令前的 $ 号已经变成 # 号,这就证明你已经成功了
阅读全文
摘要:vmware安装步骤 https://www.seoxiehui.cn/article-108867-1.html linux安装步骤 https://blog.csdn.net/iqmae68024/article/details/54772918 调整大小 https://jingyan.bai
阅读全文
摘要:Vue 项目创建完成后,使用 Web Storm 打开项目,项目目录如下: build 文件夹,用来存放项目构建脚本 config 中存放项目的一些基本配置信息,最常用的就是端口转发 node_modules 这个目录存放的是项目的所有依赖,即 npm install 命令下载下来的文件 src 这
阅读全文
摘要:在Vue.js 中,如果网络请求使用 axios ,并且使用了 ElementUI 库,那么一般来说,文件上传有两种不同的实现方案: 两种方案,各有优缺点,我们分别来看。 准备工作 首先我们需要一点点准备工作,就是在后端提供一个文件上传接口,这是一个普通的 Spring Boot 项目,如下: 这里
阅读全文
摘要:搞Spring Boot的小伙伴都知道,Spring Boot中的配置文件有两种格式,properties或者yaml,一般情况下,两者可以随意使用,选择自己顺手的就行了,那么这两者完全一样吗?肯定不是啦!本文就来和大伙重点介绍下yaml配置,最后再来看看yaml和properties配置有何区别。
阅读全文
摘要:在 Spring Boot 中,配置文件有两种不同的格式,一个是 properties ,另一个是 yaml 。 虽然 properties 文件比较常见,但是相对于 properties 而言,yaml 更加简洁明了,而且使用的场景也更多,很多开源项目都是使用 yaml 进行配置(例如 Hexo)
阅读全文
摘要:使用 Spring Boot Jpa 开发时,发现国内对 Spring Boot Jpa 全面介绍的文章比较少案例也比较零碎,因此写文章总结一下Spring Data JPA 参考指南! Spring Boot Jpa 介绍 首先了解 Jpa 是什么? Jpa (Java Persistence A
阅读全文
摘要:案例 有一天,产品跑来说:“我们要做一个用户注册功能,需要在用户注册成功后给用户发一封成功邮件。” 小明(攻城狮):“好,需求很明确了。” 不就提供一个注册接口,保存用户信息,同时发起邮件调用,待邮件发送成功后,返回用户操作成功。没一会功夫,代码就写完了。验证功能没问题后,就发布上线了。 线上正常运
阅读全文
摘要:前言 基于之前一篇“一个故事告诉你什么是消息队列”,了解了消息队列的使用场景以及相关的特性。本文主要讲述消息服务在 JAVA 中的使用。 市面上的有关消息队列的技术选型非常多,如果我们的代码框架要支持不同的消息实现,在保证框架具有较高扩展性的前提下,我们势必要进行一定的封装。 在 JAVA 中,大可
阅读全文
摘要:什么是Java消息服务 Java消息服务指的是两个应用程序之间进行异步通信的API,它为标准消息协议和消息服务提供了一组通用接口,包括创建、发送、读取消息等,用于支持JAVA应用程序开发。在J2EE中,当两个应用程序使用JMS进行通信时,它们之间并不是直接相连的,而是通过一个共同的消息收发服务连接起
阅读全文
摘要:前言. java堆,栈,方法区,常量池...... 栈 在函数中定义的一些基本类型的变量数据和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当该变量退出该作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他
阅读全文
摘要:1、Oracle Java SE 8 产品组件 通过上面给定的地址,我们可以看到如下这张图: 通常来说 Java平台标准版(Java SE)包括 Java SE开发工具包(JDK)和Java SE运行时环境(JRE)。 JRE提供了运行以Java编程语言编写的applet和应用程序所必需的库,Jav
阅读全文
摘要:我们知道 ArrayList 是一个集合,它能存放各种不同类型的数据,而且其容量是自动增长的。那么它是怎么实现的呢? 其实 ArrayList 的底层是用 数组实现的。我们查看 JDK 源码也可以发现。而用数组实现集合的原理有两点: 1、能自动扩容 2、能存放不同类型的数据 这两点我们是这样解决的:
阅读全文
摘要:一、集合的由来 通常,我们的程序需要根据程序运行时才知道创建多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只
阅读全文
摘要:一、背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis , 以下简称SSM)框架的搭建的经历,所以在自己搭建SSM框架集成的时候,出现了这样或者那样的问题,很是苦恼,网络上又没有很详细的讲解以及搭建的教程。闲来无事,我就利用空闲时间来写这样一个教程和搭建步骤,来帮
阅读全文
摘要:一、概述 代理模式是Java常用的设计模式之一,实现代理模式要求代理类和委托类(被代理的类)具有相同的方法(提供相同的服务),代理类对象自身并不实现真正的核心逻辑,而是通过调用委托类对象的相关方法来处理核心逻辑,而代理类对象主要负责为委托类对象过滤消息、预处理消息、转发消息给委托类、事后处理消息等等
阅读全文
摘要:一、背景 最近在学习设计模式,在看到单例模式的时候,我一开始以为直接很了解单例模式了,实现起来也很简单,但是实际上单例模式有着好几个变种,并且多线程中涉及到线程安全问题,那么本文我们就来好好聊聊单例模式,说一下经典三种实现方式:饿汉式、懒汉式、登记式。并且解决掉多线程中可能出现的线程安全问题。 二、
阅读全文
摘要:一、安装环境 1、本机系统:Windows 10 Pro(64位)2、Node.js:v6.9.2LTS(64位) 二、安装Node.js步骤 1、下载对应你系统的Node.js版本:https://nodejs.org/en/download/2、选安装目录进行安装3、环境配置4、测试 三、前期准
阅读全文
摘要:前言......... 并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能。它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰、思维缜密,这样才能写出高效、安全、可靠的多线程并发程序。本系列会从线程间协调的方式(wait、notify、notifyAll)、Syn
阅读全文
摘要:一、volatile的作用 在《Java并发编程:核心理论》一文中,我们已经提到过可见性、有序性及原子性问题,通常情况下我们可以通过Synchronized关键字来解决这些个问题,不过如果对Synchronized原理有了解的话,应该知道Synchronized是一个比较重量级的操作,对系统的性能有
阅读全文
摘要:一、线程的状态 Java中线程中状态可分为五种:New(新建状态),Runnable(就绪状态),Running(运行状态),Blocked(阻塞状态),Dead(死亡状态)。 New:新建状态,当线程创建完成时为新建状态,即new Thread(...),还没有调用start方法时,线程处于新建状
阅读全文
摘要:一、重量级锁 上篇文章中向大家介绍了Synchronized的用法及其实现的原理。现在我们应该知道,Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的。但是监视器锁本质又是依赖于底层的操作系统的Mutex Lock来实现的。而操作系统实现线程之间的切换这就需要从用户态
阅读全文
摘要:一、Synchronized的基本使用 Synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法。Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。从语法上讲,Synchronize
阅读全文
摘要:前言........... 上一篇文章我们讲了Akka Remote,理解了Akka中的远程通信,其实Akka Cluster可以看成Akka Remote的扩展,由原来的两点变成由多点组成的通信网络,这种模式相信大家都很了解,就是集群,它的优势主要有两点:系统伸缩性高,容错性更好。 集群概念 很多
阅读全文
摘要:前言.... Akka作为一个天生用于构建分布式应用的工具,当然提供了用于分布式组件即Akka Remote,那么我们就来看看如何用Akka Remote以及Akka Serialization来构建分布式应用。 背景 很多同学在程序的开发中都会遇到一个问题,当业务需求变得越来越复杂,单机服务器已经
阅读全文
摘要:前言........ 这一篇文章主要是讲解Akka persistence的核心设计理念,也是CQRS(Command Query Responsibility Segregation)架构设计的典型应用,就让我们来看看为什么Akka persistence会采用CQRS架构设计。 CQRS 很多时
阅读全文
摘要:前言.......... 我们在使用Akka时,会经常遇到一些存储Actor内部状态的场景,在系统正常运行的情况下,我们不需要担心什么,但是当系统出错,比如Actor错误需要重启,或者内存溢出,亦或者整个系统崩溃,如果我们不采取一定的方案的话,在系统重启时Actor的状态就会丢失,这会导致我们丢失一
阅读全文
摘要:前言..... 文档来源于 : What problems does the actor model solve? Actor解决了什么问题? Akka使用Actor模型来克服传统面向对象编程模型的局限性,并应对高并发分布式系统所带来的挑战。 充分理解Actor模型是必需的,它有助于我们认识到传统的
阅读全文
摘要:前言....... 随着CPU的核数的增加,异步编程模型在并发领域中的得到了越来越多的应用,由于Scala是一门函数式语言,天然的支持异步编程模型,今天主要来看一下Java和Scala中的Futrue,带你走入异步编程的大门。 Future 很多同学可能会有疑问,Futrue跟异步编程有什么关系?从
阅读全文
摘要:前言...... 通过前几篇的学习,相信大家对Akka应该有所了解了,都说解决并发哪家强,JVM上面找Akka,那么Akka到底在解决并发问题上帮我们做了什么呢? 共享内存 众所周知,在处理并发问题上面,最核心的一部分就是如何处理共享内存,很多时候我们都需要花费很多时间和精力在共享内存上,那么在学习
阅读全文
摘要:前言...... Akka作为一种成熟的生产环境并发解决方案,必须拥有一套完善的错误异常处理机制,本文主要讲讲Akka中的监管和容错。 监管 看过我上篇文章的同学应该对Actor系统的工作流程有了一定的了解 Akka系列(二):Akka中的Actor系统,它的很重要的概念就是分而治之,既然我们把任务
阅读全文
摘要:前言......... Actor模型作为Akka中最核心的概念,所以Actor在Akka中的组织结构是至关重要,本文主要介绍Akka中Actor系统。 1.Actor系统 Actor作为一种封装状态和行为的对象,总是需要一个系统去统一的组织和管理它们,在Akka中即为ActorSystem,其实这
阅读全文
摘要:Akka是一个构建在JVM上,基于Actor模型的的并发框架,为构建伸缩性强,有弹性的响应式并发应用提高更好的平台。本文主要是个人对Akka的学习和应用中的一些理解。 Actor模型 Akka的核心就是Actor,所以不得不说Actor,Actor模型我通俗的举个例子,假定现实中的两个人,他们只知道
阅读全文
摘要:Single Dispatch class Parent { void print(String a) { log.info("Parent - String"); } void print(Object a) { log.info("Parent - Object"); } } class Chi
阅读全文
摘要:前言.... 作为一名 Java 程序员,你应该知道,Java 代码有很多种不同的运行方式。比如说可以在开发工具中运行,可以双击执行 jar 文件运行,也可以在命令行中运行,甚至可以在网页中运行。当然,这些执行方式都离不开 JRE,也就是 Java 运行时环境。实际上,JRE 仅包含运行 Java
阅读全文
摘要:【常见目录说明】 目录 /bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。 /etc 存放系统管理和配置文件 /home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /usr 用于存放系统应用
阅读全文
摘要:vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它
阅读全文
摘要:Vim命令合集 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件 文件命令 打开单个文件 vim file 同时打开
阅读全文
摘要:1.1Linux是什么 Linux是在计算机上面运作的,所以说是一组软件。 1.2 Linux是什么?操作系统还是应用程序? 计算机主机是由一套硬件所组成的,为了有效的控制这些硬件资源,于是就有了操作系统的产生。因此,Linux就是一套操作系统 欢迎您点击链接进入Linux公社网站 2.Linux的
阅读全文
摘要:最近都在和Linux打交道,觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。为了方便大家查找linux的相关命令,将我了解到的命令列举一下,仅供大家参考: 系统信息 arch 显示机器的处理器架构(1) uname
阅读全文