4 zl_momomo

尚未进行身份认证

杂记博客

等级
TA的排名 0

致未来 -- 二十四岁的我

2016,2017在武汉实习工作,2018年从武汉到广州工作一年,因个人原因等等回家乡备战考研,本博客对于技术知识上的更新暂时停止。所谓技术博客是对项目经验和技术知识的不断总结。自己不太喜欢循规蹈矩,又或是想证明自己,在工作2年后种种原因选择脱产考研。如果继续工作几年,在职场上滚打会成为一个不错的技术工程师或项目经理,源于对技术的追求或实际项目理解。但总觉得自己还要去做些没有做过的,看些没有看...

2019-05-22 12:00:33

Java8函数式编程 —— CompletableFuture

前言可完成的Future对于1.5提供的Future接口。有一定的局限性,很难直接表述多个future之间的依赖性。比如对于结果的获取只能通过阻塞或者轮询的方式获得,这违背了异步编程的初衷。下面通过一个简单的例子说明CompletableFuture的使用。例子将List中元素,异步方式全部小写转大写List<String>list=ne...

2018-11-26 15:52:13

前后台全双工通信——基于rabbitmq的websocket服务

前端通过websocket连接RabbitMQ开启RabbitMQ对stomp的支持以及能够通过stomp去建立一个websocket连接。安装rabbitmq_stomp和rabbitmq_web_stomp插件rabbitmq-pluginsenablerabbitmq_stomprabbitmq-pluginsenablerabbitmq_web_stomprabbi...

2018-11-22 12:00:21

linux下rpm操作

1.安装一个包   #rpm-ivh 2.升级一个包   #rpm-Uvh 3.移走一个包   #rpm-e 4.安装参数   –force即使覆盖属于其它包的文件也强迫安装   –nodeps如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。 5.查询一个包是否被安装   #rpm-q<rpmpackagename> 6.得...

2018-11-20 15:52:02

linux下firewall 防火墙的操作

对firewall防火墙的操作centos7中使用systemctrl命令操作服务#启动firewall服务systemctlstartfirewalld#关闭systemctlstopfirewalld#查看状态、systemctlstatusfirewalld#开机禁用systemctldisablefirewalld#开机启用systemc...

2018-11-20 11:52:14

前后端全双工通信 —— 基于Stomp Over Websocket

WebSocket协议概念:WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端。HTTP协议做不到服务器主动向客户端推送信息。这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就非常麻烦。我们只能使用轮询。轮询效率低,且很浪费资源。而WebSocket协议最大的特点就是...

2018-11-19 16:05:48

微信开发(二) -- 网页授权

微信网页授权如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。 开发前的准备在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发-接口权限-网页服务-网页帐号-网页授权获取用户基本信息”的配置选项中,修改授权回调域名。请注意,这里填写的是域名(是一个字符串),而不是URL,因此请勿加htt...

2018-11-16 14:03:03

Java并发之CAS机制 —— 乐观锁

