摘要:
InputStream字节输入流,outPutStream字节输出流 1)InputStream类提供了一系列读取数据有关的方法。它们都是抽象类,不能被实列化。 int read():从输入流中读取一个8位的bit,把它转换成一个0-255的整数,返回这一整数。列如:如果读到的字节为9,则返回9,如 阅读全文
摘要:
概述 类加载是一个将.class字节码文件实例化成Class对象,并进行相关初始化的过程。 1)类的加载 类的加载是指把类的.class文件中的二进制数据读入到内存中,把它存放在运行时数据区的方法区内,然后在堆区创建一个java.Lang.class对象,用来封装类在方法区内的数据结构。 1)首先我 阅读全文
摘要:
Redis数据类型 基本类型(String int): 如 set key value 、get key 等 所有命令都是按照 key value keys * 可以将全部数据列出,其中后面的 " * " 表示数据的匹配。 setnx key value 不覆盖设置,返回0表示失败(原来这个key已 阅读全文
摘要:
RabbitMQ概述 MQ的应用场景:异步,削峰,解耦 RabbitMQ是遵从AMQP协议的 通信协议都设计到报文交互,换句话说RabbitMQ就是AMQP协议的Erlang的实现。 AMQP说到底还是一个通信协议从low-level层面举例来说,AMQP本身是应用层的协议,其填充于TCP协议的数据 阅读全文
摘要:
概述 本文章只是简单介绍了微服务开发的一些关键词,如果需要知道具体实现和可以评论留言 我会及时的增加连接写出具体实现(感觉没人看 就没写具体实现)。 先说下分布式系统的CAP理论: C:一致性 A:可用性 P:分区容错性(集群 扩展性) CAP理论特点是三者得其二,也是分布式系统目前的瓶颈 Eure 阅读全文
摘要:
前言 观察者模式其实没啥,就是把方法调用 ,用多态抽象封装了一下。 调用方称为观察者,被调用方是被观察者。 和MQ非常类似 不过MQ是异步的 这个同步的 观察者模式基础 以下是小孩(被观察者)哭这个动作,通知所观察者(Mum Dad Dog)做出不同的反应 /** * 分离观察者与被观察者 */ c 阅读全文
摘要:
基本原理 数据库连接池的基本原理是,事先建立一定量的数据库连接,这些连接存放在连接池中,当java应用程序执行一个数据库事物时,只需要从连接池中取出空闲的数据库连接。 当java应用执行完后,再将数据库连接放回连接池。 连接池需要考虑以下的问题 限制连接池中最多、可以容纳的连接数目,避免过度消耗系统 阅读全文
摘要:
linux安装maven 先解压maven的压缩包apache-maven-3.5.4-bin.tar.gz 命令: tar -zavf pache-maven-3.5.4-bin.tar.gz 然后编辑linux的环境变量属性:vim etc/profile 在末尾添加如下代码 export M2 阅读全文
摘要:
NIO概述 从JDK1.4开始,引入了新的I/O类库,它们位于java.nio包中,其目的在于提高I/O的操作效率。nio是new io的缩写。 参考文章:NIO BIO AIO区别 java.nio包引入了四个关键的数据类型: Buffer:缓冲区,临时存放输入或输出数据。 Charset:把具有 阅读全文
摘要:
Socket实现网络通信(阻塞式IO) 阻塞式IO在两个地方会阻塞 在使用IO和Socket构造网络服务时 接收连接:accept(),接收请求数据,发送响应数据都可能引起阻塞的操作。(Handler必须使用多线程异步操作,不然别的连接进不来) 线程从Socket输入流读数据时,如果没有足够的数据就 阅读全文