- 博客(13)
- 资源 (1)
- 问答 (4)
- 收藏
- 关注
转载 LinkedList浅析
前言LinkedList作为ArrayList的老弟,也继承了父亲List的特点:有序,允许存null值,允许重复值。和大哥ArrayList相比,LinkedList底层靠链表存储元素,不用考虑数组扩容,删除插入元素所带来的资源消耗的问题。但在访问元素上就没有数组直接通过索引这么方便了,大家根据不同的业务场景来选择不同的集合。那什么又是链表呢?链表同事之间靠自己的手抓住下一个同事...
2018-10-31 22:19:59 233
原创 Solr结合Auto Complete实现自动提示
前言在日常经常使用的搜索中,我们经常会看到下面这种页面。这种智能提示,会向用户友好的推荐可能用户想查询的关键词。不管是solr还是ES,实现上面这种效果的方式有很多,这里主要是结合solr和jquery中的Autocomplete来实现上面的效果。Solr中的智能提示配置首先需要说明,这里使用的solr版本是5.5.5,其他版本可能有些许差别。但是基本原理应该是差不多的。对于s...
2018-10-30 21:56:04 777
转载 Shiro概览
前言Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。Shiro 主要分为两个部分就是认证和授权,在个人感觉来看就是查询数据库做相应的判断而已,Shiro只是一个框架而已,其中的内容需要自己的去构建,前后是自己的,中间是Shiro帮我们去搭建和配置好的。Shiro核心介绍对上图中的结果核心概念介绍SubjectSubject即...
2018-10-28 14:09:52 142
转载 SpringBoot 启动原理解析
前言SpringBoot为我们做的自动配置,确实方便快捷,但是对于新手来说,如果不懂SpringBoot内部启动原理,以后难免会吃亏。所以这里和大家一起来揭开SpringBoot的神秘面纱,让它不在神秘。正文我们开发任何一个Spring Boot项目,都会用到如下的启动类@SpringBootApplicationpublic class DemoApplication { ...
2018-10-27 20:25:43 195
原创 Tomcat7配置支持https
前言在前面CAS简单小demo搭建中,我们是简单搭建了一个基于CAS的小Demo。但是为了方便演示,我们就直接使用了http,而不是https,这样是实际开发中肯定是不行的。因为在单点登录中用户的登录信息是肯定要得到保障的。否则这个单点登录可以说就是失败的。要支持https就必要需要证书,我们在日常开发中刻意去证书机构显然是不可能的。所以我们一般是利用jdk中自带的keytool来生成证书,等...
2018-10-24 22:57:51 5372
转载 Spring MVC 到 Spring Boot 的简化之路
背景从Servlet技术到Spring和Spring MVC,开发Web应用变得越来越简捷。但是Spring和Spring MVC的众多配置有时却让人望而却步,相信有过Spring MVC开发经验的朋友能深刻体会到这一痛苦。因为即使是开发一个Hello-World的Web应用,都需要我们在pom文件中导入各种依赖,编写web.xml、spring.xml、springmvc.xml配置文件等。...
2018-10-24 20:30:21 219
原创 CAS简单小demo搭建
前言对于SSO,想必大家都知道大致的概念,之前有一个项目中需要集成大概十几个的子系统,在单点登录思想出现之前,我们每次需要点击系统中集成的子系统,我们都需要登录。显然对于客户而言这是很不友好的。因为这样客户需要在每个子系统中注册自己的用户信息,然后每次使用系统的时候再重新登录一次。所以就引出了SSO的概念,而其中基于CAS的SSO方案是现在比较流行的,之前顶级域名上设置共享cookie的方案是...
2018-10-23 22:37:52 2205
转载 ZooKeeper高可用之集群搭建
前言ZooKeeper 是一个典型的分布式数据一致性解决方案,分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。ZooKeeper功能很强大,但是在分布式项目中也会存在单点失败问题,所以为了实现服务的高可用,ZooKeeper的集群也是必不可少的。集群架构为了保证高可用,最...
2018-10-19 22:26:37 512
转载 Redis高可用之Redis Sentinel
前言对于Redis高可用,首先我们要搞清楚Redis服务来说怎样才算是高可用,即在各种出现异常的情况下,依然可以正常提供服务。或者宽松一些,出现异常的情况下,只经过很短暂的时间即可恢复正常服务。所谓异常,应该至少包含了以下几种场景:某个节点服务器的某个进程突然down掉(例如某开发手残,把一台服务器的redis-server进程kill了) 某台节点服务器down掉,相当于这个节点上所有...
2018-10-17 20:14:52 141
原创 把缓存穿透、缓存击穿和缓存雪崩撸明白
前言在项目中,缓存的使用是必不可少的,缓存给我们系统带来极速的响应。但是我们在享受缓存带来快速的同时,也需要考虑我们的缓存使用是不是有风险。比如说缓存使用中常见的三个问题"缓存穿透","缓存击穿","缓存雪崩",下面来和大家一起学习下这三个小知识点。缓存穿透缓存穿透指的是使用不存在的key进行大量的高并发查询,这导致缓存无法命中,每次请求都要穿透到后端数据库系统进行查询,使数据库压力过...
2018-10-16 21:16:31 204
原创 Nginx常见应用场景解析
前言Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少(一个worker进程只占用10-12M内存),启动极快,高并发能力强,在互联网项目中广泛应用。大致应用架构如下上图基本上说明了当下流行的技术架构,其中Nginx有点入口网关的味道。下面我们一起来学习Nginx的常见应用功能。反向代理当我们在外网访问百度的时候,其实会进行一个转发,代理到内网去,这...
2018-10-14 10:44:52 312
原创 Nginx实现动静分离
前言之前项目中需要用到百度地图,由于项目的特殊环境,所以需要下载百度的离线地图。我们知道,地图的展示其实就是一张张地图的图片展示,我们在网页上浏览查找位置的时候,其实都是在发送图片请求。这些图片请求相对于jsp,servlet来说就是所谓的静态资源,当然服务中的静态资源不仅仅只是图片,像页面样式css文件,js脚本文件这些都可以看着是静态资源。tomcat既可以静态资源也可以处理动态资源。但是...
2018-10-13 22:31:50 19709 6
转载 简述负载均衡&CDN技术
前言一个高性能的web系统需要从无数个角度去考虑他,大到服务器的布局,小到软件中某个文件的实现,甚至于某个循环内的运算如果出现不严谨都可能导致全盘崩溃。我们无法考虑到所有的优化细节,但可以从我们已知的层面去优化,我们就先从网络层面说起。(客户端输入URL定位符)→(DNS服务器寻找映射)→(进入服务器,处理数据)→(返回数据至客户端)在这个用例中我们可以很清晰的看出网络请求到返回的过程...
2018-10-10 22:03:51 3761
Java+内存分析工具+MAT
2023-08-19
websocket实现聊天小demo
2023-05-12
aspose导出pdf乱码,配置字体库
2023-02-25
windows 2008 R2解决socket连接不释放补丁包
2019-01-17
aspose操作word文档,目录问题
2022-09-05
苹果退款接收latest_receipt_info数组里面的对象问题
2021-11-18
苹果商品内购,服务端提供接口订阅通知消息
2021-09-13
java.io.IOException: Premature EOF异常怎么解决
2020-09-17
jdk中的jre/lib/security目录下为啥要导入证书
2019-12-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人