自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(99)
  • 收藏
  • 关注

原创 java.util.Queue用法

队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。在队列这种数据结构中,最先插入的元素将是最先被删除的元素;反之最后插入的元素将是最后被删除的元素,因此队列又称为“先进先出”(FIFO—first in first out)的线性表。在java5中新增加了...

2019-08-31 16:48:55 455

原创 java 发布订阅

1.发布者接口package com.yy.subpub;/*** @Description: 发布者接口* @author: leijing* @date: 2016年9月29日 下午5:07:20*/public interface IPublisher<M> {/*** @Description: 向订阅器发布消息* @param subscribePubl...

2019-08-31 16:33:01 403

原创 Java实现消息队列服务

使用 JAVA 语言自己动手来写一个MQ (类似ActiveMQ,RabbitMQ)主要角色首先我们必须需要搞明白 MQ (消息队列) 中的三个基本角色ProducerBrokerConsumer整体架构如下所示自定义协议首先从上一篇中介绍了协议的相关信息,具体厂商的 MQ(消息队列) 需要遵循某种协议或者自定义协议 , 消息的 生产者和消费者需要遵循其协议(约定)才能后成功地生产...

2019-08-30 16:34:15 9706 2

原创 Java(发布/订阅模式)

1、概述观察者模式又称为发布/订阅(Publish/Subscribe)模式观察者设计模式涉及到两种角色:主题(Subject)和观察者(Observer)(1)Subject模块Subjec模块有3个主要操作addObserver():注册添加观察者(申请订阅)deleteObserver():删除观察者(取消订阅)notifyObserver():主题状态发生变化时通知所有的观察...

2019-08-30 15:56:43 3801 1

原创 activemq的使用场景

一、消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题。实现高性能,高可用,可伸缩和最终一致性架构。是大型分布式系统不可缺少的中间件。目前在生产环境,使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。二、消息队列应用场景以下介绍消息队列在实际应用中常用的使用场景。异步处理,应用解耦...

2019-08-30 06:44:01 541

原创 Nginx使用

Nginx 简介Nginx是一个高性能的http和反向代理服务器,它看起来好像不太符合英文单词的拼写习惯,因为Nginx是由名为 伊戈尔·赛索耶夫 的俄罗斯人开发的。Nginx主要特点为占用内存小,处理并发能力强悍,在国内被广泛采用。目前像阿里,京东,腾讯,百度,新浪,网页等国内的互联网巨头公司都在使用。下面我们来介绍Nginx的简单使用,笔者认为学会一个工具最快的方式为先使用,然后明白为什么...

2019-08-29 14:38:26 364

原创 RPC服务和HTTP服务对比

很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单地介绍一下两种形式的C/S架构,先说一下他们最本质的区别,就是RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看...

2019-08-29 13:23:29 74

原创 跨语言RPC框架Thrift详解

一、 概念Apache的Thrift软件框架,是用来进行可伸缩的、跨语言的服务开发,它通过一个代码生成引擎来构建高效、无缝的服务,这些服务能够实现跨语言调度,目前支持的语言有: C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delp...

2019-08-29 13:01:12 594

原创 JAVA中几种常用的RPC框架介绍

RPC是远程过程调用的简称,广泛应用在大规模分布式应用中,作用是有助于系统的垂直拆分,使系统更易拓展。Java中的RPC框架比较多,各有特色,广泛使用的有RMI、Hessian、Dubbo等。RPC还有一个特点就是能够跨语言,本文只以JAVA语言里的RPC为例。对于RPC有一个逻辑关系图,以RMI为例:其他的框架结构也类似,区别在于对象的序列化方法,传输对象的通讯协议,以及注册中心的管理与f...

2019-08-29 12:51:51 182

原创 RPC简介及框架选择

简单介绍RPC协议及常见框架,对比传统restful api和RPC方式的优缺点。常见RPC框架,gRPC及序列化方式Protobuf等HTTP协议http协议是基于tcp协议的,tcp协议是流式协议,包头部分可以通过多出的\r\n来分界,包体部分如何分界呢?这是协议本身要解决的问题。目前一般有两种方式,第一种方式就是在包头中有个content-Length字段,这个字段的值的大小标识了POS...

2019-08-29 12:36:29 396

原创 正向代理与反向代理

正向代理正向代理类似一个跳板机,代理访问外部资源。比如我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。从网站的角度,只在代理服务器来取内容的时候有一次记录,有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站。反向代理...

2019-08-29 12:26:37 74

原创 各种缓存介绍

说起缓存相关技术,老多了, memcache、redis、squid、varnish、web cache、 CDN等等。缓存技术五花八门,但这些技术间有什么共性的地方,又有什么不同的地方呢?答案肯定是有的,这次为大家分享及整理一下缓存方面的技术,主要分为三个系列展开:缓存随谈系列之一:数据库缓存缓存随谈系列之二:静态缓存缓存随谈系列之三:动态缓存一、什么是数据库缓存我们知道常见的数据库,...

2019-08-29 11:23:45 358

原创 负载均衡

面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站访问量大,并发量高,海量数据的问题。从单机网站到分布式网站,很重要的区别是业务拆分和分布式部署,将应用拆分后,部署到不同的机器上,实现大规模分布式系统。分布式和业务拆分解决了...

2019-08-29 11:18:10 102

原创 MQ消息中间件介绍

消息队列技术是分布式应用间交换信息的一种技术,消息队列可驻留在内存或者磁盘上,队列存储消息直到它们被应用程序读走,通过消息队列,应用程序可以独立的执行—它们不需要知道彼此的位置,或者继续执行前不需要等待接收程序接收此消息。(1)队列管理器队列管理器是MQ系统中最上层的一个概念,由它为我们提供基于队列的消息服务。(2)消息在MQ中,把应用程序交由MQ传输的数据定义为消息,我们可以定义消息的内...

2019-08-29 11:12:08 358

原创 点对点

数据传输的可靠性是通过数据链路层和网络层的点对点和传输层的端对端保证的。点对点是基于MAC地址或者IP地址,是指一个设备发数据给另外一个设备,这些设备是指直连设备包括网卡,路由器,交换机。端对端是网络连接,应用程序之间的远程通信。端对端不需要知道底层是如何传输的,是一条逻辑链路。端到端与点到点是针对网络中传输的两端设备间的关系而言的。端到端传输指的是在数据传输前,经过各种各样的交换设备,在两端设...

2019-08-29 11:06:36 772

原创 消息中间件应用场景

消息中间件应用场景

2019-08-28 07:50:24 770

原创 发布订阅

发布订阅

2019-08-28 07:49:35 401

原创 分布式学习路线

由于分布式系统所涉及到的领域众多,知识庞杂,很多新人在最初往往找不到头绪,不知道从何处下手来一步步学习分布式架构。本文试图通过一个最简单的、常用的分布式系统,来阐述分布式系统中的一些基本问题。负载均衡分布式缓存分布式文件系统/CDN分布式RPC分布式数据库/Nosql分布式消息中间件分布式session问题-总结下图为一个中大型网站/App的基本架构:在这个架构中,涉及...

2019-08-27 15:33:32 2459 1

原创 java分布式学习路线

先理解为什么需要分布式,因为服务器处理的能力需要提升,这里有两个方面,第一是纵向 也就是增加cpu的能力,或者加内存;另一个方向就是 横向 ,就是分布式。将本来一台计算机的压力分给多太计算机,从而可以平均分布io,同时提升响应速度。建议先从分布式 数据库看起,之后你可以用 虚拟机,和 本机进行测试 分布式数据库。之后你可以使用 java操作这种分布式 数据库。从而 依旧用虚拟机练习web项目...

2019-08-27 15:26:20 2043

原创 到底多大才算高并发?

一、什么是高并发定义:高并发(High Concurrency)是使用技术手段使系统可以并行处理很多请求。关键指标:-响应时间(Response Time)-吞吐量(Throughput)-每秒查询率QPS(Query Per Second)-每秒事务处理量TPS(Transaction Per Second)-同时在线用户数量关键指标的维度:-平均,如:小时平均、日平均、月...

2019-08-26 15:18:50 839

原创 什么是高并发,如何避免高并发

之前我将高并发的解决方法误认为是线程或者是队列可以解决,因为高并发的时候是有很多用户在访问,导致出现系统数据不正确、丢失数据现象,所以想到 的是用队列解决,其实队列解决的方式也可以处理,比如我们在竞拍商品、转发评论微博或者是秒杀商品等,同一时间访问量特别大,队列在此起到特别的作用,将 所有请求放入队列,以毫秒计时单位,有序的进行,从而不会出现数据丢失系统数据不正确的情况。今天我经过查资料,高并发...

2019-08-26 15:11:18 371

原创 Java高并发高性能分布式框架从无到有微服务架构设计

Java高并发高性能分布式框架从无到有微服务架构设计

2019-08-26 15:03:18 229

原创 Java秒杀业务架构设计之路

Java秒杀业务架构设计之路

2019-08-26 14:57:45 228

原创 JMeter

JMeter

2019-08-26 14:32:46 67

原创 element ui 中 el-menu 如何添加链接router-link标签

在vue项目中,使用elementui 框架,做一个后台管理系统在写左边菜单,菜用了,elementui 提供的组件 , el-menu 组件。但是组件没有链接,而我们知道添加链接使用router-link标签代码如下:<el-menu-item :key="index" v-if="item.menuChilds.length==0" :index="item.menuUrl" &gt...

2019-08-25 16:14:09 13682 1

原创 vue 中slot 的具体用法

子组件<template> <div class="slotcontent"> <ul> <!--<slot></slot>--> <li v-for="item in items">{{item.text}}</li> ...

2019-08-25 10:26:03 112

原创 vue-transition动画

demo点击显示与消失<div id="demo"> <button v-on:click="show = !show"> Toggle </button> <transition name="fade"> <p v-if="show">hello</p> </transition&gt...

2019-08-24 11:40:58 100

原创 vue中 关于$emit的用法

1、父组件可以使用 props 把数据传给子组件。2、子组件可以使用 $emit 触发父组件的自定义事件。vm.$emit( event, arg ) //触发当前实例上的事件vm.$on( event, fn );//监听event事件后运行 fn;例如:子组件:<template> <div class="train-city"> <h3&g...

2019-08-24 10:23:36 176

原创 vue常用属性

Vue实例常用属性1.数据data:Vue 实例的数据对象components:Vue实例配置局部注册组件1.类方法computed:计算属性watch:侦听属性filters:过滤器methods:Vue实例方法render:渲染函数,创建虚拟DOM1.生命周期created:在实例创建完成后被立即调用,完成初始化操作mounted:el挂载到Vue实例上了,开始业务逻辑...

2019-08-23 07:55:39 195

原创 vue项目中主要文件的加载顺序(index.html、App.vue、main.js)

先后顺序:index.html > App.vue的export外的js代码 > main.js > App.vue的export里面的js代码 > Index.vue的export外的js代码测试的页面代码块:文件的加载先后顺序:Index.vue的mounted()中的输出没有执行。why?每个 Vue 应用都是通过用 Vue 函数创建一个新的 V...

2019-08-23 07:39:49 2825 2

原创 vue调用顺序(初学版) index.html → main.js → app.vue → index.js → components/组件 测试

关于它是怎么调用运作的:https://mp.csdn.net/postedit/86134414一. 准备工作:1.下载webstorm,安装vue。2.创建项目,cd到要放项目的文件夹下vue init webpack vue_test3.安装各种包npm install4.运行cd vue_test运行 npm run dev5.打开网页 http://localhos...

2019-08-23 07:33:58 409

原创 vscode配置vue环境

一、安装VSCode、NodeJSVSCode:https://code.visualstudio.com/NodeJS:https://nodejs.org/en/二、打开VSCode,安装常用插件如图所示(安装后重新加载即可):三、项目中添加.vscode文件夹,文件夹中添加setting.json项目设置文件{ "eslint.autoFixOnSave": true...

2019-08-22 10:42:23 5615

原创 vue和element-ui使用

上一篇已经创建好一个vue项目。https://mp.csdn.net/postedit/80926242这一篇主要是创建一个vue项目并结合饿了么框架element-ui。1.先创建vue项目,我准备把项目放在e盘下:E:\Work\RegisterProject;命令行进入这个目录:创建一个基于 webpack 模板的新项目(1)vue init webpack register...

2019-08-22 10:08:36 500

原创 vue中使用axios最详细教程

前提条件:vue-cli 项目安装:npmnpm在main.js导入:// 引入axios,并加到原型链中import axios from 'axios';Vue.prototype.$axios = axios;import QS from 'qs'Vue.prototype.qs = QS;封装好的axios,拿走不送:(最好是在main.js同级目录创建一个 http...

2019-08-21 17:14:42 3534

原创 ajax和axios、fetch的区别

1.jQuery ajax$.ajax({ type: 'POST', url: url, data: data, dataType: dataType, success: function () {}, error: function () {}});传统 Ajax 指的是 XMLHttpRequest(XHR), 最早出现的发送后端请求技术,隶属于原...

2019-08-21 17:08:25 77

原创 vue之router-view组件的使用

开发的时候有时候会遇到一种情况,比如 :点击这个链接跳转到其他组件的情况,通常会跳转到新的页面,蛋是,我们不想跳转到新页面,只在当前页面切换着显示,那么就要涉及到路由的嵌套了,也可以说是子路由的使用。以饿了么订餐的情景来说吧,在同个页面,切换显示不同组件的相应内容,同时地址栏的地址是会变的怎么实现它呢?首先 我们在导航组件navbar.vue中写了三个导航链接,他们对应地址分别为:/foo...

2019-08-21 16:09:17 392

原创 HTML渲染过程详解

无意中看到寒冬关于前端的九个问题,细细想来我也只是对第一、二、九问有所了解,正好也趁着这个机会梳理一下自己的知识体系。由于本人对http协议以及dns对url的解析问题并不了解,所以这里之探讨url请求加载到浏览器端时,浏览器对html的解析到呈现过程,后来经过几位道友分享,整理了一下url解析的过程,如下:用户输入url地址,浏览器根据域名寻找IP地址浏览器向服务器发送http请求,如果服务...

2019-08-21 10:11:39 594

原创 vue实例属性之el,template,render

一、el,template,render属性优先性当Vue选项对象中有render渲染函数时,Vue构造函数将直接使用渲染函数渲染DOM树,当选项对象中没有render渲染函数时,Vue构造函数首先通过将template模板编译生成渲染函数,然后再渲染DOM树,而当Vue选项对象中既没有render渲染函数,也没有template模板时,会通过el属性获取挂载元素的outerHTML来作为模板,...

2019-08-21 10:01:20 339

原创 浅谈vue $mount()

Vue 的mount()为手动挂载,在项目中可用于延时挂载(例如在挂载之前要进行一些其他操作、判断等),之后要手动挂载上。newVue时,el和mount()为手动挂载,在项目中可用于延时挂载(例如在挂载之前要进行一些其他操作、判断等),之后要手动挂载上。new Vue时,el和mount()为手动挂载,在项目中可用于延时挂载(例如在挂载之前要进行一些其他操作、判断等),之后要手动挂载上。newV...

2019-08-21 09:50:36 1270

原创 关于Vue.use()详解

问题相信很多人在用Vue使用别人的组件时,会用到 Vue.use() 。例如:Vue.use(VueRouter)、Vue.use(MintUI)。但是用 axios时,就不需要用 Vue.use(axios),就能直接使用。那这是为什么呐?答案因为 axios 没有 install。什么意思呢?接下来我们自定义一个需要 Vue.use() 的组件,也就是有 install 的组件,看完之...

2019-08-21 09:45:18 906

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除