引入在单实例(一个JVM)环境下,多个线程并发操作某一共享资源时,我们可以通过synchronized同步锁保证资源的可见性和原子性。但会存在性能问题:(Synchronized关键字会让没有得到锁资源的线程进入BLOCKED状态,而后在争夺到锁资源后恢复为RUNNABLE状态,这个过程中涉及到操作系统用户模式和内核模式的转换,代价比较高。尽管Java1.6为Synchronized做...

2018-11-09 15:15:43

Redis之阻塞队列

 redis命令blpopkey1...keyNtimeoutBLPOP 是阻塞式列表的弹出原语。它是命令 LPOP 的阻塞版本,这是因为当给定列表内没有任何元素可供弹出的时候,连接将被 BLPOP 命令阻塞。直到有另一个客户端对给定的这些key的任意一个执行 LPUSH 或 RPUSH 命令为止。 当给定多个key参数时,按参数key的先后顺序依次检查各个列表,...

2018-11-08 15:45:55

LUA脚本简介及使用redisTemplate 操作lua脚本

lua脚本介绍与使用 中文官网 从Redis2.6.0版本开始,通过内置的Lua解释器,可以使用EVAL命令对Lua脚本进行求值lua脚本在redis中的使用1.特性Redis保证脚本以原子性方式执行。当脚本被执行时,不会有其他脚本或者redis命令执行。2.优势在redis官方文档中管道的介绍中有提到大量pipeline应用场景可通过Redis 脚本(Re...

2018-11-05 11:41:12

RedisTemplate执行lua脚本问题(java.lang.IllegalStateException: null)

1.ERRvalueisnotanintegeroroutofrange@BeanpublicRedisTemplateredisTemplate(LettuceConnectionFactoryredisConnectionFactory){RedisTemplateredisTemplate=newRedisTemplate(...

2018-11-02 15:33:21

Spring Boot2.x 整合quartz集群

springboot2.x支持对quartz的自动配置,引入jar <!--springboot2.x+quartz--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-qu...

2018-10-31 15:33:19

yml语法及yml属性值自动注入@ConfigurationProperties

前言在Springboot中,推荐使用properties或者YAML文件来完成配置,但是对于较复杂的数据结构来说,YAML远远优于propertiesyml语法YAML中允许表示三种格式,分别是常量值,对象和数组基本格式要求1.YAML大小写敏感2.使用缩进代表层级关系3.缩进只能使用空格,不能使用TAB,不要求空格个数,只需要相同层级左对齐(一般2个或4个空格)对象...

2018-10-31 14:52:38

Spring 中FactoryBean getObject获得空值

这里的JobDetail返回为null@BeanpublicJobDetailprintTimeJobDetail(){JobDetailFactoryBeanjobDetailFactoryBean=newJobDetailFactoryBean();//durability表示任务完成之后是否依然保留到数据库,默认false...

2018-10-30 17:31:42

window下脚本linux下执行报错

问题收集:1.对手动创建的脚本赋予权限chmod777 xxx.sh2.在windows里面编辑的.sh文件是doc格式的,而linux只支持unix格式的脚本使用vixx.sh并使用 :setff=unix或:setfileformat=unix命令修改格式...

2018-10-30 14:04:54

Java8 Stream 流库 (二)

streamAPI简单应用1.循环listList<String>list=Lists.newArrayList();//Lists是一个工具类类似还有Mapslist.add("a");list.add("b");list.add("c");list.add("d");...

2018-10-25 15:21:13

Java8 Lambda表达式 (一)

前言java8中有两个最值得学习的特性,Lambda表达式和StreamAPI定义:Lambda表达式是一种简洁的语法定义代码块,可以在以后执行一次或多次。由来:在此之前,在Java中传递一个代码段并不容易,不能直接传递代码段。Java是一种面向对象语言,所以必须构造一个对象,这个对象的类需要有一个方法能包含所需的代码。java8通过lambda表达式来支持函数式编程。...

2018-10-24 17:26:31

Spring Boot 整合 RabbitMq — 三种Exchange模式

前言AMQP(AdvancedMessageQueuingProtocol,高级消息队列协议)是一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。RabbitMq与springboot整合简单了解引入springbootam...

2018-10-16 15:03:16

RabbitMQ 入门 (三) Exchange三种模式 —发布订阅、路由、通配

ExchangeRabbitMQ的消息队列模型的核心概念是:生产者从不直接往队列里发送任何消息。实际上,多数情况下生产者甚至不知道消息是否会被发送到队列里。与此相反,生产者只能将消息发送到一个交换器里。交换器做的事情很简单。一方面它接收生产者发送过来的消息,另一方面它将收到的消息推入队列里。交换器必须明确对于收到的消息它该怎么处理。这条消息是否应该附加到某个特定的队列后面?这条消息是否应该...

2018-10-12 15:44:26

RabbitMQ入门 (二) Hello World 与 工作队列

 <dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><version>5.4.2</version></dependency>H

2018-10-12 10:35:44
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得