liberalman的专栏

自由的人

排序:
默认
按更新时间
按访问量

consul 配置/KV/ACL

[TOCM]Consul版本 v0.9.31. 配置1.1 CLI配置Consul Agent有各种各样的配置项可以在命令行或者配置文件进行定义,所有的配置项都是可选择的,当加载配置文件的时候,Consul从配置文件或者配置目录加载配置。后面定义的配置会合并前面定义的配置,但是大多数情况下,合并的...

2017-11-01 11:43:34

阅读数:462

评论数:0

使用nutch搭建类似百度/谷歌的搜索引擎

Nutch是基于Lucene实现的搜索引擎。包括全文搜索和Web爬虫。Lucene为Nutch提供了文本索引和搜索的API。1.有数据源,需要为这些数据提供一个搜索页面。最好的方式是直接从数据库中取出数据并用Lucene API 建立索引,因为你不需要从别的网站抓取数据。 2.没有本地数据源,或...

2017-10-21 11:09:57

阅读数:378

评论数:0

微服务注册发现集群搭建——Registrator + Consul + Consul-template + nginx

在互联网应用领域,服务的动态性需求十分常见,这就对服务的自动发现和可动态扩展提出了很高的要求。微服务系统动辄上万个服务,而且还要动态伸缩。以人工写好的IP、Port 硬编码脚本的方式无法做到大规模自动化,稍微多点服务运维就傻了。微服务必然要做到ip和port自动分配,减少人工干预。我们需要让每个服...

2017-07-26 18:54:34

阅读数:1346

评论数:3

面试圣经(一)

小桔科技 四面面试官是个部门经理,比较和蔼,说话爱笑,比别的公司的总监层面的人严肃的面孔好多了,也让面试者轻松很多。总结下他问的诸多问题以及我的解法,先上几个问题 1有数字1、2、3….直到n+2的递增数列,每个数都是唯一不重复的,以1的步长增长的。去掉其中两个数,然后打乱次序,找出被去掉的数到底...

2017-05-20 15:40:24

阅读数:531

评论数:1

nginx启用HSTS以支持从http到https不通过服务端而自动跳转

最近对我的个人网站启用了Https,所以想设置http默认自动转https访问的功能,但又不想总让服务端做转发操作,那样浪费资源。那么有什么好的办法呢?302跳转通常将 HTTP 请求 302 跳转到 HTTPS,但有问题:1.不安全,302 跳转会暴露用户访问站点,易被劫持。2.多增加一次访问,...

2017-05-18 00:39:04

阅读数:5060

评论数:0

开发过程中遇到的各种问题汇总

TLS/SSL/HTTPS1.我的个人网站https改造过程中,遇到问题 Mixed Content: The page at ‘https://www.liberalman.cn/login’ was loaded over HTTPS, but requested an insecure s...

2017-05-13 20:53:26

阅读数:1731

评论数:0

对象池

一个广为人知但鲜有人用的技巧:对象池对象池是一种设计模式,它会预先初始化一组可重用的实体,而不是按需销毁然后重建。在使用套接字描述符时,人们通常会将其池化。实际上,套接字描述符的数量通常比较少(最多上千个),之所以要采用池的方式,是因为它们的初始化成本非常高。而在最近发表的一篇博文中,Clojur...

2017-05-13 20:48:51

阅读数:203

评论数:0

基于AWS S3协议搭建个人云存储服务

相信风靡全球的亚马逊 AWS S3 的存储云服务大家已经耳熟能详了,如何自己搭建一个私有的S3存储云服务呢?Minio 实现了 AWS S3 存储协议,开源并且用Go语言开发,有web操作界面,我们可以用它来搭建兼容S3协议的存储云服务。官网 https://minio.io/详情见如下操作[ro...

2017-03-29 23:25:06

阅读数:3724

评论数:0

levelDB

levelDB是Google做的内存数据库的开发库,而号称要取代rediss的SSDB就是基于levelDB开发的。1,下载levelDB源码git clone https://github.com/google/leveldb.git我是下载了这个地址的zip包leveldb-master.zi...

2017-03-16 01:13:39

阅读数:361

评论数:0

OpenResty入门

操作系统:Centos 7OpenResty是整合nginx模块,用作web开发工具之用,具体可以百度!配置安装源[root@localhost ~]# vim /etc/yum.repos.d/OpenResty.repo内容如下:[openresty] name=Official OpenRe...

