<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[garmoo的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/garmoo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; garmoo]]></copyright><item><title><![CDATA[蚂蚁金服万级规模 K8s 集群管理系统设计--分享整理]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/102736386</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/102736386</guid><author>garmoo</author><pubDate>Wed, 30 Oct 2019 16:18:27 +0800</pubDate><description><![CDATA[Kubernetes 以其超前的设计理念和优秀的技术架构，在容器编排领域拔得头筹。越来越多的公司开始在生产环境部署实践 Kubernetes，在阿里巴巴和蚂蚁金服 Kubernetes 已被大规模用于生产环境。
Kubernetes 的出现使得广大开发同学也能运维复杂的分布式系统，它大幅降低了容器化应用部署的门槛，但运维和管理一个生产级的高可用 Kubernetes 集群仍十分困难。
今年双 11...]]></description><category></category></item><item><title><![CDATA[阿里超大规模商用 K8s 场景下，动态解决容器资源按需分配--分享整理]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/102494826</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/102494826</guid><author>garmoo</author><pubDate>Wed, 30 Oct 2019 16:18:14 +0800</pubDate><description><![CDATA[不知道大家有没有过这样的经历：当我们拥有了一套 Kubernetes 集群，然后开始部署应用的时候，我们应该给容器分配多少资源呢？
这很难说。由于 Kubernetes 自己的机制，我们可以理解容器的资源实质上是一个静态的配置。

如果我发现资源不足，为了分配给容器更多资源，我们需要重建 Pod；
如果分配冗余的资源，那么我们的 worker node 节点似乎又部署不了多少容器。

试问，我们能...]]></description><category></category></item><item><title><![CDATA[MySQL索引]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/102792918</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/102792918</guid><author>garmoo</author><pubDate>Tue, 29 Oct 2019 14:32:10 +0800</pubDate><description><![CDATA[MySQL主要索引类型
B-Tree索引
大多数的存储引擎使用的是B-Tree（从技术上来说是B+Tree）索引，B-Tree索引通常所有的值都是按顺序存储的，每个叶子到的根的距离相同。InnoDB使用的是B+Tree。
B-Tree索引使用可以以如下数据表为例进行分析：
CREATE TABLE product (
id int primary key auto_increment,
name ...]]></description><category></category></item><item><title><![CDATA[hibernate开发中的JsonMappingException异常]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/95315622</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/95315622</guid><author>garmoo</author><pubDate>Wed, 10 Jul 2019 11:13:12 +0800</pubDate><description><![CDATA[异常信息
nested exception is com.fasterxml.jackson.databind.JsonMappingException: failed to lazily initialize a collection of role…
hibernate查询数据时。例如springmvc，return返回对象jackson转json时，会抛出会抛出该异常。
一般是由于实体的属性...]]></description><category></category></item><item><title><![CDATA[云原生生态圈划分]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/95038333</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/95038333</guid><author>garmoo</author><pubDate>Mon, 08 Jul 2019 22:24:19 +0800</pubDate><description><![CDATA[云原生计算基金会（CNCF， Cloud Native Computing Foundation）将云原生生态圈划分为五层，包括应用定义与开发层、编排与治理层、运行时层、供应保障层及云设施层。
应用定义与开发层
应用定义与开发层包括数据库与数据分析、流式处理、软件配置管理、应用定义、持续集成/持续交付等几个方面。
数据库与数据分析
包括数据库与大数据分析工具，涉及关系型数据库、NoSQL、NewS...]]></description><category></category></item><item><title><![CDATA[栈式自编码在深度学习中的意义]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/90762728</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/90762728</guid><author>garmoo</author><pubDate>Tue, 04 Jun 2019 09:10:05 +0800</pubDate><description><![CDATA[1.每一层都可以单独训练，保证降维特征的可控性。
2.对于高维度的分类问题，因为节点太多，参数太多，一味地增加深度只会使结果越来越不可控，成为彻底的黑盒，而使用栈式自编码逐层降维，可以将复杂问题简单化，更容易完成任务。
3.任意深层，理论上是越深层的神经网络对现实的拟合度越高，但是传统的多层神经网络，由于使用的是误差反向传播方式，导致层越深，传播的误差越小。栈式自编码巧妙地绕过这个问题，直接使用降...]]></description><category></category></item><item><title><![CDATA[使用Anaconda在Windows下运行TensorFlow代码可能产生多套变量问题]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/90756192</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/90756192</guid><author>garmoo</author><pubDate>Mon, 03 Jun 2019 17:54:59 +0800</pubDate><description><![CDATA[在Anaconda中的py程序默认都是在同一个图中运行的，除非关掉Anaconda，否则两次运行同一个py代码时，这两次的代码是在同一个图中。在定义变量时，在同一个图中，同一句代码tf.Variable所生成的变量是不同的名字。
# 权重
weights = {
'h1': tf.Variable(tf.random_normal([n_input, n_hidden_1])),
……
print...]]></description><category></category></item><item><title><![CDATA[RNN语音分类-普通话广东话分类]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/88095192</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/88095192</guid><author>garmoo</author><pubDate>Sun, 03 Mar 2019 23:10:07 +0800</pubDate><description><![CDATA[利用循环神经网络，基于梅尔频率倒谱系数（MFCC）的语音信号处理技术来进行语音分类，由于只有两个分类，学习难度不算大，相对运算也不算大，一般3个小时内可以训练出不错的模型。对语音分类后可以将语音传给百度不同类别的语音识别翻译出对应的文字。
收集数据及整理
本训练的数据可以通过收音机类的app获取普通话和广东话的语音资料。训练需要wav格式的单声道的语音，每个语音数据的时间长度可以选择5s、10s、...]]></description><category></category></item><item><title><![CDATA[笔记-linux系统磁盘分析]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/87918251</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/87918251</guid><author>garmoo</author><pubDate>Mon, 25 Feb 2019 17:42:26 +0800</pubDate><description><![CDATA[基本概念
IOPS
每秒的读写次数
磁盘io响应时间
是从io请求到结束的时间，包括等待时间和服务时间
服务时间和等待时间
服务时间：io得到主动处理的时间，不包括在队列等待的时间；
等待时间：io在队列等待服务的时间。
延时离群点
非同寻常的高延时磁盘io
非数据磁盘传输命令
除了读写io命令，其他的非数据传输命令，如有缓存的磁盘把缓存写入磁盘。
磁盘使用率和饱和度
使用率：某段时间内磁盘运行工...]]></description><category></category></item><item><title><![CDATA[笔记-linux文件系统分析]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/87864514</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/87864514</guid><author>garmoo</author><pubDate>Fri, 22 Feb 2019 11:52:53 +0800</pubDate><description><![CDATA[分析工具
strace
可以测试文件系统延迟，包括系统调用接口的调试。该调试器会影响性能。
# strace -ttT -p 643
strace: Process 643 attached
04:23:07.342886 restart_syscall(&amp;amp;lt;... resuming interrupted poll ...&amp;amp;gt;) = 0 &amp;amp;lt;0.044331&amp;amp;gt;
04:23:07...]]></description><category></category></item><item><title><![CDATA[笔记-linux系统内存分析]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/87772607</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/87772607</guid><author>garmoo</author><pubDate>Wed, 20 Feb 2019 14:40:04 +0800</pubDate><description><![CDATA[vmstat
$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 325752 ...]]></description><category></category></item><item><title><![CDATA[笔记-linux系统CPU分析]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/87624668</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/87624668</guid><author>garmoo</author><pubDate>Mon, 18 Feb 2019 17:28:36 +0800</pubDate><description><![CDATA[CPU分析工具
uptime
分析系统平均负载
$ uptime
 11:51:24 up 26 days, 18:09,  3 users,  load average: 1.61, 0.66, 0.43


分别统计1/5/15分钟内的平均负载。通过这三个数字可以判断15分钟内负载是上升还是下降还是平稳。平均负载大于CPU数量表示CPU不足以服务线程。
linux把不可中断状态执行磁盘IO的任...]]></description><category></category></item><item><title><![CDATA[CNN迁移学习]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/86489371</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/86489371</guid><author>garmoo</author><pubDate>Tue, 15 Jan 2019 11:14:54 +0800</pubDate><description><![CDATA[迁移学习
迁移学习就是将一个问题上训练好的模型通过简单的调整使其适用于一个新的问题。
由于大型网络很复杂，训练一个复杂的卷积神经网络需要非常多的标注数据，而且需要比较长的时间。迁移学习就是为了解决大量标注数据和训练时间问题的一种变通处理方式。
在数据量足够的情况下，迁移学习的效果不如完全重新训练。但是迁移学习所需要的训练时间和训练样本数要远远小于训练完整的模型。而且可以得到不错的准确率。
下面利用...]]></description><category></category></item><item><title><![CDATA[docker基本安装及问题整理]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/86480427</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/86480427</guid><author>garmoo</author><pubDate>Mon, 14 Jan 2019 17:46:20 +0800</pubDate><description><![CDATA[docker基本安装
yum安装

卸载老版本的Docker
在CentOS中，老版本Docker名称是docker 或docker-engine ，而Docker CE的软件包名称是docker-ce 。因此，如已安装过老版本的Docker，需使用如下命令卸载。

sudo yum remove docker \
                  docker-common \
       ...]]></description><category></category></item><item><title><![CDATA[Nginx基本安装及配置整理]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/86477021</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/86477021</guid><author>garmoo</author><pubDate>Mon, 14 Jan 2019 16:41:47 +0800</pubDate><description><![CDATA[基本安装
安装Nginx需要先安装pcre、zlib，如果需要ssl功能还需要安装openssl
一般需要先装pcre, zlib，前者为了重写rewrite，后者为了gzip压缩。
创建nginx用户
假设源码目录：/home/nginx/src/
安装PCRE库
安装命令：
cd /home/nginx/src/
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.37
...]]></description><category></category></item><item><title><![CDATA[CNN卷积神经网络]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/86086716</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/86086716</guid><author>garmoo</author><pubDate>Thu, 10 Jan 2019 15:26:05 +0800</pubDate><description><![CDATA[tf.nn.conv2d介绍
tf.nn.conv2d是TensorFlow里面实现卷积的函数，函数定义：
tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None)



第一个参数input：指需要做卷积的输入图像，它要求是一个Tensor，具有[batch, in_height, in_wid...]]></description><category></category></item><item><title><![CDATA[tf损失函数相关内容]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/86214975</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/86214975</guid><author>garmoo</author><pubDate>Thu, 10 Jan 2019 14:44:11 +0800</pubDate><description><![CDATA[tf.losses 模块
tf.losses 模块实际是对tf.nn.下面的loss函数的高级封装。
tf.losses 模块官方的api：官网API
此模块下主要的Functions
absolute_difference(): 为训练过程添加一个“绝对差异”loss，其实就是做差后取绝对值作为loss。
add_loss(): 为loss集合添加额外定义的loss。
compute_weigh...]]></description><category></category></item><item><title><![CDATA[自然语言处理]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/84860038</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/84860038</guid><author>garmoo</author><pubDate>Mon, 07 Jan 2019 17:06:30 +0800</pubDate><description><![CDATA[语言模型的评价方法
perplexity 复杂度：在一个测试集上得到的perplexity越低，说明建模的效果越好。
average branching factor 平均分支系数：模型预测下一个词时的平均可选择数量
log perplexity可以视为 Cross Entropy
TensorFlow提供了以下两个计算交叉熵的函数：
tf.nn.softmax_cross_entropy_wit...]]></description><category></category></item><item><title><![CDATA[循环神经网络]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/84838417</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/84838417</guid><author>garmoo</author><pubDate>Wed, 05 Dec 2018 17:09:24 +0800</pubDate><description><![CDATA[循环神经网络的主要用途是处理和预测序列数据。
RNN：recurrent neural network:循环神经网络

循环神经网络的主体结构A 的输入除了来自输入层xtx_txt​，还有一个循环的边来提供上一时刻的隐藏状态（ hidden state) ht−1h_{t-1}ht−1​ 。在每一个时刻，循环神经网络的模块A 在读取了xtx_txt​ 和ht−1h_{t-1}ht−1​之后会生成新...]]></description><category></category></item><item><title><![CDATA[linux实用小工具]]></title><link>https://blog.youkuaiyun.com/garmoo/article/details/84495002</link><guid>https://blog.youkuaiyun.com/garmoo/article/details/84495002</guid><author>garmoo</author><pubDate>Sun, 25 Nov 2018 16:13:28 +0800</pubDate><description><![CDATA[网络转包工具tcpdump
centOS下安装yum install tcpdump
抓取8080端口的包
tcpdump port 8080
网络状态监控工具SS（socket statistics）
centos系统下，SS指令为系统自带，无需安装。
监听udp所有端口
ss -uln
参考：https://blog.youkuaiyun.com/yuwen_dai/article/details/784...]]></description><category></category></item></channel></rss>