7 码农的世界,你不懂

尚未进行身份认证

暂无相关简介

等级
TA的排名 4k+

redis 数据类型详解 以及 redis适用场景场合

.MySql+Memcached架构的问题  实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:  1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。  2.Memcache...

2020-04-02 09:52:22

Eureka客户端续约及服务端过期租约清理源码...

Eureka客户端续约及服务端过期租约清理源码解析 在之前的文章:EurekaClient自动装配及启动流程解析中,我们提到了在构造DiscoveryClient时除了包含注册流程之外,还调度了一个心跳线程: scheduler.schedule( newTimedSupervisorTask( ...

2020-04-02 09:46:06

spring源码系列7:Spring中的InstantiationAwareBeanPos...

概念 Bean创建过程中的“实例化”与“初始化”名词 实例化(Instantiation): 要生成对象, 对象还未生成. 初始化(Initialization): 对象已经生成.,赋值操作。 BeanPostProcessor: 发生在 BeanDefiniton 加工Bean 阶段. 具有拦截器的...

2020-04-02 09:42:09

spring源码系列8:AOP源码解析之代理的创建

我们得知JDK动态代理两要素:Proxy+InvocationHandlerCGLB动态代理两要素:Enhancer + MethodInterceptor(Callback)springAOP底层是通过动态代理和CGLB代理实现的。也就是spring最终的落脚点还应该是在Proxy+InvocationHandler 或者Enhancer + MethodInterceptor上。带...

2020-04-02 09:31:15

ARM64架构下,OpenJDK的官方Docker镜像为何没有8...

为什么需要ARM64架构的OpenJDK8的Docker镜像对现有的Java应用,之前一直运行在x86处理器环境下,编译和运行都是JDK8,如今在树莓派的Docker环境运行(也可能是其他ARM环境,如华为的泰山ARM服务器),需要JDK8镜像作为基础镜像。OpenJDK的官方Dockerfile去OpenJDK的docker镜像官网查找找,地址是:https://hub.docker...

2020-04-02 09:27:59

linux常用命令

1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文件,包含以.开始的隐藏文件 ls -A 列出除.及..的其它文件 ls -r 反序排列 ...

2020-04-02 09:22:28

Nginx基本属性配置详解

1. Nginx服务的基本配置1.1 用于调试进程和定位问题的配置项 是否以守护进程的方式运行nginx # 默认ondaemonon|off; 是否以master/worker方式工作 # 默认on,指定了是否以master-worker进程的方式运行,如果设置为off,那么所有的请求将只会由master进程处理master_processon|off; error日志...

2020-04-02 09:17:57

一个基于springSecurity的Json Web Token的实现

SecurityJwt一个基于springSecurity的Json Web Token的实现GitHub地址提要一、SpringSecuritySpring Security,一种基于 Spring AOP 和 Servlet 过滤器的安全框架。它提供全面的安全性解决方案,同时在 Web 请求级和方法调用级处理身份确认和授权。。 来自Spring全家桶系列,与SpringBo...

2020-04-02 09:10:00

mybatis缓存概述

1问题引入例如到了发工资那天,员工通过各种形式和条件在企业的工资管理系统中查询自己的工资情况,有的员工还会多次查询自己的工资,如果每次查询都找数据库的话, 轻则查询速度慢,重则数据库“死掉了”,那么遇到这种以查询为主的应用,有什么办法能提高查询速度,不让数据库“死掉”呢?答案是采用缓存策略。2什么是缓存缓存是一种以空间换时间的策略技术,它位于内存中,而数据库位于硬盘中,原理是将数据库中某部份常被使...

2020-04-02 09:04:22

MySQL和Sql Server的sql语句区别

1、自增长列的插入:SQLServer中可以不为自动增长列插入值,MySQL中需要为自动增长列插入值。2、获取当前时间函数:SQLServer写法:getdate()MySQL写法:now()3、从数据库定位到表。Sqlserver写法:库名.dbo.表名 ;或者:库名..表名(注:中间使用两个点)select password from Info.dbo.users whe...

2020-04-01 10:04:40

Spring boot 核心功能

为什么使用JWT?随着技术的发展,分布式web应用的普及,通过session管理用户登录状态成本越来越高,因此慢慢发展成为token的方式做登录身份校验,然后通过token去取redis中的缓存的用户信息,随着之后jwt的出现,校验方式更加简单便捷化,无需通过redis缓存,而是直接根据token取出保存的用户信息,以及对token可用性校验,单点登录更为简单。JWT架构图 ...

2020-04-01 09:53:25

Java基础之File类

1.1概述据最终保存在硬盘上,在硬盘上是以1和0 保存的。而给我们展示出来的并不是二进制数据,而是一个一个的文件,换句话说数据最终都保存在这些文件中。而这些文件又被文件夹管理。 通过上述描述我们发现在计算机硬盘中就存在两种事物:文件和文件夹事物。而在Java中使用class类来描述生活中存在的事物,那么Java中是如何描述文件和文件夹这两类事物呢?使用File类来描述文件和...

2020-04-01 09:43:21

反射(一)

一、反射概述反射要依赖于Class类。由于Class表示类文件的字节码文件对象,类字节码文件就是在描述一个类,描述类的成员变量、成员函数和构造函数。而反射就是从一个类的字节码文件中拿到成员变量、成员函数和构造函数。要想从一个类中拿东西必须拿到这个类的字节码文件对象,所以反射依赖于Class,因此我们在学习反射之前先了解下Class。1、Class类介绍在Java中使用类来描述所有的事物,而这些描述...

2020-04-01 09:39:39

Spring Boot总结,核心功能,优缺点

SpringBoot核心功能1、独立运行Spring项目Spring boot 可以以jar包形式独立运行,运行一个Spring Boot项目只需要通过java -jar xx.jar来运行。2、内嵌servlet容器Spring Boot可以选择内嵌Tomcat、jetty或者Undertow,这样我们无须以war包形式部署项目。3、提供starter简化Maven配置spring提...

2020-04-01 09:06:24

mybatis批量插入

随着业务需要,有时我们需要将数据批量添加到数据库,mybatis提供了将list集合循环添加到数据库的方法。具体实现代码如下:1、mapper层中创建 insertForeach(List < Fund > list) 方法,返回值是批量添加的数据条数java代码:package com.center.manager.mapper; import java.uti...

2020-04-01 09:00:57

乐观锁与悲观锁及应用举例

小伙伴们大家好,针对大家经常遇到的锁的问题,通过这篇文章,把我自己对这两个“锁家”兄弟理解记录下来; - 悲观锁: 正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)的修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在...

2020-03-31 09:40:16

Linux crontab 实现秒级定时任务

1 crontab 的延时:原理:通过延时方法 sleep N来实现每N秒执行。crontab -e 输入以下语句,然后 :wq 保存退出。[url=][/url]* * * * * /usr/bin/curl http://www.test.com* * * * *sleep5; /usr/bin/curl http://www.test.com* * * * *...

2020-03-31 09:36:55

Docker安装ELK并实现JSON格式日志分析

ELK是什么ELK是elastic公司提供的一套完整的日志收集以及前端展示的解决方案,是三个产品的首字母缩写,分别是ElasticSearch、Logstash和Kibana。其中Logstash负责对日志进行处理,如日志的过滤、日志的格式化等;ElasticSearch具有强大的文本搜索能力,因此作为日志的存储容器;而Kibana负责前端的展示。ELK搭建架构如下图:ELK搭建架构加入...

2020-03-31 09:33:58

为什么不允许使用 Java 静态构造函数?

Java 静态构造函数 假设我们有一个定义为的类: publicclass Data { privateintid; public static Data() {}} 如果您尝试编译此类,则会在 Data 类型的构造函数中收到一条错误消息,作为非法修饰符。仅允许公开,受保护和私有。 ...

2020-03-31 09:29:53

SpringBoot中如何灵活的实现接口数据的加解密...

对接口的加密解密操作主要有下面两种方式:自定义消息转换器优势:仅需实现接口,配置简单。劣势:仅能对同一类型的MediaType进行加解密操作,不灵活。使用spring提供的接口RequestBodyAdvice和ResponseBodyAdvice优势:可以按照请求的Referrer、Header或url进行判断,按照特定需要进行加密解密。比如在一个项目升级的时候,新开发功能的接...

2020-03-31 09:26:19

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。