自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深入理解 Spring Cloud 核心组件与底层原理

一、Spring Cloud核心组件:Eureka Netflix Eureka Eureka详解 1、服务提供者 2、服务消费者 3、服务注册中心 二、Spring Cloud核心组件:Ribbon 三、Spring Cloud核心组件:Feign 四、Spring Cloud核心组...

2019-12-16 11:08:18 219

原创 我花 10 个小时,写出了小白也能看懂的阿里数据中台分析!

数据中台被誉为大数据的下一站,由阿里兴起,核心思想是数据共享,2015年阿里提出“大中台,小前台”的策略。2018 年因为“腾讯数据中台论”,中台再度成为了人们谈论的焦点。2019年,似乎人人都在提数据中台,但却不是所有人都清楚数据中台到底意味着什么。数据中台是只有大厂才需要考虑的高大上的概念吗?普通企业该不该做数据中台?数据中台的出现会给现有数据从业者们带来颠覆式的挑战吗?数据中台不是大...

2019-12-16 11:06:15 186

原创 深入理解 Java 虚拟机(第一弹) - Java 内存区域透彻分析

来自:好好学java这篇文章主要介绍Java内存区域,也是作为Java虚拟机的一些最基本的知识,理解了这些知识之后,才能更好的进行Jvm调优或者更加深入的学习,本来这些知识是晦涩难懂的,所以希望能够讲解的透彻且形象。0 运行时数据区域JVM载执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。Java 虚拟机所管理的内存一共分为Method Are...

2019-12-14 10:49:20 162

原创 入门 | 32 个常用 Python 实现

1、冒泡排序lis = [56,12,1,8,354,10,100,34,56,7,23,456,234,-58]def sortport(): for i in range(len(lis)-1): for j in range(len(lis)-1-i): if lis[j]>lis[j+1]: li...

2019-12-14 10:46:22 190

原创 java基础|自定义java线程池

