- 博客(94)
- 资源 (3)
- 收藏
- 关注
原创 redis-3.0.0.gem文件
redis-3.0.0.gem文件链接:https://pan.baidu.com/s/1IiKDQGxP4XU7wDEKxNoVkw提取码:ignv
2019-04-09 19:57:02
6094
5
转载 SpringCloud系列教程(8)-- Config数据库JDBC配置
https://blog.youkuaiyun.com/tian6318/article/details/79091372config的数据库配置config支持多种数据配置,包含git、svn、vault、 jdbc, 这里我推荐使用JDBC的方式,因为之前的GIT SVN 对于服务比较少的系统,可能比较容易维护,如果服务比较多,没有一个后台管理系统来维护,就太复杂了,在我的水平上理想的架构是这样的:...
2019-04-08 20:23:24
802
转载 【转】IO模型及select、poll、epoll和kqueue的区别
(一)首先,介绍几种常见的I/O模型及其区别,如下: blocking I/O nonblocking I/O I/O multiplexing (select and poll) signal driven I/O (SIGIO) asynchronous I/O (the POSIX aio_functions)—————异步IO模型最大的特点是 ...
2018-09-04 20:51:56
334
转载 HashMap并发导致死循环 CurrentHashMap
为何出现死循环简要说明HashMap闭环的详细原因cocurrentHashMap的底层机制 为何出现死循环简要说明 HashMap是非线程安全的,在并发场景中如果不保持足够的同步,就有可能在执行HashMap.get时进入死循环,将CPU的消耗到100%。 HashMap采用链表解决Hash冲突。因为是链表结构,那么就很容易形成闭合的链路,这样在循环的时候只要有...
2018-08-17 18:51:38
1133
转载 HashMap中capacity、loadFactor、threshold、size等概念的解释
最近在看HashMap的源码,有很多概念都很模糊,今天写了一个测试例子,加深对这几个概念的理解,并演示了扩容及树化的过程(见下篇博文:)。 注:本文基于JDK 1.8 HashMap的结构约定约定前面的数组结构的每一个格格称为桶 约定桶后面存放的每一个数据称为bin bin这个术语来自于JDK 1.8的HashMap注释。sizesize表示HashMap中存放KV的...
2018-08-16 13:11:27
1162
转载 Docker容器及Spring Boot微服务应用
1 什么是Docker1.1 Docker的出现问题一:项目实施环境复杂问题 传统项目实施过程中经常会出现“程序在我这跑得好好的,在你那怎么就不行呢?! ” 这是一个典型的应用场景,Docker image中包含了程序需要的所有的运行时依赖,比如java的程序,肯定要在image中包含jdk;比如Python的程序,肯定要在image中包含对应版本的Pyth
2018-01-24 11:14:35
306
转载 Spring Boot(十)使用@Async实现异步调用
项目GitHub地址 :https://github.com/FrameReserve/TrainingBootSpring Boot(十)使用@Async实现异步调用 ,标记地址:https://github.com/FrameReserve/TrainingBoot/releases/tag/0.0.10Spring Boot启动
2018-01-23 17:11:55
305
转载 【Spring】Spring高级话题-多线程-TaskExecutor
分析在Spring中,通过任务执行器,也就是TaskExecutor来实现多线程和并发编程。使用ThreadPoolTaskExecutor可实现一个基于线程池的TaskExecutor。 而实际开发中任务一般是非阻碍的,也就是非异步的,所以我们要在配置类中通过@EnableAsync开启对异步任务的支持,并通过在实际执行的Bean的方法中使用@Async注解来声明其是一个异步
2018-01-23 16:46:18
335
转载 Spring MVC 3.2 技术预览(一):Servlet 3介绍,异步支持
概述: Spring MVC 3.2 M1将引入基于Servlet 3.0支持的异步请求处理,我将针对Spring MVC 3.2的新特性发布一系列文章,并通过对背景知识和相关内容的充分介绍,让你了解你为什么需要这些新特性,以及如何使用这些新特性。这是这一系列文章中的第一篇。 Spring MVC 3.2的更新内容已经可以在Spring
2018-01-23 16:36:20
311
转载 关于servlet3.0中的异步servlet
刚看了一下维基百科上的介绍,servlet3.0是2009年随着JavaEE6.0发布的:到现在已经有六七年的时间了,在我第一次接触java的时候(2011年),servlet3.0就已经出现很久了,但是到现在,里边的一些东西还是没有能够好好地了解一下最近在研究java的长连接,在了解jetty中的continuations机制的时候也重新了解了一下servlet3.0中的
2018-01-23 16:07:59
285
转载 Spring-Cloud系列第6篇:spring-cloud-bus
自学spring-cloud系列,越来越感觉spring-cloud很强大!主要分为以下几篇:spring-cloud-config: 分布式配置管理spring-cloud-eureka: 服务注册与发现spring-cloud-eureka-consumer: 远程服务调用和及其负载均衡spring-cloud-Hystrix: 熔断器保证服务高可用spring-cloud-config-eu
2018-01-19 13:10:27
190
转载 Spring Cloud构建微服务架构(七)消息总线
先回顾一下,在之前的Spring Cloud Config的介绍中,我们还留了一个悬念:如何实现对配置信息的实时更新。虽然,我们已经能够通过/refresh接口和Git仓库的Web Hook来实现Git仓库中的内容修改触发应用程序的属性更新。但是,若所有触发操作均需要我们手工去维护Web Hook中的应用位置的话,这随着系统的不断扩张,会变的越来越难以维护,而消息代理中间件是解决该问题最为合适的方
2018-01-19 13:06:01
252
转载 Spring Cloud构建微服务架构(七)消息总线(续:Kafka)
Spring Cloud Bus除了支持RabbitMQ的自动化配置之外,还支持现在被广泛应用的Kafka。在本文中,我们将搭建一个Kafka的本地环境,并通过它来尝试使用Spring Cloud Bus对Kafka的支持,实现消息总线的功能。由于本文会以之前Rabbit的实现作为基础来修改,所以先阅读《Spring Cloud构建微服务架构(七)消息总线》有助于理解本文。Kafka简介Kafka
2018-01-18 20:35:01
570
转载 Spring Cloud都做了些什么
Spring Cloud 作为一套微服务治理的框架,几乎考虑到了微服务治理的方方面面,之前也写过一些关于 Spring Cloud 的文章,主要偏重各组件的使用。本次分享主要解答这两个问题:Spring Cloud 在微服务的架构中都做了哪些事情?Spring Cloud 提供的这些功能对微服务的架构提供了怎样的便利?我们先来简单回顾一下,我们以往互联网
2018-01-18 20:32:20
202
转载 Spring Cloud构建微服务架构(四)分布式配置中心
Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持。配置服务器为各应用的所有环境提供了一个中心化的外部配置。它实现了对服务端和客户端对Spring Environment和PropertySource抽象的映射,所以它除了适用于Spring构建的应用程序,也可以在任何其他语言运行的应用程序中使用。作为一个应用可以通过部署管道来进行测试或者投入生产,我们可以分别为
2018-01-18 10:51:42
148
转载 Spring Cloud构建微服务架构(三)断路器
在微服务架构中,我们将系统拆分成了一个个的服务单元,各单元间通过服务注册与订阅的方式互相依赖。由于每个单元都在不同的进程中运行,依赖通过远程调用的方式执行,这样就有可能因为网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不断增加,最后就会出现因等待出现故障的依赖方响应而形成任务积压,最终导致自身服务的瘫痪。举个例子,在一个电商网站中
2018-01-18 10:09:59
223
转载 Spring Cloud构建微服务架构(二)服务消费者
在上一篇《Spring Cloud构建微服务架构(一)服务注册与发现》中,我们已经成功创建了“服务注册中心”,实现并注册了一个“服务提供者:COMPUTE-SERVICE”。那么我们要如何去消费服务提供者的接口内容呢?RibbonRibbon是一个基于HTTP和TCP客户端的负载均衡器。Feign中也使用Ribbon,后续会介绍Feign的使用。Ribbon可以在通过客户端中配置的ribbonSe
2018-01-18 10:09:07
255
转载 Spring Cloud构建微服务架构(一)服务注册与发现
Spring Cloud简介Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Config、Sp
2018-01-18 10:08:07
522
转载 Spring Cloud构建微服务架构(五)服务网关
通过之前几篇Spring Cloud中几个核心组件的介绍,我们已经可以构建一个简略的(不够完善)微服务架构了。比如下图所示:alt我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;而服务间通过Ribbon或Feign实现服务的消费以及均衡负载;通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。为了使得服务集群更为
2018-01-18 10:07:16
175
转载 Not found in archive错误
一、问题描述:在使用tar -zxvf zookeeper-3.4.6.tar.gz /usr/local解压缩zookeeper-3.4.6.tar.gz文件时遇到Not found in archive错误二、问题原因及解决方案原因:因为压缩文件使用的相对路径 在当前目录下找不到 /usr/local目录,通过使用-C指定解压目录可解决此问题解决:tar -
2017-11-10 16:39:59
511
转载 tomcat session实现原理
服务器端实现原理Session在服务器端具体是怎么实现的呢?我们使用session的时候一般都是这么使用的:request.getSession()或者request.getSession(true)。这个时候,服务器就检查是不是已经存在对应的Session对象,见HttpRequestBase类doGetSession(boolean create)方法: 1
2017-11-10 09:58:29
727
转载 关于content=”IE=edge,chrome=1″介绍-让网页优先采用Chrome渲染
摘要:1、如果支持Google Chrome Frame:GCF,则使用GCF渲染;2、如果系统安装ie8或以上版本,则使用最高版本ie渲染;3、否则,这个设定可以忽略。Google Chrome Framew3.org的html5验证总结最近稍微了解了一下瀑布树这东东,在查看Wookmark jQuery plugin,注意到meta中有这么一句:
2016-04-26 17:24:17
13788
原创 jsp页面之间用?传值
/mp4player/mp4player.jsp?playerName=" target="_blank">打开a所对应的页面接受值String path = request.getContextPath();String playerName = request.getParameter("playerName");String basePath = reque
2016-04-26 16:30:39
273
原创 myeclipse自动生成实体类
Myeclipse自动生成Hibernate配置文件及实体类映射ORM,放置文件的路径不能选择,都是空白的 你这种情况是因为你的项目里没有具有Hibernate支持的项目。在MyEclipse下,首先对项目上点鼠标右键“添加Hibernate支持(Add Hibernate Capabilities)",把该拷的一些库啊、配置文件都弄好了;再进行反向工程,这时这些有Hibern
2016-04-25 16:31:31
814
转载 怎么关闭myeclipse一些不需要的启动项?
Windows 》 Preferences 》 General 》Startup and Shutdow(保留TOMCAT)其他的勾勾全部去掉
2016-04-05 14:27:22
3888
转载 Java虚拟机类加载顺序
当JVM(Java虚拟机)启动时,会形成由三个类加载器组成的初始类加载器层次结构: bootstrap classloader | extension classloader | system classloader bootstrap classlo
2015-09-22 17:34:11
409
转载 RBAC用户角色权限设计方案
原帖地址:http://www.javaeye.com/topic/930648 RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。(如下图)角
2015-09-21 16:49:20
588
原创 设计模式六大原则
设计模式六大原则 作者:zhengzhb ,发布于2012-11-2,来源:优快云 目录:设计模式六大原则(1):单一职责原则设计模式六大原则(2):里氏替换原则设计模式六大原则(3):依赖倒置原则设计模式六大原则(4):接口隔离原则设计模式六大原则(5):迪米特法则
2015-09-19 17:57:17
274
转载 springMVC工作原理
Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器、视图解析器、视图组成。Spring MVC的原理框图:整个处理过程从一个HTTP请求开始:1)DispatcherServlet接收到请求后,根据对应配置文件中配置的处理器映射,找到对应的处理器映射项(HandlerMapping),根据配置的映射规则,找到对应的处理器(Handler)。
2015-09-19 17:46:25
317
转载 使用 CAS 在 Tomcat 中实现单点登录
CAS 介绍CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS 具有以下特点:开源的企业级单点登录解决方案。CAS Server 为需要独立部署的 Web 应用。CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java,
2015-09-19 17:26:57
324
转载 负载均衡LVS集群详解
负载均衡LVS集群详解2012-05-07 10:20 向阳草米奇 字号:T |T在负载均衡集群中需要一个分发器,我们将其称之为Director,它位于多台服务器的上面的中间层,根据内部锁定义的规则或调度方式从下面的服务器群中选择一个以此来进行响应请求,而其分发的方式则是根据某个算法进行的。AD: 一、LB--负
2015-09-14 10:39:58
258
转载 keepalived工作原理和配置说明
keepalived是什么keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障。keepalived工作原理keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。虚拟路由冗余协议,可以认为是实现路由器高可用的协议,即将N台提供相
2015-09-14 10:07:59
388
转载 Keepalived + nginx实现高可用性和负载均衡
目录[-]1. 安装Keeplived依赖2. 安装Keepalived3. 配置Keepalived4. 运行Keepalived5. 总结前几天使用了Heartbeat作为高可用服务架构的解决方案,今天有试验了一种全新的解决方案,即采用Keepalived来实现这个功能。 Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived可以用来防止服
2015-09-14 10:04:50
232
转载 使用keepalived实现双机热备
通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短。下面来以keepalived结合tomcat来实现一个web服务器的双机热备。keepalived的工作原理是VRRP(Virtual Router Redundancy Protocol)虚拟路由冗余协议。在VRRP中有
2015-09-14 09:53:54
385
转载 Nginx 下缓存静态文件(如css js)
目的:缓存nginx服务器的静态文件。如css,js,htm,html,jpg,gif,png,flv,swf,这些文件都不是经常更新。便于缓存以减轻服务器的压力。实现: nginxproxy_cache可以将用户的请缓存到本地一个目录,当下一个请求时可以直接调取缓存文件,就不用去后端服务器去取文件了。配置: 打开配置文件/etc/nginx/nginx.confuser www
2015-09-11 15:16:03
512
转载 nginx反向代理,动静态分离,缓存
今天工作之余,继续拘捣鼓了一下nginx,尝试了一下,nginx反向代理,动静态请求分离,以及nginx缓存应用,以及使用ngx_cache_purge清除指定URL 一,nginx反向代理配置 #tomcatJava代码 upstream tomcat_server{ server 127.0.0.1:
2015-09-11 14:57:25
457
转载 SSL/TLS的Java实现--JSSE
分类: 数据加密 Java 2014-11-11 17:05 673人阅读 评论(0)收藏 举报转载:http://blog.youkuaiyun.com/wangyangzhizhou/article/details/38406253JSSE(Java 安全套接字扩展,Java Secure Socket Extension)是SSL和TLS的纯Jav
2015-09-11 10:44:51
527
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人