自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

L

知易行难,未来等着我。

  • 博客(47)
  • 问答 (2)
  • 收藏
  • 关注

原创 Loki日志系统详解4——语法

Loki日志系统详解3——部署Loki提供了HTTP接口,我们这里就不详解了,大家可以看:https://github.com/grafana/loki/blob/master/docs/api.md我们这里说下查询的接口如何使用:第一步,获取当前Loki的元数据类型:curl http://192.168.25.30:30972/api/prom/label{ "values": ...

2019-09-06 16:48:22 12036 6

原创 Loki日志系统详解3——部署

Loki日志系统详解3——部署Loki的安装非常简单创建namespaceoc new-project loki权限设置 oc adm policy add-scc-to-user anyuid -z default -n loki oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:l...

2019-09-06 16:45:42 6383 1

原创 Loki日志系统详解2——架构

Loki日志系统详解2——架构整体架构Loki的架构如下:不难看出,Loki的架构非常简单,使用了和prometheus一样的标签来作为索引,也就是说,你通过这些标签既可以查询日志的内容也可以查询到监控的数据,不但减少了两种查询之间的切换成本,也极大地降低了日志索引的存储。Loki将使用与prometheus相同的服务发现和标签重新标记库,编写了pormtail, 在k8s中promta...

2019-09-06 11:24:24 8653 1

原创 Loki日志系统详解1——背景

Loki日志系统详解1——背景Loki日志系统详解1——背景最近,在对公司容器云的日志方案进行设计的时候,发现主流的ELK或者EFK比较重,再加上现阶段对于ES复杂的搜索功能很多都用不上最终选择了Grafana开源的Loki日志系统,下面介绍下Loki的背景。背景和动机当我们的容器云运行的应用或者某个节点出现问题了,解决思路应该如下:我们的监控使用的是基于prometheus体系进行...

2019-09-06 10:56:05 11261

原创 算法学习——动态规划

引言前几天,做一道关于,最长不重复字符串的leetcode的题,做完之后对于题目的速度不很满意,所以上网找了相关资料。找到了一种算法,作者自己说是用到了动态规划的算法。我也就顺便把动态规划相关的知识顺便给总结一下 。一.什么是动态规划关于什么是动态规划,引用和总结《算法导论》这本书里面说的,相对于分治法动态规划适用于子问题不是独立的情况,也就是说问题本身包含公共子问题的情况。如果用分治法我们就会做

2015-12-12 16:59:34 507

原创 毕业俩个月的总结---------------------写给自己

毕业两个月了,这两个月发生了很多故事。值得我去好好回味,原谅我是个不会讲故事的人。只能写些大概只有自己才能看得懂的文字来鞭策自己。生活还在继续,这两个月的工作和学习状态非常不好,甚至可以说是非常糟糕,无法静心学习,博客也没写了,学到的知识也没有总结,所以这段时间的进步不是很大。很大的原因是,自己心态的原因,有时候,有理想是间好事,当如果没有与之相符合的行动,到头来也只是一场空想而已吧。这是

2015-09-12 10:01:22 507 2

原创 第一章 Xen与kvm

关于两者的一些问题,我将会在接下来的时间,编写一些文章进行总结和学习的。在这里先立个杆先。

2015-09-12 09:22:29 434

原创 gdb常用命令

GDB常用命令调用gdb编译需要在cc后面加 -g参数再加-o;[root@redhat home]#gdb 调试文件:启动gdb(gdb) l :(字母l)从第一行开始列出源码(gdb) break n :在第n行处设置断点(gdb) break func:在函数func()的入口处设置断点(gdb) info break: 查看断点信息(

2014-10-11 17:04:27 1254

转载 valgrind的使用

调不尽的内存泄漏,用不完的ValgrindValgrind 安装1. 到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz22. 解压安装包:tar –jxvf valgrind-3.2.3.tar.bz23. 解压后生成目录valgrind-3.2.34. cd valgrind-3.2.35. 运行./autog

2014-09-23 09:41:14 436

转载 boost库的使用

1.Boost库的下载地址:http://sourceforge.net/projects/boost/files/boost/1.44.0/ 2.Boost库的编译,安装 下载boost_1_44_0.tar.gz    tar -zxvf boost_1_44_0.tar.gz  然后进入解压缩后的文件夹编译boost的编译器jam cd boost_1_44_0\to

2014-09-18 10:33:19 434

原创 整理自己认为能理解的面试题目解法

1.把二元查找树转变成排序的双向链表题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。10/ \6 14/ \ / \4 8 12 16转换成双向链表4=6=8=10=12=14=16。这个

2014-09-16 21:11:15 452

转载 xml解析器---TinyXML

读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。DOM模型即文档对象

2014-09-16 09:05:55 486

原创 UNIX网络编程:TCP

首先自然是我们的整体结构啦

2014-09-06 14:36:26 501

原创 UNIX网络编程:基础套接字编程

说到套接字编程,那么我就不得说我们的

2014-09-05 10:42:02 553

原创 UNIX网络编程总结:基础篇

在网络通信中客户—服务器这种模式可以说是

2014-09-04 16:10:37 1065

转载 Leetcode OJ : Max Points on a Line

