babyZeng

个人博客

spring(基础24) Spring注解@Transactional配置事务

1、详细介绍 事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编程式和声明式的两种方式。 编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际...

2019-06-17 14:30:36

阅读数 11

评论数 0

tomcat优化(五)tomcat调优

Tomcat 调优大致分为两大类: 1.Tomcat 的自身调优: 采用动静分离节约 Tomcat 的性能 禁用 AJP 连接器 调整 Tomcat 的线程池 调整 Tomcat 的连接器 修改 Tomcat 的运行模式 2.JVM的调优: 调优Jvm内存 一、Tomcat 自身调优...

2019-05-27 11:18:23

阅读数 36

评论数 0

多线程(1)ThreadLocal用法及原理

前言: ThreadLocal和Synchonized都用于解决多线程并发访问。 synchronized是利用锁的机制,使变量或代码块在某一时该仅仅能被一个线程访问。 而ThreadLocal为每个线程都提供了变量的副本,使得每个线程在某一时间訪问到的并非同一个对象,这样就隔离了多个线程对数据...

2019-05-23 18:25:32

阅读数 10

评论数 0

java面试(5)Dubbo和SpringCloud微服务架构之间的区别

微服务主要的优势: 1、降低复杂度 将原来偶合在一起的复杂业务拆分为单个服务,规避了原本复杂度无止境的积累。每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。每个服务开发者只专注服务本身,通过使用缓存、DAL等各种技术手段来提升系统的性能,而对于消费方来说完全透明。 2、可独...

2019-05-23 17:44:08

阅读数 24

评论数 0

阿里面试题(1)redis的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?

一、面试原题 redis的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现? 二、面试官心里分析 如果你连这个问题都不知道,上来就懵了,回答不出来,那线上你写代码的时候,想当然的认为写进 redis 的数据就一定会存在,后面导致系统各种 bug,谁来负责? 常见的有两个问题...

2019-04-29 17:27:20

阅读数 70

评论数 0

nginx学习(1) nginx配置详解

1.定义 nginx是一款轻量级服务器/反向代理服务器及电子邮件代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。 2、静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文件(如HTML、图片)通过HTTP协议展现给客户端。 静态http...

2019-04-29 17:03:49

阅读数 20

评论数 0

Spring Cloud学习(三) Spring Cloud原理与核心

一、定义 Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。 Spring并没有重复制造轮子,...

2019-04-26 11:06:58

阅读数 31

评论数 0

JAVA基础(41)java元注解之@Target、@Retention、@Documented详解

一、元注解 元注解的作用就是负责注解其他注解。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明。Java5.0定义的元注解:     1.@Target,     2.@Retention,     3.@Documented...

2019-04-25 17:29:38

阅读数 31

评论数 0

spring(基础23) try catch对Spring事务的影响

一、spring事务回滚 Spring 的默认事务机制,当出现unchecked异常时候回滚,checked异常的时候不会回滚。 异常中unchecked异常包括error和runtime异常。需要try catch或向上抛出的异常,为checked异常比如IOException, 也就是说程...

2019-04-25 15:47:01

阅读数 40

评论数 0

架构师之路(13)系统如何支持高并发

高并发系统各不相同。比如每秒百万并发的中间件系统、每日百亿请求的网关系统、瞬时每秒几十万请求的秒杀大促系统。 他们在应对高并发的时候,因为系统各自特点的不同,所以应对架构都是不一样的。 另外,比如电商平台中的订单系统、商品系统、库存系统,在高并发场景下的架构设计也是不同的,因为背后的业务场景什么的...

2019-04-02 17:24:15

阅读数 66

评论数 0

eclipse导入maven项目报错"Missing artifact com.sun.:tools:jar:1.8.0"错误解决方法

一、报错信息 1.1分析原因 选中项目-->右键 -->"Properties"-->"Java Build Path" 二、解决步骤 在报错的pom.xml文件中添加: <depen...

2019-04-01 18:14:54

阅读数 46

评论数 0

Spring Cloud学习(二) Spring Cloud Eureka详解

一 Eureka服务治理体系 1.1 服务治理 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册和发现。 Spring Cloud Eureka是Spring Cloud Netflix微服务套件中的一部分,它基于Netflix Eureka做了二次封装。主...

2019-03-28 19:28:34

阅读数 36

评论数 0

java代码 EXCEL实战(一) 导入手机号

一、需求描述: 管理后台用户管理模块下某用户操作界面,需要一个批量导入手机号的功能。 二、前端代码: 2.1 html代码 <table> <tr> <td&...

2019-02-27 15:36:49

阅读数 130

评论数 0

架构师之路(12)多库多事务降低数据不一致概率

一、案例缘起 我们经常使用事务来保证数据库层面数据的ACID特性。 举个栗子,用户下了一个订单,需要修改余额表,订单表,流水表,于是会有类似的伪代码: start transaction; CURDtable t_account; any Exception rollb...

2019-02-22 17:07:43

阅读数 38

评论数 0

架构师之路(11)单点系统架构的可用性与性能优化

一、需求缘起 明明架构要求高可用,为何系统中还会存在单点? 回答:单点master的设计,会大大简化系统设计,何况有时候避免不了单点 在哪些场景中会存在单点?先来看一下一个典型互联网高可用架构。 典型互联网高可用架构: (1)客户端层,这一层是浏览器或者APP,第一步先访问DNS-s...

2019-02-22 15:52:38

阅读数 73

评论数 0

Spring Boot运用(一)Spring Boot添加切面,记录日志

一、AOP简介 AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是Spring框架中的一个重要内容, 它通过对既有程序定义一个切入点,然后在其前后切入不同的执行内容,比如常见的有:打...

2019-01-08 14:59:32

阅读数 176

评论数 0

JAVA基础(40)Log4j和Log4j2的区别

相信很多程序猿朋友对log4j都很熟悉,log4j可以说是陪伴了绝大多数的朋友开启的编程。我不知道log4j之前是用什么,至少在我的生涯中,是log4j带我开启的日志时代。 log4j是Apache的一个开源项目,我们不去考究它的起源时间,但是据我了解,log4j 1已经不再更新了。  下面引用官...

2018-09-10 10:19:47

阅读数 91

评论数 0

mysql基础(九) MYSQL 索引类型

一、简介 MySQL目前主要有以下几种索引类型: 1.普通索引 2.唯一索引 3.主键索引 4.组合索引 5.全文索引 二、语句 CREATE TABLE table_name[col_name data type] [unique|fulltext][index|key][index_n...

2018-08-24 14:55:46

阅读数 74

评论数 0

分布式运用(一) redis分布式锁的实现方法

前言 分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。 一、可靠性 首先,为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件: 1)互斥性。在任意时刻,只有一个客户端能持有锁。 2)不会发生死锁。即使有一个...

2018-08-24 14:41:42

阅读数 131

评论数 0

mysql基础(八) btree索引和hash索引的区别

Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。 可能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什...

2018-08-23 13:42:50

阅读数 92

评论数 0

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