自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 微服务-3.spring cloud eureka-AP原则

开头我们先简单回顾下分布式环境中老生常谈的一个东西 - CAPC - consistency 强一致性A - availability 可用性P - partition tolerance 分区容错性CAP核心理论一个分布式系统不可能同时很好的满足一致性,可用性,和分区容错性三个需求因此根据CAP原则讲nosql 数据库分成了满足CA原则,满足CP原则 和满足 AP原则三大类C...

2019-10-06 00:48:24 5026

原创 微服务-2.spring cloud eureka-基本介绍

1.Eureka是什么?Eureka是Netflix的一个子模块,也是核心模块之一。Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移。服务注册与发现对于微服务架构来说是非常重要的,有了服务发现与注册,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了。功能类似于dubbo的注册中心,比如Zookeeper。2.基本架构Sprin...

2019-10-06 00:11:29 203

原创 微服务-1.学习微服务之前的一些问题

1.什么是微服务?2.微服务之前是如何通信的?3.spring cloud 和 dubbo 有哪些区别?4.spring cloud 和 spring boot ,你是怎么理解它们的?5.什么是服务熔断,什么是服务降级?6.微服务的优缺点分别是什么?7.你所知道的微服务技术栈有哪些,请列举1-28. eureka 和 zookeeper都可以提供服务注册与发现的功能,两者有什么区别...

2019-10-04 23:44:11 238

原创 多线程-超时等待模式

线程经典应用实例:生产常见场景:调用一个方法时等待一段时间(一般来说是给定一个时间),如果该方法能够在给定的时间段之内得到结果,那么将结果立刻返回,反之,超时返回默认结果。等待/超时经典范式:即加锁、条件循环和处理逻辑3个步骤,而这种范式无法做到超时等待。而超时等待的加入,只需要对经典范式做出非常小的改动改动内容如下:假设超时时间段是 T, 那么可以推断在当前时间now+T之后就会超时定...

2019-02-11 23:14:12 2251

原创 Thread.join()

线程的Thread.join 含义:当前线程A等待thread线程终止之后才能从thread.join()返回。线程Thread除了提供join()方法之外,还提供了join(long millis)和join(long millies,int nanos)两个具备超时特性的方法。这两个超时方法标识,如果线程thread在给定的超时时间里没有终止,那么将会从该超时方法中返回。在下面的代码清单中...

2019-02-11 21:34:54 4873 1

原创 线程通信的原理

线程开始运行,拥有自己的的栈空间,就如同一个脚本一样,按照既定的代码一步一步地执行,直到终止。但是,每个运行中的线程,如果仅仅是孤立的运行,那么没有一点儿价值,或者说价值很少。如果多个线程能够相互配合完成工作,这将会带来巨大的价值。volatile 和 synchronized 关键字Java 支持多个线程同时访问一个对象或者对象的成员变量,由于每个线程可以拥有这个变量的拷贝(虽然对象以及成员...

2019-02-11 19:05:30 1224

原创 解决多线程性能问题技巧分享

解决多线程性能问题技巧分享问题定位业务方法耗时跟踪同步日志输出线程数量过多线程空跑性能分析工具top(动态查看进程变化,监控linux的系统状况)vmstat(监控虚拟内存、进程、IO读写、CPU活动)jstack(jstack是java虚拟机自带的一种堆栈跟踪工具)总结如何应对线上故障个人经验最近工作中在使用多线程处理业务逻辑时遇到了问题,程序运行期初,与之前未使用多线程没有任何差别,但是当对...

2018-12-22 21:35:11 1198 1

原创 nginx+tomcat/jetty+redis 实现session共享的两种方式

nginx:负载均衡 tomcat/jetty:web服务器 redis::缓存中间件以上服务器(中间件)基本是现在互联网web系统的标配了,尤其是在分布式环境下,更能发挥其强大的作用。实现session共享的两种方式:方式一: <!--spring session filter-name 必须得这个名字不能更改,因为DelegatingFilterProxy...

2018-08-08 16:16:31 826 1

转载 cpu个数、核数、线程数、Java多线程关系的理解

一 cpu个数、核数、线程数的关系cpu个数:是指物理上,也及硬件上的核心数;核数:是逻辑上的,简单理解为逻辑上模拟出的核心数;线程数:是同一时刻设备能并行执行的程序个数,线程数=cpu个数 * 核数二 cpu线程数和Java多线程首先明白几个概念:(1) 单个cpu线程在同一时刻只能执行单一Java程序,也就是一个线程(2) 单个线程同时只能在单个cpu线程中执行...

2018-06-27 10:38:42 616

原创 jvm启动参数介绍

经常远程连接服务器进行问题排查,基本的一些排查技巧肯定多少得懂点,今天讲讲转储文件排查,先来讲讲JVM的一些参数吧。每当我们ps -ef | grep <web-server-pid>会出现一堆信息,但是我们真的都知道信息的具体含义吗还是只知道一点呢? 参数 默认 功能 -XX:-AllowUserSignlHandlers   允许为jav...

2018-06-26 15:48:10 415

原创 基于redis+lua实现高并发场景下的秒杀限流解决方案

应用场景如下:公司内有多个业务系统,由于业务系统内有向用户发送消息的服务,所以通过统一消息系统对外暴露微服务接口供外部业务系统调用,所有公司内业务系统的消息(短信,APP,微信)推送都由统一消息系统去推送,短信推送需要走外部短信通道商去发送短信,APP和微信走内部系统的push服务器,但是不管是短信通道商还是内部push服务器都会有每秒上限的控制。在这假设n/s条。以下是统一消息系统内部的具体的限...

2018-06-10 15:48:41 10102

空空如也

空空如也

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

TA关注的人

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