线程池创建的参数在创建线程的各种方式中我们有讲到过通过创建线程池来完成异步操作,但实际上jdk提供的Executors来创建线程池都还有些缺陷,线程池有以下几个参数: 代码节选自源码ThreadPoolExecutor.java的构造函数 public ThreadPoolExecutor(int corePoolSize, ...

2019-12-13 10:56:31 147

原创 浅谈JAVA枚举类

一、什么情况下使用枚举类?有的时候一个类的对象是有限且固定的,这种情况下我们使用枚举类就比较方便。二、为什么不用静态常量来替代枚举类? public static final int SEASON_SPRING = 1; public static final int SEASON_SUMMER = 2; public static fina...

2019-12-13 10:52:03 150

转载 说实话:前后端分离后,比从前更痛苦了

你有没有遇到过: 前端代码刚写完,后端的接口又变了。 接口文档永远都是不对的。 测试工作永远只能临近上线才能开始。 为什么前后端分离了,你比从前更痛苦?前后端分离早已经不是新闻,当真正分离之后确遇到了更多问题。要想解决现在的痛,就要知道痛的原因:为什么接口会频繁变动?设计之初没有想好。这需要提高需求的理解能力和接口设计能力。变动的成本较低。德国有...

2019-12-13 10:39:18 234 1

转载 机器学习必学10大算法

本文介绍了 10大常用机器学习算法,包括线性回归、Logistic 回归、线性判别分析、朴素贝叶斯、KNN、随机森林等。1. 线性回归在统计学和机器学习领域,线性回归可能是最广为人知也最易理解的算法之一。预测建模主要关注的是在牺牲可解释性的情况下,尽可能最小化模型误差或做出最准确的预测。我们将借鉴、重用来自许多其它领域的算法(包括统计学)来实现这些目标。...

2019-12-12 10:39:19 91

转载 巧用Java8中的Stream,让集合操作飞起来!

简介java8也出来好久了,接口默认方法,lambda表达式,函数式接口,Date API等特性还是有必要去了解一下。比如在项目中经常用到集合,遍历集合可以试下lambda表达式,经常还要对集合进行过滤和排序,Stream就派上用场了。用习惯了,不得不说真的很好用。Stream作为java8的新特性,基于lambda表达式,是对集合对象功能的增强,它专注于对集合对象进行各种高效、便利的聚合...

2019-12-12 10:36:18 94

原创 MySQL中常见错误用法的总结

1LIMIT语句分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。好吧,可能90%以上的 DBA 解决该问题就到此为止。但当 LIMIT 子句变成 “LIMIT 1000000,10” 时,程序员仍然会抱怨:...

2019-12-11 11:03:22 155

原创 MySQL搭建

MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典 MySQL AB 公司, 目前属于 Oracle 公司,MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。对应目前主流的 LAMP 架构来说,Mysql 更是得到各位 IT 运维、...

2019-12-11 11:01:05 636

原创 三步教会你实操MySQL,数据分析必备技能

MySQL⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇为啥子学习MySQL?三大理由征服你!其一:数据量一旦过大,Excel它不卡吗?!其二:面试要求明确写了必须会SQL,敢不听?!其三:Excel总感觉不太高大上?用MySQL就完了!严小样儿:安排~⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇...

2019-12-11 10:59:28 196

原创 用Python在Excel里画出蒙娜丽莎

之前看到过很多头条,说哪国某人坚持了多少年自学使用excel画画,效果十分惊艳。对于他们的耐心我十分敬佩。但是作为一个程序员,自然也得挑战一下自己。这种需求,我们十分钟就可以完成!mona-lisa基本思路实现这个需求的基本思路是读取这张图片每一个像素的色彩值,然后给excel里的每一个单元格填充上颜色。所以主要用到的是PIL、openpyxl这两个库。PIL使用PI...

2019-12-11 10:56:00 193

转载 8 个问题看你是否真的懂 JS

JavaScript 是一种有趣的语言,我们都喜欢它,因为它的性质。浏览器是JavaScript的主要运行的地方,两者在我们的服务中协同工作。JS有一些概念,人们往往会对它掉以轻心,有时可能会忽略不计。原型、闭包和事件循环等概念仍然是大多数JS开发人员绕道而行的晦涩领域之一。正如我们所知,无知是一件危险的事情,它可能会导致错误。接下来,来看看几个问题,你也可以试试想想,然后作答。...

2019-12-10 10:28:28 90

转载 Linux 命令行下的好东西

为你列举一些可能没注意过的好用的 Linux 命令行命令。现在做网站做移动应用最讲究的就是推广了,推广做的好那就成功了一大半,相对的没曝光产品再好也很难做下去。就这个角度而言绝大多数 Linux 命令行的推广简直是烂透了。繁多 Linux 有用极了的命令行工具就静静的躺在你发行版默认安装的包裹里,很多时候只有当你碰到什么问题的时候网上搜一圈才能知道。更蛋疼的是这里面很多东西你一旦知...

2019-12-10 10:24:10 94

转载 Java 并发编程 73 道面试题及答案

、在java中守护线程和本地线程区别?java中的线程分为两种:守护线程(Daemon)和用户线程(User)。任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(bool on);true则把该线程设置为守护线程,反之则为用户线程。Thread.setDaemon()必须在Thread.start()之前调用,否则运行时会抛出异常。两者的区别:唯一的区...

2019-12-10 10:20:53 184

原创 MySQL 查询性能优化

对于高性能数据库操作,只靠设计最优的库表结构、建立最好的索引是不够的,还需要合理的设计查询。如果查询写得很糟糕,即使库表结构再合理、索引再合适,也无法实现高性能。查询优化、索引优化、库表结构优化需要齐头并进,一个不落。6.1 为什么查询速度会慢通常来说,查询的生命周期大致可以按照顺序来看:从客户端>>服务器>>在服务器上进行解析>>生成执行计划...

2019-12-09 10:17:27 126

原创 MySQL 执行计划

1.使用explain语句去查看分析结果如explain select * from test1 where id=1;会出现:id selecttype table type possible_keys key key_len ref rows extra各列。其中,type=const表示通过索引一次就找到了;key=primary的话,表示使用了主键;type=all...

2019-12-09 10:15:03 69

原创 12 条 MySQL 优化技巧,提速不止十倍!

应用程序慢如牛,原因多多,可能是网络的原因、可能是系统架构的原因,还有可能是数据库的原因。那么如何提高数据库SQL语句执行速度呢?有人会说性能调优是数据库管理员(DBA)的事,然而性能调优跟程序员们也有莫大的关系。程序中嵌入的一行行的SQL语句,如果使用了一些优化小技巧,定能达到事半功倍的效果。技巧1 比较运算符能用 “=”就不用“<>”“=”增加了索引的使用几率...

2019-12-07 10:29:51 150

原创 MySQL 日期函数之 DATEDIFF

前言刷题过程中,发现有关日期的加减尤其频繁,频繁程度仅次于之前的工资谁高的问题。不得不细细的想,为啥呢?是爱么?是希望么?当然不是啊,是效率。最终的最终,要归结为效率,毕竟终极目标都是为了赚小钱钱!DATEDIFF 函数简介DATEDIFF() 函数返回两个日期之间的天数,通俗的讲就是计算时间差。DATEDIFF() 函数语法格式为:DATEDIFF(dat...

2019-12-07 10:27:10 1632

原创 MySQL巡检

操作系统层面cpu监控1[root@zst data]# sar -u 10 3Linux 2.6.32-642.el6.x86_64 (zst) 09/22/2017 _x86_64_ (8 CPU)10:26:44 AM CPU %user %nice %system %iowait %steal %idle10:26:54 AM all 0.55 0.00 0....

2019-12-07 10:23:53 139

原创 Java中的责任链设计模式

责任链设计模式的思想很简单,就是按照链的顺序执行一个个处理方法,链上的每一个任务都持有它后面那个任务的对象引用,以方便自己这段执行完成之后,调用其后面的处理逻辑。下面是一个责任链设计模式的简单的实现:publicinterfaceTask{publicvoidrun();}publicclassTask1implementsTask{pri...

2019-12-06 11:02:06 85

原创 如何设计一个本地缓存

前言最近在看 Mybatis 的源码,刚好看到缓存这一块,Mybatis 提供了一级缓存和二级缓存;一级缓存相对来说比较简单,功能比较齐全的是二级缓存,基本上满足了一个缓存该有的功能;当然如果拿来和专门的缓存框架如 ehcache 来对比可能稍有差距;本文我们将来整理一下实现一个本地缓存都应该需要考虑哪些东西。考虑点考虑点主要在数据用何种方式存储,能存储多少数据,多余的数据如何处理等几...

2019-12-06 10:59:06 121

转载 你必须收藏的 GitHub 技巧

一秒钟把Github项目变成前端网站GitHub Pages大家可能都知道,常用的做法,是建立一个gh-pages的分支,通过setting里的设置的GitHub Pages模块可以自动创建该项目的网站。这里经常遇到的痛点是,master遇到变更,经常需要去sync到gh-pages,特别是纯web前端项目,这样的痛点是非常地痛。Github官方可能嗅觉到了该痛点,出了个master当...

2019-12-06 10:55:41 363

转载 Spring Boot:启动原理解析

我们开发任何一个Spring Boot项目,都会用到如下的启动类1@SpringBootApplication2publicclassApplication{3publicstaticvoidmain(String[] args){4SpringApplication.run(Application.class, args);5...

2019-12-06 10:52:11 112

原创 这样规范写代码,同事直呼“666”

一、MyBatis 不要为了多个查询条件而写 1 = 1当遇到多个查询条件,使用where 1=1 可以很方便的解决我们的问题,但是这样很可能会造成非常大的性能损失,因为添加了 “where 1=1 ”的过滤条件之后,数据库系统就无法使用索引等查询优化策略,数据库系统将会被迫对每行数据进行扫描(即全表扫描) 以比较此行是否满足过滤条件,当表中的数据量较大时查询速度会非常慢;此外,还会存在SQ...

2019-12-05 10:12:50 78

原创 MySQL Basic Knowledge

本文主要是mysql的相关要点,未详细描述.仅供查阅用.基本架构客户端Server层包含mysql的大多数核心服务功能,以及日期、时间等所有的内置函数,跨存储引擎的功能(储过程、触发器、视图)都在这一层实现,下面列出查询过程中的几个核心的部分.•连接器:管理连接,权限认证.•查询缓存:命中缓存则直接返回结果,未命中则直接走分析器.•分析器 :词法分析,语法分析.•优化器:执...

2019-12-05 10:08:58 75

原创 MySQL 数据类型详解

在 MySQL 中常见的数据类型如下:1、整数类型包括 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,小数类型 FLOAT 和 DOUBLE,DECIMAL。2、日期/时间类型包括 YEAR、TIME、DATE、DATETIME 和 TIMESTAMP。3、 字符串类型包括 CHAR、VARCHAR、BINARY、V...

2019-12-04 09:04:41 313

原创 MySQL 存储引擎详解

什么是存储引擎数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。现在许多数据库管理系统都支持多种不同的存储引擎。MySQL 的核心就是存储引擎。MySQL常见的存储MyISAM与InnoDBMyISAM...

2019-12-04 08:59:55 163

原创 面试重点:MySQL事务隔离级别和锁,看这一篇就够了!

事务及其特性数据库事务(简称:事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。事务的使用是数据库管理系统区别文件系统的重要特征之一。事务拥有四个重要的特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability),人们习惯称之为 ACID 特性。下面我逐一对其进行解释。 原子性(Ato...

2019-12-03 11:47:59 588

转载 写代码注意了,千万不要在 MySQL 中使用 UTF-8

最近我遇到了一个bug,我试着通过Rails在以“utf8”编码的MariaDB中保存一个UTF-8字符串,然后出现了一个离奇的错误:Incorrectstringvalue: ‘ð <…’forcolumn ‘summary’ at row1我用的是UTF-8编码的客户端,服务器也是UTF-8编码的,数据库也是,就连要保存的这个字符串“????”也是合法...

2019-12-03 11:42:31 231

原创 可能是全网最好的MySQL重要知识点

什么是MySQL?MySQL 是一种关系型数据库,在Java企业级开发中非常常用,因为 MySQL 是开源免费的,并且方便扩展。阿里巴巴数据库系统也大量用到了 MySQL,因此它的稳定性是有保障的。MySQL是开放源代码的,因此任何人都可以在 GPL(General Public License) 的许可下下载并根据个性化的需要对其进行修改。MySQL的默认端口号是3306。...

2019-12-02 10:54:24 78

原创 MySQL5.5安装教程

hello大家好,今天来给大家分享一手MySQL5.5安装教程首先我们先要去官网下载一个MySQL5.5的安装包。下载地址:https://dev.mysql.com/downloads/mysql/5.5.html#downloads选择其中与自己电脑相匹配的位数,点击Download下载之后点击直接开始下载,静静等待下载完成后,开始安装。选中下载好的mysql-5.5....

2019-12-02 10:48:59 1548 1

原创 一步一步带你入门MySQL中的索引和锁

索引索引常见的几种类型索引常见的类型有哈希索引,有序数组索引,二叉树索引,跳表等等。本文主要探讨 MySQL 的默认存储引擎 InnoDB 的索引结构。InnoDB的索引结构在InnoDB中是通过一种多路搜索树——B+树实现索引结构的。在B+树中是只有叶子结点会存储数据,而且所有叶子结点会形成一个链表。而在InnoDB中维护的是一个双向链表。...

2019-12-02 10:44:22 87

转载 致 Python 初学者

文章目录1. 前言2. 明确学习目标,不急于求成,不好高骛远3. 在开始学习 Python 之前,你需要做一些准备2.1 Python 的各种发行版2.2 安装 Python2.3 选择一款趁手的开发工具3. 习惯使用IDLE,这是学习python最好的方式4. 严格遵从编码规范5. 代码的运行、调试5. 模块管理5.1 同时安装了py2/py35.2 使用Anaconda...

2019-11-30 09:59:01 103

转载 Python十大装B语法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/xufive/article/details/102856921 Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Pytho...

2019-11-30 09:53:42 142

原创 Java 开发者最困惑的四件事

以下为译文:大概每个人在学生时代开始就使用Java了,我们一直在学习Java,但Java中总有一些概念含混不清,不论是对初级还是高级程序员都是如此。所以,这篇文章的目的就是弄清楚这些概念。读完本文你会对这些概念有更深入的了解,还能弄清楚一切灰色的东西。在本书中,我们将讨论匿名内联类、多线程、同步和序列化。匿名类的用法多线程同步的实现序列化匿名类Java匿名类...

2019-11-30 09:43:45 91

原创 初探SpringMVC,走进SpringMVC的世界

1.Springmvc入门1.1.Springmvc是什么SpringMVC是Spring中的一个组件,目前(2019)在互联网公司用的很多,是必需学习的一门框架技术!SpringMVC用于web层,相当于controller(等价于传统的servlet和struts的action,或者hendler),用来处理用户请求。举个例子,用户在地址栏输入http://网站域名/login,那么spr...

2019-11-29 10:18:21 211

原创 Spring系列最全 69 道 面试题和详解

1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。 2. 使用Spring框架的好处是什么? 轻量:Spring 是轻量的,基本的版本大约2MB控制反转:S...

2019-11-29 10:15:11 141 1

转载 Java面试官最爱问的volatile关键字

在Java的面试当中,面试官最爱问的就是volatile关键字相关的问题。经过多次面试之后,你是否思考过,为什么他们那么爱问volatile关键字相关的问题?而对于你,如果作为面试官,是否也会考虑采用volatile关键字作为切入点呢?为什么爱问volatile关键字爱问volatile关键字的面试官,大多数情况下都是有一定功底的,因为volatile作为切入点,往底层走可以切入Java内存...

2019-11-29 10:09:44 60

空空如也

空空如也

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

TA关注的人

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