摘要:SSO (Single Sign On) 什么是单点登录: 在大型的互联网公司中会有多个系统, 多个项目, 虽然这些项目都属于同一家公司, 但是项目本身其实都是独立的, 那多个系统可不可以实现共享同一份用户认证数据呢? SSO单点登录就是做这件事, 各个项目之间彼此相互信任, 在其中任意一个系统中进 阅读全文
posted @ 2019-12-06 20:31 赐我白日梦 阅读 (435) 评论 (0) 编辑
摘要:安装 docker的安装最好需要centos内核版本在3.1及以上 查看系统内核版本 安装依赖 添加yum源 更新yum源 安装docker 配置镜像加速 使用阿里云的镜像加速服务 http://cr.console.aliyun.com/cn hangzhou/instances/mirrors 阅读全文
posted @ 2019-12-04 21:30 赐我白日梦 阅读 (286) 评论 (0) 编辑
摘要:WhyApacheThrift 因为最近在项目中需要集成进来一个Python编写的机器学习算法,但是我的后端主要使用的是SpringCloud技术栈. 于是面临着异构语言之间的通信实现方式的抉择. 因为业务逻辑是这样的 主要就是实现2 3这部分请求响应, 实现的方式挺多的, 只要有能力甚至将py封装 阅读全文
posted @ 2019-12-03 14:42 赐我白日梦 阅读 (199) 评论 (0) 编辑
摘要:Google Protobuf Why Protobuf protobuf它是Google提供的一个技术, 一个类库, 也可以说是一套规范, 学java的人都知道java有自己的序列化机制, 对不同的java程序来说,他们可以使用同一种序列化机制进行数据的传递, 但是java的序列化机制并不适用于其 阅读全文
posted @ 2019-12-02 19:30 赐我白日梦 阅读 (139) 评论 (0) 编辑
摘要:安装 登录 配置 进入容器中查看密码是多少 根据上图的提示进入到指定的目录,查看密码是啥 继续访问, 修改密码 修改私服的中央仓库位置,如果嫌国外的站点太慢了, 我们就将其修改成阿里云,修改方式就是替换一下链接就ok 创建hosted类型的仓库 选择创建的仓库类型是hosted类型,为什么非得选择这 阅读全文
posted @ 2019-11-27 22:01 赐我白日梦 阅读 (264) 评论 (0) 编辑
摘要:JMM与问题引入 为啥先说JMM,因为CAS的实现类中维护的变量都被volatile修饰, 这个volatile 是遵循JMM规范(不是百分百遵循,下文会说)实现的保证多线程并发访问某个变量实现线程安全的手段 一连串的知识点慢慢缕 首先说什么是JMM, JMM就是大家所说的java的内存模型, 它是 阅读全文
posted @ 2019-11-26 23:08 赐我白日梦 阅读 (129) 评论 (0) 编辑
摘要:Why 红黑树 为什么大家都这么推崇红黑树呢? 这就是数据结构的魅力!!! 下面我简述一下常用数据结构的优缺点 数组 大家对数组很熟悉, 都知道对数组来说,它底层的存储空间是连续的,因此如果我们根据index去获取元素,速度是相当快, 但是对于数组来说有时候查询也不见得就一定块, 比如我们查询数组中 阅读全文
posted @ 2019-11-23 16:38 赐我白日梦 阅读 (176) 评论 (2) 编辑
摘要:MyISAM引擎的B+Tree的索引 通过上图可以直接的看出, 在MyISAM对B+树的运用中明显的特点如下: 所有的非叶子节点中存储的全部是索引信息 在叶子节点中存储的 value值其实是 数据库中某行数据的index MyISAM引擎 索引文件的查看: 在 /var/lib/mysql目录中 . 阅读全文
posted @ 2019-11-21 22:44 赐我白日梦 阅读 (240) 评论 (0) 编辑
摘要:[TOC] 在说B树之前最好先看看2 3树, 2 3树是B树的一种特例, 什么B树, B树就是2 3树, 2 3 4 树 , 2 3 4 5... 树的统称, 而B+树又是B树的一种变形 性质: 什么是二节点, 三节点... ? 像上图那样,可以有两个子节点的节点叫做二节点, 可以有三个子节点的节点 阅读全文
posted @ 2019-11-21 13:17 赐我白日梦 阅读 (183) 评论 (0) 编辑
摘要:why 树形结构 顺序存储 顺序存储的特点是各个存储单位在逻辑和物理内存上都是相邻的,典型的就是代表就是数组,物理地址相邻因此我们可以通过下标很快的检索出一个元素 我们想往数组中添加一个元素最快的方式就是往它的尾部添加.如果往头部添加元素的话,效率就很低,因为需要将从第一个元素开始依次往后移动一位, 阅读全文
posted @ 2019-11-19 18:06 赐我白日梦 阅读 (198) 评论 (0) 编辑
摘要:这篇博文所 列举的优化手段是针对比较传统项目 ,但是想提高系统的吞吐量现在时髦的技术还是那些前后端未分离, 使用nginx当成静态资源服务器去代理我们的静态资源 是谁限制了Throughput? 当我们对一个传统的项目进行压力测试时,很容器就发现,系统的Throughput被数据库(mysql)限制 阅读全文
posted @ 2019-11-16 16:04 赐我白日梦 阅读 (3016) 评论 (10) 编辑
摘要:相关概念 RT(response time) 什么是RT? RT就是指系统在接收到请求和做出相应这段时间跨度 但是值得一提的是RT的值越高,并不真的就能说明我们的系统的吞吐量就很高, 比如说,如果存在数据在网络中传输时出现了丢包的现象,传输的数据少了,速度就会增加, 但是这是事故,不是说我们的系统吞 阅读全文
posted @ 2019-11-15 10:51 赐我白日梦 阅读 (351) 评论 (0) 编辑
摘要:什么是算法的稳定性? 简单的说就是一组数经过某个排序算法后仍然能保持他们在排序之前的相对次序就说这个排序方法是稳定的, 比如说,a1,a2,a3,a4四个数, 其中a2=a3,如果经过排序算法后的结果是 a1,a3,a2,a4我们就说这个算法是非稳定的,如果还是原来的顺序a1,a2,a3,a4,我们 阅读全文
posted @ 2019-11-11 10:37 赐我白日梦 阅读 (145) 评论 (4) 编辑
摘要:这个小项目是我读过一点Spring的源码后,模仿Spring的IOC写的一个简易的IOC,当然Spring的在天上,我写的在马里亚纳海沟,哈哈 感兴趣的小伙伴可以去我的github拉取代码看着玩 地址: http://github.com/zhuchangwu/CIOC "点击查看源码" 项目中有 阅读全文
posted @ 2019-11-10 15:36 赐我白日梦 阅读 (143) 评论 (0) 编辑
摘要:[TOC]  mapping root object mapping json中包含了诸如 ,`matadata(_id,_source,_type) settings(analyzer)`已经其他的settings mate field 元数据字段 _all 当我们往ES中插入一条documen 阅读全文
posted @ 2019-11-08 19:40 赐我白日梦 阅读 (247) 评论 (0) 编辑
摘要:计算机的运算方法 无符号数 计算机中的数存放在寄存器中,通常将寄存器的位数称为机器字长, 大家说的无符号数其实就是不区分正负号的数,换句话说,就是没负数,全是正数,大家知道,计算机中的数是以0 1存储的, 假如我们的寄存器16位, 无符号数表示的范围就是0~65535 (2^64=65536), 有 阅读全文
posted @ 2019-11-05 22:34 赐我白日梦 阅读 (156) 评论 (3) 编辑
摘要:极力推荐: 官网地址: http://www.elastic.co/guide/en/elasticsearch/reference/6.0 肺腑之言,学ES先学原生的语法,SpringData封装的是太好用了,但是没玩过原生的语法,可能不知道Spring提供的API在干什么 核心概念: Near 阅读全文
posted @ 2019-11-04 18:27 赐我白日梦 阅读 (1953) 评论 (18) 编辑
摘要:源码入口 上篇博文中我们看到了将Spring环境中的 BeanPostProcessor找出来,添加到BeanFactory中的beanPostProcessors中,统一维护,本片博文继续往下拓展,看下Spring如何实例化bean,以及如何实现在bean的实例化通过各种各样的后置处理器完成bea 阅读全文
posted @ 2019-10-28 22:20 赐我白日梦 阅读 (215) 评论 (1) 编辑
摘要:承接上篇博客, 本文探究MyBatis中的Executor, 如下图: 是Executor体系图 本片博客的目的就是探究如上图中从顶级接口Executor中拓展出来的各个子执行器的功能,以及进一步了解Mybatis的一级缓存和二级缓存 预览: BaseExecutor :实现了Executor的全部 阅读全文
posted @ 2019-10-26 21:10 赐我白日梦 阅读 (172) 评论 (2) 编辑
摘要:环境简介与入口 记录一下尝试阅读Mybatis源码的过程,这篇笔记是我一边读,一遍记录下来的,虽然内容也不多,对Mybatis整体的架构体系也没有摸的很清楚,起码也能把这个过程整理下来,这也是我比较喜欢的一种学习方式吧 单独Mybatis框架搭建的环境,没有和其他框架整合 入口点的源码如下: 构建S 阅读全文
posted @ 2019-10-25 22:12 赐我白日梦 阅读 (179) 评论 (0) 编辑
摘要:这一遍看Mybatis的原因是怀念一下去年的 10月24号我写自己第一个项目时使用全配置文件版本的MyBatis,那时我们三个人刚刚大二,说实话,当时还是觉得MyBatis挺难玩的,但是今年再看最新版的Mybatis3.5.0, 还是挺有感觉的 Mybatis的官网一级棒... Mybatis的核心 阅读全文
posted @ 2019-10-24 19:33 赐我白日梦 阅读 (239) 评论 (3) 编辑
摘要:彻底搞懂 HandlerMapping和HandlerAdapter 知识点的回顾: 当Tomcat接收到请求后会回调Servlet的service方法,一开始入门Servlet时,我们会让自己的Servlet去实现HttpServlet接口,重写它的 和`doPost()`方法 在SpringMv 阅读全文
posted @ 2019-10-22 22:33 赐我白日梦 阅读 (192) 评论 (0) 编辑
摘要:什么是Serlvet ? 全称 server applet 运行在服务端的小程序: 首先来说,这个servlet是java语言编写的出来的应用程序,换句话说servlet拥有java语言全部的优点,比如跨越平台,一次编译到处运行 其次: 相对于CGI(common gateway interface 阅读全文
posted @ 2019-10-21 12:57 赐我白日梦 阅读 (234) 评论 (0) 编辑
摘要:回顾上一篇博客中,在 这个抽象类中,Spring使用 执行 ,通过回调Spring自己添加的 以及用户添加的bean工厂的后置处理器,完成了 包扫描 以及 对主配置类代理 的工作 本篇博文将继续往下跟进 程序入口:注册bean的后置处理器 的`registerBeanPostProcessors(b 阅读全文
posted @ 2019-10-18 17:45 赐我白日梦 阅读 (123) 评论 (0) 编辑
摘要:程序入口: 接着上一篇博客中看完了在 的构造函数中的 将我们传递进来的主配置类添加进了 , 本片博客继续跟进 看看Spring如何继续初始化Spring的环境 跟进 , 源码如下: 主要做了如下几件工作 刷新的预准备 比如: 设置时间的锚点,加载上下文环境变量 获取BeanFactory 执行所有的 阅读全文
posted @ 2019-10-15 21:19 赐我白日梦 阅读 (169) 评论 (0) 编辑