Github Pages的Jekyll 集成 简单文章搜索

by:ksh

在用Github Pages + Jekyll-Bootstrap(JB) 搭建博客的过程中, 发现虽然在 JB 的导航栏上有一个搜索框,但是这个搜索框实际上是装样子的,根本没有实际作用 不过能够搜索博客中的文章也是一个挺有用的功能,所以还想实现这个功能的 查找解决方案后发现,jekyll本身虽然有几个做搜索的plugin,但是因为 github pages限制了plugin的使用,所以这些利用部分后端的搜索都不能使用,只能依靠纯前端做文章搜索。

后来找到了这个库基本符合需求: https://github.com/christian-fei/Simple-Jekyll-Search 于是基于这个库做了一些修改实现了这个功能

前端学习 路线图

by:ksh

前言

前端要学习三个部分:HTML,CSS,JavaScript(JS).

先说一些文档手册, 在学习过程中 要通过多看文档 来了解细节 MDN文档手册 (MDN是mozilla提供开发者文档,其中的web技术文档堪称最为权威,也很细致):

还有 w3school.com.cnw3schools.com 也可作为参考 PS: 这边列出的 MDN 文档是中文版的,如果能够习惯看英文文档(即使借助翻译工具)是很不错的

再开始学习之前,可以先把http://t.51cto.com/exam/list/id-103.html这套题做完,到达80分就算是已经入门了。

学习技术的核心思想: 知道XXX是什么,XXX合适运用于什么样的场景,XXX有什么优点和缺点

Play2.4.x with CAS

by:ksh

依赖

build.sbt 中添加:

libraryDependencies ++= Seq(
  cache,
  "org.pac4j" % "play-pac4j-scala_2.11" % "2.0.1",
  "org.pac4j" % "pac4j-cas" % "1.8.5"
)

具体实施

这边使用 kafka-magager 这是一个play2.4.X 的项目,用它作为例子,展示Play2.4.X 加装 CAS

golang 通过 netlink 获取 taskstats

by:ksh

开始

开始了解 taskstate 的目的是为了给项目hickwall的agent增加 获取io read/write最高的top进程id功能,这个信息是可以通过读取proc里面的io来获取,但是考虑到要读取所有进程proc文件同样有很大的io消耗,而初衷是为了定位io消耗大的进程以此来发现问题,agent自身的io不能太大,所以暂时放弃这种方式。后来看到centos下有一个 iotop 命令,查看其源码 发现是使用netlink来获取的,于是决定采用netlink来获取。

Netlink是一种特殊的socket,用来实现用户态进程与内核的信息通信。可以通过AF_NETLINK来创建一个netlink套接字(socket),netlink协议由多个子协议组成目前包括: