- 浏览: 60524 次
- 性别:
- 来自: 上海
最新评论
文章列表
ActiveMQ基本概念
- 博客分类:
- MQ
1 基础概念
ActiveMQ:是Apache出品,最流行的,能力强劲的开源消息总线。是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现。
JMS(Java消息服务):是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或 ...
RabbitMQ 原理
- 博客分类:
- MQ
入门:
https://zhuanlan.zhihu.com/p/35899081
RabbitMQ 原理
生产者(Producer)要产生消息必须要创建一个 Exchange ,Exchange 用于转发消息,但是它不会做存储,如果没有 Queue bind 到 Exchange 的话,它会直接丢弃掉 Producer 发送过来的消息,当然如果消息总是发送过去就被直接丢弃那就没有什么意思了,一个 Consumer 想要接受消息的话,就要创建一个 Queue ,并把这个 Queue bind 到指定的 Exchange 上,然后 Exchange 会把消息转发到 Queue 那里,Queue ...
RabbitMQ基本概念
- 博客分类:
- MQ
rabbitMQ第五篇好博客:https://www.cnblogs.com/LipeiNet/category/896408.html
RabbitMQ三种类型交换器 Fanout,Direct,Topic
https://www.cnblogs.com/LipeiNet/category/896408.html
AMQP当中有四个概念非常重要:
virtualhost 虚拟主机
exchange 交换机
queue 队列
binding 绑定一个虚拟主机持有一组交换机、队列和绑定。
三.消息回执 Message acknowledgment(ACK)
在实际应用中,可能会发生消费者收到 ...
分布式服务框架 Zookeeper
- 博客分类:
- zookeeper
Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。本文将从使用者角度详细介绍 Zooke ...
MQTT消息队列遥测传输
- 博客分类:
- MQ
消息队列遥测传输(Message Queueing Telemetry Transport (MQTT))
现在我们已经有了面向基于Java的企业应用的JMS和面向所有其他应用需求的AMQP。为什么我们还需要第三种技术?它是专门为小设备设计的。计算性能不高的设备不能适应AMQP上的复杂操作,它们需要一种简单而且可互用的方式进行通信。这是MQTT的基本要求,而如今,MQTT是物联网(IOT)生态系统中主要成分之一。
下面是MQTT的主要特性:
1.面向流,内存占用低
2.为小型无声设备之间通过低带宽发送短消息而设计
3.不支持长周期存储和转发
4.不允许分段消息(很难发送长消息) ...
lucene的企业级搜索引擎
- 博客分类:
- 搜索引擎
lucene的企业级搜索引擎
企业级:持久化数据
大量数据,很多人同时访问数据,大量用户操作界面,
通常需要与散步在企业周围的其他应用进行集成。
企业级分为两类:
面向企业用户HRM ERM
面向消费者
什么是lucene:
是一个高效的,基于java全文搜索库。
数据类型分为两大类:
1 结构化数据 固定格式的数据,sql 元数据
2 非结构化数据 grep ps aux|grep xxx
3 半结构化 html xml
顺序扫描法
非结构化数据中提取的然后重新组织的信息 索引
软件包分析
org.apache.lucene.analysis 分词器
org.apache.lucen ...
http://www.redis.cn/topics/cluster-tutorial.html
直接读写在内存,不用磁盘去读,意大利一家公司C语言写的
并且可以持久化 rdb aof
redis集群
string key-value hashmap sortset list
16384哈希槽 从0到16384
马槽 数据槽 哈希值来将我们这个数据槽编号
哈 ...
ActiveMQ启动与实现
- 博客分类:
- MQ
ActiveMQ服务器启动与java简单实现发送与接收
1.下载ActiveMQ
去官方网站下载:http://activemq.apache.org/
2.运行ActiveMQ
windows:
解压缩apache-activemq-5.14.2-bin.zip,然后双击apache-activemq-5.14.2\bin\win64\activemq.bat运行ActiveMQ程序。
centos:
下载activemq:
wget http://archive.apache.org/dist/activemq/5.13.5/apache-activemq-5.13.5-bin.t ...
xshell putty winSCP sinCRT
插入get set方法 alt + insert
linux语法:
# mkdir 文件 新建文件
# vi filename :打开或新建文件,并将光标置于第一行首
wq 保存退出文件
# tar -zxvf /tmp/etc.tar.gz 将 /tmp/etc.tar.gz 文件解压
cmd语法:
C:\>d:
bat文件 运行后不关闭 文件最后一行加 pause
vi编辑器中的整行(多行)复制与粘贴就非常必要了。
1、复制
1)单行复制
在命令模式下,将光标移动到将要复制的行处,按“yy”进行复 ...
传统IO(BIO,NIO)三缺点:
1.基于流,数据流,机械性能消耗大。
2.阻塞,服务器开了一个端口,只要没有客户端连接,它一直处于阻塞状态。
多线程方案,来一个客户端,就给他开个线程单独处理,产生了线程开销很大。
3.读 ...
SCM:供应链管理 (Supply Chain Management)
是一种集成的管理思想和方法,它执行供应链中从供应商到最终用户的物流的计划和控制等职能。从单一的企业角度来看,是指企业通过改善上、下游供应链关系,整合和优化供应链中的信息流、物流、资金流,以获得企业的竞争优势。
CRM:客户关系管理(Customer Relationship Management)
ERP:企业资源计划(Enterprise Resources Planning)
OMS:订单管理系统(Order Management System)
WMS:仓库管理系统 (Warehouse Management ...
new String(a,b,c) => a是字符串, b是起始位置, c是长度?
byte[] byteValue = "testBytes".getBytes(); => 字符串转化为一个字节数组byte[]的方法。
public BigDecimal getDiscount() {
BigDecimal discount = this.discount;
if(Validator.isNotNullOrEmpty(discount)){
discount = discount.setScale(2,BigDecimal.ROUND_HAL ...
一.服务端安装5.7版本(zip的方式)
1.下载zip文件,解压后修改my-default.ini文件,如图
2.配置mysql环境变量
3.cmd执行命令
3.1 选择mysql的bin文件下,执行安装命令:
3.2 启动服务:
安装成功后就要启动服务了,继续在cmd中输入net start mysql(如图),服务启动成功!
但是在mysql 5.7版本后,bin文件没有data文件,需要输入mysqld --initialize-insecure --user=mysql命令,生成data文件后再去启动服务
3.3 登录服务:
服务启动成功之后,就可以登录了,如图,输入mys ...
网络通讯技术java NIO
http://ifeve.com/java-nio-all/
产生背景
NIO(Non-blocking IO)非阻塞的IO模型
传统 客户端-服务端 每次新建公路 用完后公路没了
现在 客户端-服务端 建立一个高速公路,每次都在这个公路上,
端口资源只占用一个。
阻塞:面向数据而言
同步:IO事件而晏
--现有IO模型
BIO-同步 jdk1.4之前 数据缓冲区(水龙头下水桶)
NIO-同步 jak1.4以后 非阻塞IO linux的多路复用技术,轮询机制
1 nio增加缓冲池。
2 高速通道Channel
3 线程模型方面改进 accept( ...
webservice
-aixs
-aixs2
-xifire->cxf
soap+http
.数据传输效率
xml序列化效率
xml数据传输效率,序列化效率
-xml解析序列化/反序列化 jar包冲突
二进制协议(java序列化)tcp+byte
-hession -hession2
-rmi
restful--http+json
-jsr311
ibm提出soa
新瓶装旧酒
微服务,自定义协议
-dubbo
-spring cloud
basResponse
ifStateEnum
duddo
consumer producer
协议
dataBi ...