`
文章列表
                                     GIF图片介绍和LZW算法说明 1. GIF格式   GIF图像的文件格式如下:     重点字段介绍: 逻辑屏幕标志符:包含了逻辑屏幕的长宽,是否包含全局颜色列表,背景色等。 全局颜色列表:包含了图片中使用的所有颜色,而图片的数据使用全局颜色列表中的索引代替。 图像块:gif的数据是由数据块组成,每个数据块的长度最大为255   2. LZW算法 全称为“串表压缩算法”,LZW代表了研发该算法的三个人(坑爹啊,还以为是英文缩写)。属于字典编码的一种,最大的优点在于压缩后的数据不需要额外携带 ...
etcd就两个可执行文件(截至到3.0.15前)。 下载地址:https://github.com/coreos/etcd/releases   注:etcd可以集群安装,在这里只想做一个单机测试,所以只是启动一个节点就可以。   1. 解压,并将文件放入系统路径中: tar zxvf etcd-v3.0.15-linux-amd64.tar.gz cp etcd /usr/bin/ cp etcdctl /usr/bin/   2. 创建一个服务描述文件,放入systemd的服务目录下 cat /usr/lib/systemd/system/etcd.service ...

Nginx返回值

最近使用Nginx的过程中发现不同的场景下,Nginx返回的错误码是不同的。为了以后便于分析问题,做个记录:   504 Nginx收到Client的请求后,转发给后端,如果后端处理时间过长,超时后会返回504,GateWay Timeout。默认的到后端连接时间为60s

http请求解析

    博客分类:
  • HTTP
最近经常使用HTTP请求,但对HTTP请求的格式名称还有些不清楚的地方。主要是: URI URL QueryString HOST PORT Schema 这四个的区别,下面分别进行详细讲解。   URI    URI表示资源标识符,代表一个资源的路径。官方解释为:the part of this request’s URL from the protocol name up to the query string in the first line of the HTTP request。简单来说就是Port和QueryString中间的部分   URL   ...
URL安全的字符串编码: function urlsafe_b64encode($string) {    $data = base64_encode($string);    $data = str_replace(array('+','/'
Kafka详细分析    前面说过Kafka主要包括:客户端,Broker,ZK,消费者四块内容。   1. 客户端   客户端的作用为收集消息,将消息正确的发送到客户端。   1.1 消息   客户端的消息包括:CRC,版本号,Key,Length,属性,Va ...
Kafka技术介绍   1. PULL VS PUSH         pull和push是两种消息传输方式,各有优缺点。Flume采用了push的方式进行消息传输,对注册后的客户端,主动发送收到的消息。而Kafka采用了传统的消息队列的方式,生产者使用push方式,消费者使用pull方式。        对于生产者来说,Kafka集群的处理能力要远远超过自己,因此可以很放心的进行push。而对于消费者来说,Kafka可以同时支持不同的消费者组,而不同消费者的处理能力也不尽相同,因此为了减轻系统复杂度,对于消费者Kafka采用了pull方式。   2.  消息持久化   K ...
常见消息中间件   消息中间件是服务间传递消息的中间件,用于服务之间通信的。服务间通信可以分为两大类,一类是机器内的服务通信,一类是不同机器间的服务通信。 1. 机器内服务通信 项目间的服务通信,即进程或线程间的通信。这是一个面试或笔试经常会考的问题。进程间通信的常见方法有:管道、共享内存、信号量、消息队列等。 管道:分为匿名管道和命名管道,其中匿名管道只适用于父子进程间的通信,命名管道允许任意进程间的通信。 共享内存:内存分为用户态和内核态,内核态的内存是各个模块共享的,所以可以将消息写入高端内存进行共享 信号量:信号量是一个计数器,可以用来控制多个进程对共享资源的访问。 ...
Kafka使用心得 1. Kafka简单理解  kafka是一个可靠的消息中间件,它的直接作用是将生产者和消费者进行解耦。和自己简单实现一个消息队列相比,kafuka具有可靠性、可扩展性、灵活性等优点。 可靠性:kafuka的消息会落盘,因此保证了消息不会被丢弃。 可扩展性:kafuka是一个分布式系统,很容易通过增加机器来进行水平扩展。 灵活性:kafuka的消息可以被多个消费者组进行消费,消息的终点很灵活。   2. Kafka框架     从图中能够看出Kafka包含了三个模块:生产者,消费者,存储节点。   2.1 生产者 生产者就是生产消息的部门,可以按照一 ...
1. HeapAlloc - 当前堆大小。 2. HeapSys - 总的堆大小。 3. HeapObjects - 堆中对象的总数。 4. HeapReleased - 释放到操作系统中的内存;如果内存超过五分钟没有使用,运行时将会把它释放到操作系统中,你可以通过 runtime/debug.FreeOSMemory 来强制改变这个过程。 5. Sys - 操作系统分配的总内存。 6. Sys-HeapReleased - 程序的有效内存消耗。 7. StackSys - goroutine 栈的内存消耗(注意:一些栈是从堆中分配的,因此没有计入这里,不幸的是,没有办法得到栈的 ...

C语言API

                                       C语言常用API 1.  pthread_create 函数原型:int pthread_create(pthread_t *tidp,const pthread_attr_t *attr,(void*)(*start_rtn)(void*),void *arg); 功能说明:创建线程 参       数:               1:线程标识符               2:线程属性               3:线程回调函数               4:回调函数的参数 返回值:成功为 ...
1. 下载源码 地址:https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/ 找到对应版本下载 解压:tar -zxvf GraphicsMagick-1.3.20.tar.gz   2. 编译步骤 a. bash ../configure(configure文件的路径) -prefix=/home/hzliukai/space/C/GraphicsMagick-1.3.20/build(安装的路径)   b. make 如果提示  如果gcc等工具已经安装,则可能是Makefile和li ...
简介 1  reStructuredText是什么? reStructuredText是扩展名为.rst的纯文本文件,含义为”重新构建的文本“,是python编程语言的Docutils项目的一部分。.rst文件是一种轻量级标记语言,与html的复杂结构相比,它的设计对人更加友好,被 ...
Global site tag (gtag.js) - Google Analytics