<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[渔潭的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/uftjtt</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; uftjtt]]></copyright><item><title><![CDATA[年轻人的第一个APM-Skywalking]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/86302749</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/86302749</guid><author>uftjtt</author><pubDate>Fri, 11 Jan 2019 15:24:29 +0800</pubDate><description><![CDATA[前言什么是APM?全称:Application Performance Management可以参考这里:现代APM体系，基本都是参考Google的Dapper（大规模分布式系统的跟踪系统）的体系来做的。通过跟踪请求的处理过程，来对应用系统在前后端处理、服务端调用的性能消耗进行跟踪，关于Dapper的介绍可以看这个链接：Dapper，大规模分布式系统的跟踪系统 by bigbully
作者：刀把五...]]></description><category></category></item><item><title><![CDATA[升级内核后如何删除旧内核]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/86299870</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/86299870</guid><author>uftjtt</author><pubDate>Fri, 11 Jan 2019 14:10:31 +0800</pubDate><description><![CDATA[在升级新的内核后，如何删除旧的内核文件？
举例来说，假设我们刚刚运行了 apt-get dist-upgrade 升级到了仓库中最新的内核版本（如从 3.2.0-30 升级到了 3.2.0-34）
Default
$ sudo apt-get dist-upgrade
Reading package lists… Done
Building dependency tree
Reading stat...]]></description><category></category></item><item><title><![CDATA[更新linux内核方法]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/86299840</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/86299840</guid><author>uftjtt</author><pubDate>Fri, 11 Jan 2019 14:09:03 +0800</pubDate><description><![CDATA[背景：买了块网件的A6210无线网卡，用的是mt7612u芯片，插到deepin下不能识别，ubuntu 18.04下同样不能识别，查过内核版本号，用的都是4.15的内核，去Github查了Linux内核仓库，确认4.15内核里没有mt7612u的驱动，Github上有几个其他的驱动试了试居然会编译出错，后来我查到OpenWRT的mt76驱动是支持mt7612u的，而且这个驱动在4.19的时候就被...]]></description><category></category></item><item><title><![CDATA[企业最大的危机，永远来在于内部]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/81119371</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/81119371</guid><author>uftjtt</author><pubDate>Thu, 19 Jul 2018 17:22:00 +0800</pubDate><description><![CDATA[员工缺乏危机感，不能用主人公心态来看待公司发展，常常是管理者痛心疾首的一件事情。其实，危机意识的关键是高管团队，基层员工更需要有安全感。

如果基层一直没有危机意识，那么他们就做不好本职工作，甚至影响工作的品质和成本。反过来，如果基层有危机感，而高层没有，后果更可怕。

不管企业处于什么样的环境，在组织维度上，它始终面临着两大挑战：

1、组织能不能适应不断变化的外部环境？

2、组织内部能不能保...]]></description><category></category></item><item><title><![CDATA[一文说尽 MySQL 优化原理]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80769172</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80769172</guid><author>uftjtt</author><pubDate>Fri, 22 Jun 2018 09:54:49 +0800</pubDate><description><![CDATA[
  作者：CHEN川 
  来自：https://www.jianshu.com/p/d7665192aaaf 
  说起MySQL的查询优化，相信大家收藏了一堆奇技淫巧：不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧？是否理解其背后的工作原理？在实际场景下性能真有提升吗？我想未必。因而理解这些优化建议背后的原理就尤为重要，...]]></description><category></category></item><item><title><![CDATA[Java NIO浅析]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80651787</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80651787</guid><author>uftjtt</author><pubDate>Mon, 11 Jun 2018 15:06:33 +0800</pubDate><description><![CDATA[NIO（Non-blocking I/O，在Java领域，也称为New I/O），是一种同步非阻塞的I/O模型，也是I/O多路复用的基础，已经被越来越多地应用到大型应用服务器，成为解决高并发与大量连接、I/O处理问题的有效方式。 
那么NIO的本质是什么样的呢？它是怎样与事件模型结合来解放线程、提高系统吞吐的呢？ 
本文会从传统的阻塞I/O和线程池模型面临的问题讲起，然后对比几种常见I/O模型，一...]]></description><category></category></item><item><title><![CDATA[Spring：源码解读Spring IOC原理]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80647848</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80647848</guid><author>uftjtt</author><pubDate>Mon, 11 Jun 2018 11:20:09 +0800</pubDate><description><![CDATA[一、什么是Ioc/DI？

IoC 容器：最主要是完成了完成对象的创建和依赖的管理注入等等。 
先从我们自己设计这样一个视角来考虑： 
所谓控制反转，就是把原先我们代码里面需要实现的对象创建、依赖的代码，反转给容器来帮忙实现。那么必然的我们需要创建一个容器，同时需要一种描述来让容器知道需要创建的对象与对象的关系。这个描述最具体表现就是我们可配置的文件。 
对象和对象关系怎么表示？可以用 xml ，...]]></description><category></category></item><item><title><![CDATA[JUC系列-Executor框架]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80600697</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80600697</guid><author>uftjtt</author><pubDate>Wed, 06 Jun 2018 20:41:31 +0800</pubDate><description><![CDATA[1. 什么是线程池

线程池：管理一组工作线程的资源池。

2. 为什么使用线程池


  1.避免反复创建回收线程，降低资源消耗。 
  2.提供线程的可管理性。 
  3.提高响应速度


3. 如何创建线程池

ThreadPoolExecutor是jdk提供的线程池的服务类，基于ThreadPoolExecutor可以很容易将一个实现Runnable接口的任务放入线程池中执行，下面是Thr...]]></description><category></category></item><item><title><![CDATA[netty源码分析之nio线程个数以及线程命名规则]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80596445</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80596445</guid><author>uftjtt</author><pubDate>Wed, 06 Jun 2018 16:31:08 +0800</pubDate><description><![CDATA[概述

netty是一个以高性能著称的网络通信框架，许多开源项目都使用了netty作为底层网络通信框架，如avro，dubbo，nats；本文将从源码的角度讲述netty在确定线程个数方面如何保证应用程序性能最优，源码基于netty-4.1.6.Final

线程个数在何时达到最优

我们知道，在一个应用中，如果cpu计算的时间为Tcpu，io操作的时间为Tio，系统的cpu核数为Ncpu，线程个...]]></description><category></category></item><item><title><![CDATA[MySQL索引背后的数据结构及算法原理]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80594208</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80594208</guid><author>uftjtt</author><pubDate>Wed, 06 Jun 2018 15:51:05 +0800</pubDate><description><![CDATA[
  来自：CodingLabs ，作者：张洋 ，微博@敲代码的张洋 
  https://www.itcodemonkey.com/article/4034.html


摘要

本文以MySQL数据库为研究对象，讨论与数据库索引相关的一些话题。特别需要说明的是，MySQL支持诸多存储引擎，而各种存储引擎对索引的支持也各不相同，因此MySQL数据库支持多种索引类型，如BTree索引，哈希索引，全...]]></description><category></category></item><item><title><![CDATA[netty源码分析之服务端启动全解析]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80590194</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80590194</guid><author>uftjtt</author><pubDate>Wed, 06 Jun 2018 11:32:37 +0800</pubDate><description><![CDATA[
  作者：简书闪电侠 
  链接：https://www.jianshu.com/p/c5068caab217 
  來源：简书 
  著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。


1. background

netty 是一个异步事件驱动的网络通信层框架，其官方文档的解释为


  Netty is a NIO client server framework wh...]]></description><category></category></item><item><title><![CDATA[JS中的八种常用的跨域方式及其具体示例的总结]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80576900</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80576900</guid><author>uftjtt</author><pubDate>Tue, 05 Jun 2018 10:08:44 +0800</pubDate><description><![CDATA[JS中的八种常用的跨域方式及其具体示例的总结


  这里说的js跨域是指通过js在不同的域之间进行数据传输或通信，比如用ajax向一个不同的域请求数据，或者通过js获取页面中不同域的框架中(iframe)的数据。  
  跨域问题是由于javascript语言安全限制中的同源策略造成的。  
  简单来说,同源策略是指一段脚本只能读取来自同一来源的窗口和文档的属性,这里的同一来源指的是域名、协议...]]></description><category></category></item><item><title><![CDATA[分布式环境Raft一致性共识算法解读]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80567334</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80567334</guid><author>uftjtt</author><pubDate>Mon, 04 Jun 2018 15:16:11 +0800</pubDate><description><![CDATA[Raft是分布式环境下的一致性算法，它通过少数服从多数的选举来维持集群内数据的一致性。它与RBFT算法名称有点像，然而Raft算法里不能存在拜占庭节点，而RBFT则能容忍BFT节点的存在。Raft非常类似于paxos协议（参见我的这篇文章《paxos算法如何容错的–讲述五虎将的实践》），然而它比paxos协议好理解许多（因为paxos协议难以具体实现，所以zookeeper参考paxos实现了它自...]]></description><category></category></item><item><title><![CDATA[paxos算法如何容错的--讲述五虎将的实践]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80566921</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80566921</guid><author>uftjtt</author><pubDate>Mon, 04 Jun 2018 14:46:41 +0800</pubDate><description><![CDATA[（本文包括章节：1、由来，2、算法简单回顾，3、演习道具，4、演习，5、算法提出者Leslie的八卦。hoho）

1. 由来

刘备接受了诸葛亮的提议，决定将paxos算法的思想应用到蜀帝国的决策机制上。然而，玄德生性谨慎，决定先行试点，实践下可行性。孔明提议，由蜀国五大肌肉男：关羽、张飞、赵云、马超、黄忠，做为决策者，而廖化、周仓、魏延分别无序的提出关于同一件事的水火不容的三个提案，孔明坚信：...]]></description><category></category></item><item><title><![CDATA[paxos分布式一致性算法--讲述诸葛亮的反穿越]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80566755</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80566755</guid><author>uftjtt</author><pubDate>Mon, 04 Jun 2018 14:30:51 +0800</pubDate><description><![CDATA[1. 引子

一日，诸葛亮找到刘备，突然献上一曲《独角戏》，而后放声大哭。刘备正沉醉于新曲，暗叹孔明大才，竟作得如此不凡仙乐，看到孔明忽而大悲，慌问：“水，何事悲恸？” 
诸葛亮止住抽泣：“亮自主公三顾茅庐出山以来，蒙主公厚爱，自比如鱼得水，敢不尽力？然每日击鼓升帐，皆亮一人在上唱独角戏，众将在下唯唯诺诺，只是照亮的安排做事。如此下去，亮日后定会被司马懿那厮累死呀。” 
刘备眨着充满问号的大眼睛：...]]></description><category></category></item><item><title><![CDATA[浅析线性递归和尾递归]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80520148</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80520148</guid><author>uftjtt</author><pubDate>Thu, 31 May 2018 10:18:42 +0800</pubDate><description><![CDATA[1. 定义

线性递归：也即是普通递归，单向递归，线性递归函数的最后一步操作不是递归操作，而是其他的操作。当数据量很大的时候，会造成栈溢出，这是因为，在每次递归调用时，递归函数中的参数，局部变量等都要保存在栈中，如果数据量很大的话，便可能会溢出。 
尾递归：也即是线性迭代，尾递归函数的最后一步操作是递归，也即在进行递归之前，把全部的操作先执行完，这样的好处是，不用花费大量的栈空间来保存上次递归中的...]]></description><category></category></item><item><title><![CDATA[Java 9和Spring Boot 2.0纷纷宣布支持的HTTP/2到底是什么？]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80519013</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80519013</guid><author>uftjtt</author><pubDate>Thu, 31 May 2018 09:23:13 +0800</pubDate><description><![CDATA[关于HTTP/2，最近你可能没少听到过他。首先，如果你了解过Java 9的特性，那么你会发现在Java9中，提供了新的方式来处理HTTP调用，提供了新的HTTP Client，将替代HttpURLConnection，并提供对WebSocket和HTTP/2的支持。还有前两天刚刚发布的Spring Boot 2.0 的新特性中，也会看到，Spring Boot 2.0支持的Web容器中Tomcat...]]></description><category></category></item><item><title><![CDATA[深入理解HTTP协议]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80507662</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80507662</guid><author>uftjtt</author><pubDate>Wed, 30 May 2018 11:26:23 +0800</pubDate><description><![CDATA[1. 基础概念篇



1.1 介绍

客户端连上web服务器后，若想获得web服务器中的某个web资源，需遵守一定的通讯格式，HTTP协议用于定义客户端与web服务器通迅的格式 
WEB浏览器与WEB服务器之间的一问一答的交互过程必须遵循一定的规则，这个规则就是HTTP协议。 
HTTP是Hyper Text Transfer Protocol（超文本传输协议）的缩写。它的发展是万维网协会（Wo...]]></description><category></category></item><item><title><![CDATA[深入分析ThreadLocal]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80488061</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80488061</guid><author>uftjtt</author><pubDate>Mon, 28 May 2018 20:20:16 +0800</pubDate><description><![CDATA[1. ThreadLoacal是什么？

ThreadLocal是啥？以前面试别人时就喜欢问这个，有些伙伴喜欢把它和线程同步机制混为一谈，事实上ThreadLocal与线程同步无关。ThreadLocal虽然提供了一种解决多线程环境下成员变量的问题，但是它并不是解决多线程共享变量的问题。那么ThreadLocal到底是什么呢？ 
API是这样介绍它的：This class provides thr...]]></description><category></category></item><item><title><![CDATA[Redis内存模型]]></title><link>https://blog.youkuaiyun.com/uftjtt/article/details/80487053</link><guid>https://blog.youkuaiyun.com/uftjtt/article/details/80487053</guid><author>uftjtt</author><pubDate>Mon, 28 May 2018 19:52:18 +0800</pubDate><description><![CDATA[1. 前言

Redis是目前最火爆的内存数据库之一，通过在内存中读写数据，大大提高了读写速度，可以说Redis是实现网站高并发不可或缺的一部分。 
我们使用Redis时，会接触Redis的5种对象类型（字符串、哈希、列表、集合、有序集合），丰富的类型是Redis相对于Memcached等的一大优势。在了解Redis的5种对象类型的用法和特点的基础上，进一步了解Redis的内存模型，对Redis的...]]></description><category></category></item></channel></rss>