2017-03-15 01:20:41

阅读数:583

评论数:0

通过UDF使mysql主动刷新redis缓存

UDF是mysql的一个拓展接口,UDF(Userdefined function)用户自定义函数。在什么地方使用这个功能呢,试想有如下场景:你的网站使用mysql作为最终数据落地的存储引擎,而redis作为缓存以减小查询请求穿透到mysql的数量,可以极大的降低数据库性能瓶颈带来的整个网站对外服...

2016-08-23 16:25:38

阅读数:6012

评论数:0

抛弃mysql模糊查询,使用sphinx做专业索引

Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,提供比数据库本身更专业的搜索功能特别为MySQL也设计了一个存储引擎插件,从此抛弃模糊查询吧。Sphinx 单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx...

2016-08-19 15:16:26

阅读数:4993

评论数:0

epoll边沿触发漏报消息包问题

开发一个即时通讯后台,底层的网络收发使用 epoll + main loop实现网络事件(conn、read、send)的异步触发读写,以达到能最大限度减少线程的IO等待,提高cup利用率的目的。实际使用中,会发现有少量并没有 因为访问后端阻塞 但是依然反馈慢到超时的情况,我们定义从客户端发消息到...

2016-08-05 11:47:33

阅读数:938

评论数:0

Haproxy+etcd+confd+Docker搭建节点自动发现的高可用负载均衡框架

记得先要安装docker,具体这里不赘述了,百度或者看我的文章http://www.jianshu.com/p/3ffa4e5cbb86先扔出一张图来解释这四个组件之间的关系下面细说1.HaproxyHaproxy不用多说,负载均衡软件,安装Haproxyyum -y install haprox...

2016-07-25 20:29:49

阅读数:6907

评论数:5

docker容器扫盲

Centos 6.5 安装和使用docker基于本人一贯的习惯,关于“某某某是什么”这样的问题,请百度吧,会有更专业的人士,会比我说的更详细更深,这里我只给出本人亲历的安装和使用过程。1.安装先检查服务器环境,docker要求操作系统CentOS6以上,kernel 版本必须2.6.32-431或...

2016-07-22 21:55:21

阅读数:10268

评论数:7

从零实现高并发Web服务器-哈希表

哈希表自定义实现哈希表/** 键值对 */ typedef struct { lbt_str_t key; /**< 键 */ lbt_uint_t key_hash; /**< 通过哈希运算,将key投影到整型的哈希值 */ void *v...

2016-07-17 16:37:19

阅读数:620

评论数:0

基于mysql的分布式数据库中间件-Mycat

一、Mycat根据官网的定义:Mycat是一个可以用于MySQL读写分离和高可用的中间件,一个模拟为MySQL Server的超级数据库,一个能平滑扩展支持1000亿大表的分布式数据库系统,一个可管控多种关系数据库的数据库路由器,一个平滑从关系数据升级到大数据的应用中间件。其前身是阿里的Cobar...

2016-07-09 23:08:57

阅读数:2799

评论数:2

环形队列

环形队列,也可以叫环形缓冲区。我们用数组来举例,通常对于一个放到数组中的队列,生产者将数据写入队尾,消费者从队头取走,两个指针朝着同一个方向运动,消费者追生产者。而“环”在这里的体现,就是不管生产者还是消费者,当指针跑到队尾的时候,掉头到该数组头去,形成一个没有终点的环。 这要做的好处是,当生产...

2016-07-08 12:09:45

阅读数:559

评论数:0

修改FILE缓冲区大小,改进写日志性能

由于线上服务端程序,需要大量写入日志,将来入数据库库,以便做数据分析或者对账之用,可是发现日志打开后服务器变慢了,对外并发响应数量也减少了。于是分析了下日志写入函数fprintf。其写日志文件的顺序是:程序写入用户地址空间内核从用户地址空间缓冲区复制到内核文件缓冲区内核文件缓冲区满的情况下再放...

2016-07-06 22:42:14

阅读数:3628

评论数:3

Chapter 2. Game Engine Anatomy游戏引擎剖析(揭秘)

iPhone Game Development Developing 2D & 3D games in Objective-C To solve the large problem of how to create a game on the iPhone, we first need t...

2016-07-02 00:17:51

阅读数:599

评论数:0

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