自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

maikelsong的专栏

一天不进步,就是退步

  • 博客(306)
  • 资源 (7)
  • 收藏
  • 关注

转载 九大基础排序总结与对比

请尊重个人劳动成果,转载注明出处,谢谢! http://blog.csdn.net/amazing7/article/details/51603682##一、对比分析图均按从小到大排列k代表数值中的”数位”个数n代表数据规模m代表数据的最大值减最小值 稳定性:稳定排序算法会让原本

2016-11-23 17:49:07 447

转载 轻量级分布式 RPC 框架

第一步:编写服务接口第二步:编写服务接口的实现类第三步:配置服务端第四步:启动服务器并发布服务第五步:实现服务注册第六步:实现 RPC 服务器第七步:配置客户端第八步:实现服务发现第九步:实现 RPC 代理第十步:发送 RPC 请求总结附录:Maven 依赖RPC,即 Remote Procedure Call(远程过程调用),说得通俗一

2015-11-10 17:25:08 421

转载 ISO8583报文协议——很容易理解

我刚进入金融行业时,就知道了IS08583报文协议,我想可能我还没进入这个行业都已经听过了,可知ISO8583的影响力有多大了。最初刚接触它时,确实对其中的一些细节概念不是很清晰,对有些地方比较迷惑。鉴于此,我想很多同行也必然会经历同样得阶段,所以我写下本文,以便大家能够少走一些弯路。同时,我在网上(http://blog.csdn.net/lysheng/archive/2005/03/03/3...

2020-05-05 16:34:15 362

原创 消息队列 折腾ActiveMQ时遇到的问题和解决方法 消息丢失怎么办

折腾ActiveMQ时遇到的问题和解决方法:1.先讲严重的:服务挂掉。这得从ActiveMQ的储存机制说起。在通常的情况下,非持久化消息是存储在内存中的,持久化消息是存储在文件中的,它们的最大限制在配置文件的<systemUsage>节点中配置。但是,在非持久化消息堆积到一定程度,内存告急的时候,ActiveMQ会将内存中的非持久化消息写入临时文件中,以腾出内存。虽然都保...

2020-04-06 23:02:51 1149

原创 网站安全 Spring MVC防御CSRF、XSS和SQL注入攻击

本文说一下SpringMVC如何防御CSRF(Cross-site request forgery跨站请求伪造)和XSS(Cross site script跨站脚本攻击)。说说CSRF对CSRF来说,其实Spring3.1、ASP.NET MVC3、Rails、Django等都已经支持自动在涉及POST的地方添加Token(包括FORM表单和AJAX POST等),似乎是一个tag的事情,...

2019-08-14 14:41:01 391

原创 Java传值调用和传引用调用(参数引用为null的问题)

一、问题近期在项目中遇到一个场景,在多层级调用中需要传递上下文,调用过程中上线文对象可能为空,想通过一个公共方法处理上下文,当上下文为空时生成上下文对象,执行相关操作后将该上下文对象向后传递。大致逻辑如下:public class Test { public static void handleContext(Context context) { if(contex...

2019-08-01 13:03:55 1450

转载 springboot+springcloud相关面试题

什么是springboot用来简化spring应用的初始搭建以及开发过程使用特定的方式来进行配置(properties或yml文件)创建独立的spring引用程序main方法运行嵌入的Tomcat无需部署war文件简化maven配置...

2019-07-10 16:01:25 134

转载 maven多模块使用,父模块(modules使用,package替pom),子模块(parent使用)

Maven多模块项目  Maven多模块项目,适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理。尤其是一些开源框架,也是采用多模块的方式,提供插件集成,用户可以根据需要配置指定的模块。  项目结构如下:    test-hd-parent  (父级)      ---pom.xml      ---test-hd-api...

2019-07-01 17:23:24 1496

转载 Spring Cloud 入门 之 Config 篇(六)

一、前言随着业务的扩展,为了方便开发和维护项目,我们通常会将大项目拆分成多个小项目做成微服务,每个微服务都会有各自配置文件,管理和修改文件起来也会变得繁琐。而且,当我们需要修改正在运行的项目的配置时,通常需要重启项目后配置才能生效。上述的问题将是本篇需要解决的问题。二、介绍#2.1 简单介绍Spring Cloud Config 用于为分布式系统中的基础设施和微服务应用提供集...

2019-07-01 13:41:13 165

转载 Spring Cloud 入门 之 Zuul 篇(五)

一、前言随着业务的扩展,微服务会不对增加,相应的其对外开放的 API 接口也势必增多,这不利于前端的调用以及不同场景下数据的返回,因此,我们通常都需要设计一个 API 网关作为一个统一的 API 入口,来组合一个或多个内部 API。二、简单介绍#2.1 API 网关使用场景黑白名单: 实现通过 IP 地址控制请求的访问 日志:实现访问日志的记录,进而实现日志分...

2019-07-01 13:40:04 122

转载 Spring Cloud 入门 之 Hystrix 篇(四)

一、前言在微服务应用中,服务存在一定的依赖关系,如果某个目标服务调用慢或者有大量超时造成服务不可用,间接导致其他的依赖服务不可用,最严重的可能会阻塞整条依赖链,最终导致业务系统崩溃(又称雪崩效应)。上述的问题将是本篇需要解决的问题。二、简单介绍2.1 请求熔断断路器是一种开关设置,当某个服务单元发生故障之后,通过断路器的故障监控,向调用方返回一个符合预期的服务降级处理(fall...

2019-06-30 13:41:56 112

翻译 Spring Cloud 入门 之 Feign 篇(三)

一、前言在上一篇文章《Spring Cloud 入门 之 Ribbon 篇(二)》中介绍了 Ribbon 使用负载均衡调用微服务,但存在一个问题:消费端每个请求方法中都需要拼接请求服务的 URL 地址,存在硬编码问题且不符合面向对象编程思想。如果服务名称发生变化,消费端也需要跟着修改。本篇文章将介绍 Feign 来解决上边的问题。二、简单介绍Feign 是一个声明式的 Web S...

2019-06-30 13:35:44 126

转载 Spring Cloud 入门 之 Ribbon 篇(二)

一、前言上一篇《Spring Cloud 入门 之 Eureka 篇(一)》介绍了微服务的搭建,服务注册与发现。但在文章中留了一个小尾巴–如何正确使用 Eureka 进行服务发现并调用服务。本篇文章将介绍如何使用 Ribbon 完成发现服务的调用以及其负载均衡的规则的使用。二、简单介绍Spring Cloud Ribbon 是基于 Netflix Ribbon 实现的一套客户端负...

2019-06-30 13:31:18 115

转载 Spring Cloud 入门 之 Eureka 篇(一)

一、前言Spring Cloud 是一系列框架的有序集合。它利用 Spring Boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 Spring Boot 的开发风格做到一键启动和部署。本篇介绍 Spring Cloud 入门系列中的 Eureka,实现快速入门。二、简单介绍Eureka 是 Net...

2019-06-30 13:24:05 110

转载 Spring Boot 入门之 Web 篇(二)

一、前言上一篇《Spring Boot 入门之基础篇(一)》介绍了 Spring Boot 的环境搭建以及项目启动打包等基础内容,本篇继续深入介绍 Spring Boot 与 Web 开发相关的知识。二、整合模板引擎由于 jsp 不被 SpringBoot 推荐使用,所以模板引擎主要介绍 Freemarker 和 Thymeleaf。2.1 整合 Freemarker2.1.1...

2019-06-30 12:27:35 91

转载 Spring Boot 入门之基础篇(一)

一、前言Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。本系列以快速入门为主,可当作工具小手册阅读二、环境搭建创建一个 maven 工程,目录结构如下图:2.1 添加依赖创建 maven 工程,在 pom.xml ...

2019-06-30 12:25:41 114

转载 Spring常用注解(收藏大全)

Spring部分1.声明bean的注解@Component 组件,没有明确的角色@Service 在业务逻辑层使用(service层)@Repository 在数据访问层使用(dao层)@Controller 在展现层使用,控制器的声明(C)2.注入bean的注解@Autowired:由Spring提供@Inject:由JSR-330提供@Resource:由J...

2019-06-28 16:57:11 89

翻译 spring对多线程支持,@EnableAsync@Async

我们在使用多线程的时候,往往需要创建Thread类,或者实现Runnable接口,如果要使用到线程池,我们还需要来创建Executors,在使用spring中,已经给我们做了很好的支持。只要要@EnableAsync就可以使用多线程。使用@Async就可以定义一个线程任务。通过spring给我们提供的ThreadPoolTaskExecutor就可以使用线程池。下面举个例子来说明首先定义...

2019-06-28 16:56:24 230

转载 Mysql学习总结——并发量大、数据量大的互联网业务数据库设计军规

一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高(2)新库使用utf8mb4字符集解读:万国码,无需转码,无乱码风险,节省空间(3)数据表、数据字段必须加入中文注释解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的(4)禁止使用存储过程、视图、触发器、Event解读:高并发大数据的互联网业务,架构...

2019-06-28 10:04:53 112

转载 开源巨献:Google最热门60款开源项目

0、机器学习系统 TensorFlow★Star 62533TensorFlow 是谷歌的第二代机器学习系统,按照谷歌所说,在某些基准测试中,TensorFlow的表现比第一代的DistBelief快了2倍。TensorFlow 内建深度学习的扩展支持,任何能够用计算流图形来表达的计算,都可以使用TensorFlow。任何基于梯度的机器学习算法都能够受益于TensorFlo...

2019-05-23 16:37:18 209

转载 GuavaCache简介(一)

前言在多线程高并发场景中往往是离不开cache的,需要根据不同的应用场景来需要选择不同的cache,比如分布式缓存如redis、memcached,还有本地(进程内)缓存如ehcache、GuavaCache。之前用spring cache的时候集成的是ehcache,但接触到GuavaCache之后,被它的简单、强大、及轻量级所吸引。它不需要配置文件,使用起来和ConcurrentHashMa...

2019-05-23 16:23:14 201

转载 分布式CAP定理,为什么不能同时满足三个特性?

在弄清楚这个问题之前,我们先了解一下什么是分布式的CAP定理。根据百度百科的定义,CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),最多只能同时三个特性中的两个,三者不可兼得。 一、CAP的定义Consistency (一致性):“all nodes ...

2018-09-06 18:35:57 336

转载 如何解决秒杀的性能问题和超卖的讨论

最近业务试水电商,接了一个秒杀的活。之前经常看到淘宝的同行们讨论秒杀,讨论电商,这次终于轮到我们自己理论结合实际一次了。ps:进入正文前先说一点个人感受,之前看淘宝的ppt感觉都懂了,等到自己出解决方案的时候发现还是有很多想不到的地方其实都没懂,再次验证了“细节是魔鬼”的理论。并且一个人的能力有限,只有大家一起讨论才能想的更周全,更细致。好了,闲话少说,下面进入正文。 一、秒杀带来了什...

2018-09-06 15:21:50 406

转载 Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

今天发一篇”水文”,可能很多读者都会表示不理解,不过我想把它作为并发序列文章中不可缺少的一块来介绍。本来以为花不了多少时间的,不过最终还是投入了挺多时间来完成这篇文章的。网上关于 HashMap 和 ConcurrentHashMap 的文章确实不少,不过缺斤少两的文章比较多,所以才想自己也写一篇,把细节说清楚说透,尤其像 Java8 中的 ConcurrentHashMap,大部分文章都说不...

2018-09-06 14:37:46 141

转载 为什么String要设计成不可变的?

这是一个老生常谈的话题(This is an old yet still popular question). 在Java中将String设计成不可变的是综合考虑到各种因素的结果,想要理解这个问题,需要综合内存,同步,数据结构以及安全等方面的考虑. 在下文中,我将为各种原因做一个小结。1. 字符串常量池的需要字符串常量池(String pool, String intern pool, S...

2018-08-28 11:05:35 148

转载 java中 int、char、long各占多少字节数

所谓的占用字节数 就是申请内存的时候所占的空间大小 byte 1字节 最小值是 -128(-2^7); 最大值是 127(2^7-1); boolean 至少1字节 这种类型只作为一种标志来记录 true/false 情况; short 2字节 最小值是 -32768(-2^15); ...

2018-08-28 10:59:52 765

转载 用FastDFS一步步搭建文件管理系统

目录 一、FastDFS介绍 1、简介 2、FastDFS的存储策略 3、FastDFS的上传过程 4、FastDFS的文件同步 5、FastDFS的文件下载 二、安装FastDFS环境 0、前言 1、下载安装 libfastcommon 2、下载安装FastDFS 3、配置FastDFS跟踪器(Tracker) 4、配置 FastDFS 存储 (S...

2018-08-24 11:03:55 133

转载 Java多线程编程-(11)-从volatile和synchronized的底层实现原理看Java虚拟机对锁优化所做的努力

一、背景对于Java来说我们知道,Java代码首先会编译成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上进行执行。Java中所使用的并发机制依赖于JVM的实现和CPU的指令。下边我们对常见的实现同步的两个关键字volatile和synchronized进行底层原理的分析,分析之余我们就会了解到JVM在对锁的优化所做的事情,这样的话我们...

2018-08-07 18:15:17 122

转载 ActiveMQ讯息传送机制以及ACK机制

ActiveMQ消息传送机制以及ACK机制详解    AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的。 一. ActiveMQ消息传送机制    Producer客户端使用来发送消息的, Consumer客户端用来消费消息;它们的协同中心就是ActiveMQ...

2018-08-06 16:43:51 163

转载 线程安全的CopyOnWriteArrayList介绍

先写一段代码证明CopyOnWriteArrayList确实是线程安全的。ReadThread.java&lt;span style="color:#000000"&gt;&lt;code&gt;&lt;span style="color:#000088"&gt;import&lt;/span&gt; java.util.List;&lt;span style="color

2018-07-29 20:33:20 167

转载 HTTP协议的前世今生——各版本HTTP协议对比

HTTP协议是如今互联网与服务端技术的基石,HTTP协议的演进也从侧面反应了互联网技术的快速发展。这两天在准备一次关于HTTP1.1协议特性的技术分享过程中,顺便了解了下各版本HTTP协议的特点,在这里做个简单的总结。HTTP协议到现在为止总共经历了3个版本的演化,第一个HTTP协议诞生于1989年3月。1、HTTP 0.9 HTTP 0.9是第一个版本的HTTP协议,已过时。...

2018-07-29 19:07:31 286

转载 快递接口—分析对比·

快递接口—分析对比·快递?快递接口?快递查询?快递下单接口?你需要快递什么接口?是找不到?使用的是次数限制,还是收费的呢?是否有技术支持?是否能给予我们全方位服务? ......等等这一切一切问题,看完此文章后,希望可能帮到你,勿喷。生活中,想到快递,无非就是四通一达,顺丰快递等等。四通一达:申通快递、圆通速递、中通快递、百世汇通、韵达快递。他们之中也各有自己的开发平台或接口平台...

2018-07-28 22:51:24 1149 1

转载 在一个千万级的数据库查寻中,如何提高查询效率?

一、数据库设计方面1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引;2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: sel...

2018-07-26 13:35:43 240

转载 Redis常见集群方案、Codis实践及与Twemproxy比较

前言 诚如开篇文章所言,高效运维包括管理的专业化和技术的专业化。前两篇我们主要在说些管理相关的内容,本篇说一下技术专业化。希望读者朋友们能适应这个转换,谢谢。 互联网早在几年前就已进入Web 2.0时代,对后台支撑能力的要求,提高了几十倍甚至几百倍。在这个演化过程中,缓存系统扮演了举足轻重的角色。 运维进化到今天,已经不是重复造轮子的时代。所以,我们在架构优化和自动化运维中...

2018-07-24 12:14:55 310

转载 Codis的架构设计

最近学习了Codis的源码实现,把一些收获整理一下放在这里。 为什么会有Codis?RedisCluster架构Codis是怎么做的Codis架构 首先,为什么会有Codis?Codis是用来管理Redis集群的,那么Codis就是因为Redis而存在的,但是这并不是终极答案,对吧?为什么会有Redis呢?因为这个人。Redis的作者。 这是一个大帅哥,一点也不...

2018-07-24 11:24:21 213

转载 redis集群 数据迁移方式 Hash槽 和 一致性hash对比,优缺点比较

集群:是一个提供多个Redis(分布式)节点间共享数据的程序集。集群部署Redis 集群的键空间被分割为 16384 hash个槽(slot), 集群的最大节点数量也是 16384 个关系:cluster&gt;node&gt;slot&gt;key分片:Redis Cluster在设计中没有使用一致性哈希(Consistency Hashing),而是使用数据分片引入哈希槽(...

2018-07-24 11:16:12 2725

转载 Codis 3.0.1 安装使用文档(官方)

Codis 使用文档Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没有显著区别 (不支持的命令列表), 上层应用可以像使用单机的 Redis 一样使用, Codis 底层会处理请求的转发, 不停机的数据迁移等工作, 所有后边的一切事情, 对于前面的客户端来说是透明的, 可以简单的认为后边连接的是一...

2018-07-24 10:29:22 221

转载 初识JVM byte code

关于JVM和其上的byte code,网上其实有足够多的资料了,我这里就简单做个提纲和介绍,权当记录吧。stack-based VMJava byte code运行在JVM上,就像机器指令运行在物理机上,是需要遵循这个机器的指令规范的。所以认识JVM byte code,是需要稍微了解下JVM的。JVM是一个基于栈(stack-based)的虚拟机。很久以前我还写过类似 简单的虚拟机 。...

2018-07-22 10:17:27 157

转载 tomcat bio nio apr 模式性能测试与个人看法

11.11活动当天,服务器负载过大,导致部分页面出现了不可访问的状态、那后来主管就要求调优了,下面是tomcat bio、nio、apr模式以及后来自己测试的一些性能结果。原理方面的资料都是从网上找的,并且把多个地方的整理到了一起,觉得很有意义。(后面对tomcat默认页面测试的数据是自己测出来的),tomcat 的三种模式如果用对了场合,性能绝对有大幅度的提升。当然调优也并不只在这一个方面,...

2018-07-22 09:58:15 239

转载 【深入理解JVM】:类加载机制

概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。与那些在编译时需要进行链接工作的语言不同,在Java语言里,类型的加载、连接和初始化过程都是在程序运行期间完成的,例如import java.util.*下面包含很多类,但是,在程序运行的时候,虚拟机只会加载哪些我们程序需要的类。这种...

2018-07-18 18:19:52 210

MySQL性能调优与架构设计--全册

MySQL性能调优与架构设计--全册MySQL性能调优与架构设计--全册

2011-08-11

Spring in action中文版

Spring in action中文版Spring in action中文版Spring in action中文版

2009-05-07

程序员常用JavaScript特效.chm

程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm程序员常用JavaScript特效.chm

2009-02-13

开发中用到的Flash图形开发

Flash图形开发Flash图形开发开发中用到的Flash图形开发开发中用到的Flash图形开发开发中用到的Flash图形开发

2009-02-13

物流管理物流管理物流管理物流管理

交换机的发生的 大斗法的说法多发达手动阀的身份

2008-10-17

ARP防火墙

很好用哦。还是单机版的。

2007-12-16

空空如也

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

TA关注的人

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