加载中
总结:native关键字

native 关键字告诉编译器(其实是JVM)调用的是该方法在外部定义,这里指的是C 突然比较好奇,java是怎么让线程运行起来的,看着代码就看到了核心方法:private native void start0();你没看...

总结:提高服务并发能力之DB

DB存储往往是请求的一个瓶颈所在,比如之前遇到的告警消息处理堆积,就是因为id存储的是uuid的原因,所以DB字段设计的合理性,是否分库分表,是否分布式,都对系统的整体的并发能力产生了决定...

2019/04/28 12:07
163
总结:提高服务并发能力之分布式

之前我提过集群的方式,但是如果整个项目使用集群的话,还是太重了,请求慢了,增加机器需要部署整个项目,显然是不太合理的,项目大,占用的内存也难免会大,因此可以考虑将项目拆分为分布式...

2019/04/28 12:05
65
总结:提高服务并发能力之集群

之前总结过一篇web架构,这里再把架构图贴一下: 那么如何从集群的角度去提高系统的吞吐能力呢? 我这里主要从两种方式上去总结。 一、通过DNS(轮询) + Nginx集群 + 应用服务器集群 + DB集...

2019/04/28 12:04
149
工作总结:web架构

当前web项目整体架构如下图: 问题:由于是采用DNS默认的轮训方式,当某一台nginx挂掉了,DNS是感知不到的,仍然会将请求分发过去。 DNS轮训确定参考:https://www.cnblogs.com/data2value/...

总结:tomcat与jvm

1、一个tomcat是一个进程,其中有很多线程(与有多少个app无关) 2、一个tomcat启动一个JVM,其中可以有很多APP 3、一个tomcat中部署的多个app,虽然同处一个JVM里,但是由于无法相互调用,所...

2019/04/26 10:12
72
总结:堆和栈

堆 堆比较好理解,即存放对象的地方。这里的对象由GC管理 1、类变量(static修饰的变量):在程序加载时系统就为它在堆中开辟了内存,堆中的内存地址存放于栈以便于高速访问。静态变量的生命...

2019/04/23 09:49
121
总结:GC

1、当发生垃圾回收的时候,会STW,所以,应该尽量少的产生GC。 2、如果堆内存分配比较大,GC会少一些,因为GC的策略也会去检测剩余内存。 3、为了更高效的进行GC,一般采取分带GC策略。 4、新...

2019/04/23 09:42
62
总结:volatile关键字

volatile关键字只能实现可见性和有序性,但是不能实现原子性,所以不能替代 synchronized 和Lock,这两个不仅可以实现可见性和有序性,还能实现原子性。 实现内存可见性原理: 对volatile变量...

总结:线程间频繁切换为什么耗费资源?

因为线程切换的时候,CPU需要将此线程的所有执行状态保存起来,如线程编号,执行到的位置等,然后再去执行其它线程。

2019/04/19 20:13
2.8K
SpringCloud实战9-Stream消息驱动

官方定义 Spring Cloud Stream 是一个构建消息驱动微服务的框架。   应用程序通过 inputs 或者 outputs 来与 Spring Cloud Stream 中binder 交互,通过我们配置来 binding ,而 Spring Clo...

SpringCloud实战8-Bus消息总线

好了现在我们接着上一篇的随笔,继续来讲。上一篇我们讲到,我们如果要去更新所有微服务的配置,在不重启的情况下去更新配置,只能依靠spring cloud config了,但是,是我们要一个服务一个服...

SpringCloud实战7-Config分布式配置管理

分布式环境下的统一配置框架,已经有不少了,比如百度的disconf,阿里的diamand 官方文档对spring Cloud Config的描述如下:   Spring Cloud Config为分布式系统中的外部配置提供服务器和客...

SpringCloud实战6-Zuul网关服务

SpringCloud实战6-Zuul网关服务 为什么需要网关呢? 我们知道我们要进入一个服务本身,很明显我们没有特别好的办法,直接输入IP地址+端口号,我们知道这样的做法很糟糕的,这样的做法大有问题...

SpringCloud实战1-Eureka服务搭建

熟悉微服务架构或Dubbo框架的都知道,微服务中最核心、最基础的组件就是注册中心了。下面利用Spring Cloud Eureka实现服务注册中心。并注册一个简单的服务提供者。 首先先创建一个spirngboo...

SpringCloud实战2-Ribbon客户端负载均衡

前面我们已经完成了注册中心和服务提供者两个基础组件。接着介绍使用Spring Cloud Ribbon在客户端负载均衡的调用服务。 ribbon 是一个客户端负载均衡器,可以简单的理解成类似于 nginx的负载...

SpringCloud实战3-Hystrix请求熔断与服务降级

我们知道大量请求会阻塞在Tomcat服务器上,影响其它整个服务.在复杂的分布式架构的应用程序有很多的依赖,都会不可避免地在某些时候失败.高并发的依赖失败时如果没有隔离措施,当前应用服务就有...

SpringCloud实战4-Hystrix线程隔离&请求缓存&请求合并

接着上一篇的Hystrix进行进一步了解。 当系统用户不断增长时,每个微服务需要承受的并发压力也越来越大,在分布式环境中,通常压力来自对依赖服务的调用,因为亲戚依赖服务的资源需要通过通信...

SpringCloud实战5-Feign声明式服务调用

SpringCloud实战5-Feign声明式服务调用 1 . 声明式和命令式 (Declarative vs Imperative)   声明式和命令式是两种编程范式。react是声明式的,jquery那样直接操作dom是命令式 声明式就像...

总结:枚举类型

枚举类型是为解决代码中常量而设计的。 枚举通常用来表示诸如颜色、方式、类别、状态等等数目有限、形式离散、表达又极为明确的量。 案例: 可以简单的定义: public enum AnimalEnum { CAT...

2019/04/16 19:50
153

没有更多内容

加载失败,请刷新页面

返回顶部
顶部