- 博客(34)
- 资源 (11)
- 收藏
- 关注

原创 rocketmq dokcer镜像
镜像里面包括nameserv,broker,console,输入下面命令直接运行:docker run -d -p 9876:9876 -p 10911:10911 -p 10909:10909 -p 8080:8080 --name rocketmq-4.3.2 machineswift/rocketmq:4.3.2-02 sh mq-start控制台地址:http://localh...
2019-01-18 09:43:23
1187
原创 单点登录原理与简单实现
一、单系统登录机制1、http无状态协议 web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系 但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合法请求,忽略非法请求;要鉴别浏览器请求,必须清楚浏览器请求状态。既然http协议无状态,
2020-09-17 10:34:15
442
原创 lua脚本基于redis实现分布式锁
为什么需要分布式锁一般我们使用分布式锁有两个场景:效率:使用分布式锁可以避免不同节点重复相同的工作,这些工作会浪费资源。比如用户付了钱之后有可能不同节点会发出多封短信。正确性:加分布式锁同样可以避免破坏正确性的发生,如果两个节点在同一条数据上面操作,比如多个节点机器对同一个订单操作不同的流程有可能会导致该笔订单最后状态出现错误,造成损失。分布式锁的特点如下:互斥性:和我们本地锁一样互斥性是最基本,但是分布式锁需要保证在不同节点的不同线程的互斥。可重入性:同一个节点上的同一个线程如果获取了锁之后那
2020-09-16 14:54:25
506
原创 java敏感词过滤
java敏感词过滤敏感词:“美元”,“中国”,“北京大学”,“北大”,“南京大学”DFAUtilsimport java.util.HashMap;import java.util.LinkedList;import java.util.Map;public class DFAUtils { /** * 添加敏感词到算法树 */ public static void addSensitiveWord(String sensitiveWord) {
2020-09-16 14:23:50
401
原创 JS批量生成带文字二维码并打成压缩包
一、qrcode.js生成二维码<div id="qrcode"></div><script type="text/javascript">new QRCode(document.getElementById("qrcode"), "http://jindo.dev.naver.com/collie");</script>var qrcode = new QRCode("test", { text: "http://jindo.dev.na
2020-09-16 13:56:06
1390
转载 Java8:Lambda表达式增强版Comparator和排序
1、概述在这篇教程里,我们将要去了解下即将到来的JDK 8(译注,现在JDK 8已经发布了)中的Lambda表达式——特别是怎样使用它来编写Comparator和对集合(Collection)进行排序。这篇文章是Baeldung上的“Java ——回归基础”(“Java – Back to Basic”)系列的一部分。首先,让我们先定义一个简单的实体类:1234567891011121314151...
2018-03-22 09:26:10
249
转载 单键索引还是组合索引
转自 http://talentluke.iteye.com/blog/1843868摘自http://book.51cto.com/art/200906/132406.htm 8.4.5 索引的利弊与如何判定,是否需要索引 相信读者都知道索引能够极大地提高数据检索的效率,让Query 执行得更快,但是可能并不是每一位朋友都清楚索引在极大提高检索效率的同时,也给数
2018-01-26 15:22:17
386
转载 spring事物配置,声明式事务管理和基于@Transactional注解的使用
事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性。spring支持编程式事务管理和声明式事务管理两种方式。 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。
2018-01-11 14:37:07
222
原创 redhat-learn
CentOS 7 x86_64适用的EPEL安装源 国内镜像列表:https://itgeeker.net/centos-7-epel-china-mirror-repository/CentOS 7 64bit Minimal安装后的初步10项优化和配置(更新epel和remi源安装):https://itgeeker.net/centos-7-minimal-opt
2017-10-31 20:34:43
245
转载 单点登录原理与简单实现
(2017-09-22更新)GitHub:https://github.com/sheefee/simple-sso一、单系统登录机制1、http无状态协议 web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系
2017-10-19 17:33:07
293
转载 日志组件slf4j介绍及配置详解
1 基本介绍每一个Java程序员都知道日志对于任何一个Java应用程序尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库,如java.util.logging、Apache log4j、logback。但如果你还不知道SLF4J(Simple logging facade for Java)的话,那么是时候在你的项目中学习使用SLF4J了。SLF4J不同于其他日志
2017-10-19 16:46:55
1975
转载 Linux epoll模型
定义: epoll是Linux内核为处理大批句柄而作改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著的减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。因为它会复用文件描述符集合来传递结果而不是迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符集合,另一个原因就是获取事件的时候,它无须遍历整个被侦听的描述符集,只要遍历那些被内核
2017-10-18 16:29:58
243
转载 IO模型及select、poll、epoll和kqueue的区别
(一)首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)—————异步IO模型最大的特点是 完成后发回通
2017-10-18 15:24:45
331
转载 SpringCloud分布式开发五大神兽
SpringCloud分布式开发五大神兽服务发现——Netflix Eureka客服端负载均衡——Netflix Ribbon断路器——Netflix Hystrix服务网关——Netflix Zuul分布式配置——Spring Cloud ConfigEureka一个RESTful服务,用来定位运行在AWS地区(Region
2017-10-17 18:58:12
427
转载 Java之HashMap在多线程情况下导致死循环的问题
PS:不得不说Java编程思想这本书是真心强大.. 学习内容:1.HashMap在多线程的情况下出现的死循环现象 当初学Java的时候只是知道HashMap在并发的情况下使用的话,会出现线程安全问题,但是一直都没有进行深入的研究,也是最近实验室的徒弟在问起这个问题的原因之后,才开始进行了一个深入的研究. 那么这一章也就仅仅针对这个问题来说一下,
2017-10-16 17:34:14
425
转载 Zookeeper简单介绍
一、分布式协调技术在给大家介绍ZooKeeper之前先来给大家介绍一种技术——分布式协调技术。那么什么是分布式协调技术?那么我来告诉大家,其实分布式协调技术 主要用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种临界资源,防止造成"脏数据"的后果。这时,有人可能会说这个简单,写一个调 度算法就轻松解决了。说这句话的人,可能对分布式系统不是很了解,所以才会出现这种误解。如果
2017-10-14 15:23:27
231
转载 互联网金融平台微服务架构设计
微服务架构设计互联网金融平台微服务架构设计 按照孢子框架要义对互联网金融理财平台进行微服务架构设计。假设我们设计的目标是5年后的陆金所(https://www.lu.com/)。陆金所简介,平安集团旗下理财平台,是中国最大的网络投融资平台之一,2011年9月在上海注册成立,注册资本金8.37亿元,lufax结合全球金融发展与互联网技术创新,在健全的风险管控体系基础上,为中
2017-09-29 18:06:11
8769
转载 MySQL安装
MySQL 5.6 (Win7 64位)下载、安装与配置图文教程MySQL是目前十分流行的一种关系型数据库管理系统。官网推出的安装包有两种格式,分别是:ZIP格式和MSI格式。其中MSI格式的可以直接点击安装,按照它给出的安装提示进行安装,一般MySQL将会安装在C:\Program Files\MySQL\MySQL Server x.x (x.x是版本号)该目录中;ZIP格式是
2017-09-24 19:02:36
841
原创 Intellij IDEA 创建Web项目并在Tomcat中部署运行
Intellij IDEA 创建Web项目并在Tomcat中部署运行一.创建Web项目1、File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module name 处输入项目名,点击Next 3.勾选 Web Application,勾选 Create web.xml选项,点击Finish 4.在项目的WEB-INF目录下点
2016-11-08 22:27:57
384
转载 屠龙之技
一 雨水从宽阔的大理石台阶上淌下来,打湿了年轻人制作考究的山羊皮皮鞋。他的身形颀长瘦削,撑一把漆黑的木柄雨伞,侧脸仰望着灰蒙蒙的天空。年轻人推开图书馆那扇锈涩厚重的大门时,一只鸽子飞了出来。他钝重的步子在高耸狭窄的空间里激荡回响。这是一个由教堂改建而成的街区图书馆,在这个时代,聆听圣音的人已经不多了。 年轻人停住了脚步,目光蓦地垂落到教堂内远远的一角。冬日灰冷的阳光从高窗上的彩
2016-10-11 11:08:04
7030
1
原创 JavaScrip截取两位小数(不是四舍五入)
/** * value 为一个带有未知位 double 数据 * 对其截取newScale位小数(位数不足补0) * @parameter value * @parameter newScale * @return 截取完的结果(位数不足补0) */function receivableNumberIntercept(value , newScale){ //
2016-08-18 15:42:06
440
转载 平衡二叉树思想及C语言实现
形态匀称的二叉树称为平衡二叉树 (Balanced binary tree) ,其严格定义是: 一棵空树是平衡二叉树;若 T 是一棵非空二叉树,其左、右子树为 TL 和 TR ,令 hl 和 hr 分别为左、右子树的深度。当且仅当 ①TL 、 TR 都是平衡二叉树; ② | hl - hr |≤ 1;时,则 T 是平衡二叉树。【例】如图 8.3 所示。
2016-06-03 10:55:04
403
原创 Oracle 的for update行锁
关键字: oracle 的for update行锁 SELECT...FOR UPDATE 语句的语法如下: SELECT ... FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED]; 其中: OF 子句用于指定即将更新的列,即锁定行上的特定列。 WAIT 子句指定等待其他用户释放锁的秒数,防
2016-03-23 16:10:08
663
转载 SQL语句 DML,DDL,DCL
数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、DENY、REVOKE等语句,在默认状态下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。GRANT语句是授权语句,它可以把语句权限或者对象权限授予给其他用户和角色。DENY语句用于拒绝给当前数据库内的用户或
2015-12-27 11:49:10
537
转载 JDBC中语句超时与事务
在JAVA使用JDBC连接数据库进行操作时,有可能为了避免语句运行超时,而设置超时时长。这里有一个问题是,假设一个事务有两条DML SQL语句,会话在执行第一条SQL成功后,执行第二条SQL超时而中止时,事务处于什么样的状态?通常来说,一个SQL报错,只会进行语句级回滚,整个事务不会进行回滚。我们来进行一下测试。测试环境:Oracle 11.2.0.2 for Windows。
2015-12-27 11:47:38
872
转载 Java日志性能那些事
在任何系统中,日志都是非常重要的组成部分,它是反映系统运行情况的重要依据,也是排查问题时的必要线索。绝大多数人都认可日志的重要性,但是又有多少人仔细想过该怎么打日志,日志对性能的影响究竟有多大呢?今天就让我们来聊聊Java日志性能那些事。说到Java日志,大家肯定都会说要选择合理的日志级别、合理控制日志内容,但是这仅是万里长征第一步……哪怕一些DEBUG级别的日志在生产环境中不会输出到
2015-10-30 09:05:00
424
转载 关系型数据库表结构的两个设计技巧
物理主键作为关联的外键关系型数据库,由多个数据表构成。每一个数据表的结构是相同的,不同表之间可能存在关联关系。表之间的关联关系,正是关系型数据库得名的原因。一个表由多个字段构成。其中可能有多个字段适合作为主键。主键字段,就是表中每一行都不会有重复数据的字段。主键,可以分为两种:物理主键和逻辑主键。每一张数据库的表,都使用自增长的id字段作为物理主键。多表之间的外键关联,都关联其
2015-10-29 14:28:43
444
转载 十个最流行的Oracle性能指标,DBA必知
标签:数据库概述:随着Oracle数据库被大规模使用,你需要仔细监控性能水平,看是否还需要资源来支持部署。大家都不希望为了防止数据库的崩溃,而大量更改数据库配置或增加大量的服务器。那么,就需要经常留意整个数据库的KPI指标,找到它潜在的瓶颈和一些崩溃的迹象。这里就来介绍一下我们需要知道的十个性能指标。你在尝试提升你的数据库性能么?那么,这十个性能指标你必须要了解。在评估
2015-10-29 13:53:14
2897
从Paxos到Zookeeper 分布式一致性原理与实践
2018-12-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人