这道题的最直接思路就是枚举所有的点

2014-09-03 00:59:42 502

原创 Leetcode OJ: Evaluate Reverse Polish Notation

Evaluate Reverse Polish Notation Total Accepted: 22356 Total Submissions: 112456My SubmissionsEvaluate the value of an arithmetic expression in Reverse Polish Notation.Valid operators

2014-09-03 00:42:57 437

转载 一些常见的面试笔试题

电话问题1:构造和析构函数中的虚函数调用;答案:虚函数可以在构造函数和析构函数中调用,但虚函数此时是静态绑定;而非动态绑定。电话问题2:C++中的异常可不可以是引用;答案:异常可以是引用,并且效率高。电话问题3:TCP状态中的close_wait是什么状态;答案:close_wait状态是被动关闭方的一个状态,此时是半关闭状态,被关闭

2014-09-02 12:05:07 457

原创 LeetCode OJ:Reverse Words in a String

Given an input string, reverse the string word by word.For example, Given s = " the sky is blue ", return " blue is sky the ".click to show clarification.Clarification:What constit

2014-09-01 23:37:34 544

原创 生活记录:从今天开始记录每天的学习和进步

2014/9/1:①今天拒绝了人生的第一份工作,

2014-09-01 22:53:02 663

原创 Linux程序设计:调试

本文主要介绍了几个比较有用的调试工具

2014-08-28 10:18:48 548

原创 Linux程序设计:源代码控制

主要介绍:RCSRCS

2014-08-26 21:42:31 760

原创 Linux程序设计:make和makefile

make和Makefile当我们编写的程序

2014-08-26 16:34:18 711

原创 Linux程序设计:入门

这一章主要讲了一些Linux的历史,和文本

2014-08-26 10:40:41 542

原创 Linux程序设计总结:前言

学习Linux编程也有一段时间,接下来会花一段时间来总结

2014-08-26 10:31:16 719 1

转载 【分治法】线性时间选择算法

线性时间选择问题:给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素,(这里给定的线性集是无序的)。       1、随机划分线性选择       线性时间选择随机划分法可以模仿随机化快速排序算法设计。基本思想是对输入数组进行递归划分,与快速排序不同的是,它只对划分出的子数组之一进行递归处理。       程序清单如下:

2014-08-11 12:23:20 3154

转载 各种排序算法的比较

1..稳定性比较插入排序、冒泡排序、二叉树排序、二路归并排序及其他线形排序是稳定的选择排序、希尔排序、快速排序、堆排序是不稳定的2.时间复杂性比较                  平均情况   最好情况   最坏情况归并排序    O(nlogn)    O(nlogn)    O(nlogn)基数排序    O(n)  O(n

2014-08-10 15:18:09 413

转载 STL map与Boost unordered_map

今天看到 boost::unordered_map, 它与 stl::map的区别就是,stl::map是按照operator<比较判断元素是否相同,以及比较元素的大小,然后选择合适的位置插入到树中。所以,如果对map进行遍历(中序遍历)的话,输出的结果是有序的。顺序就是按照operator< 定义的大小排序。而boost::unordered_map是计算元素的Hash值,根据Has

2014-08-01 17:04:31 375

原创 Linked List Cycle II

对于判断链表是否有环,方法很简单,用两个指针,一开始都指向头结点,一个是快指针,一次走两步,一个是慢指针,一次只走一步,当两个指针重合时表示存在环了。证明:假设链表有环,环的长度为N,慢指针在起始位置,快指针在位置k(位置从0开始计数),那么快指针只要比慢指针多走经过N-k步,就可以追上慢指针了。。。,因为每一次快指针都比慢指针多走一步,所以一定可以在有限的步数追上慢指针。

2014-08-01 12:09:31 398

原创 设计模式:备忘录模式

这个模式比较有意思:说白了就是定义

2014-07-25 11:43:43 492

原创 设计模式:策略模式

这个模式,是将一个个的算法封装成一个个的类,再用一个

2014-07-25 11:33:01 426

原创 设计模式:访问者模式

这个模式可以这么理解,假设有几种不同

2014-07-25 11:24:56 432

原创 设计模式:中介者模式

中介者模式,就像书里面说的很好理解,

2014-07-25 11:10:09 500

原创 设计模式:解释器模式

解释器模式,这个模式学过《》

2014-07-25 10:58:49 566

原创 设计模式:责职链模式

这个模式举个例子:你申请加薪:你递交了请求

2014-07-25 10:43:42 513

原创 设计模式:状态模式

这个模式主要是为了解决控制一个对象的转变的

2014-07-25 10:35:08 435

原创 设计模式:命令模式

命令模式:将一个请求封装为一个对象

2014-07-25 10:08:44 472

原创 设计模式:观察者模式

观察模式:在我看来就是定义一个类

2014-07-25 09:50:56 360

原创 设计模式:享元模式

共享

2014-07-24 17:00:51 469

原创 设计模式:外观模式

在《大话设计模式》中,对于外观模式,举的例子是:客户与基金公司之间的关系,对于客户来说,无须知道基金公司买了什么股票,只希望通过基金公司赚钱。

2014-07-24 16:28:16 411

空空如也

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

TA关注的人

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