mosquitto鉴权插件的开发与说明(一)

1.      mosquitto的插件的接口在文件mosquitto_plugin.h中进行了声明,在创建自己的鉴权插件代码中必须包含头文件mosquitto_plugin.h,并且实现该头文件中声明的所有鉴权接口函数(接口函数mosquitto_log_printf除外)。2.      mosquitto插件的权限校验方式由头文件mosquitto_plugin.h中声明的接口函数所限制,共...
阅读(411) 评论(0)

Nginx的主要函数调用关系分析

感觉这篇总结没把Nginx最主要的函数调用关系说清楚,因此,这次又重新组织了一下,以更简单的方式描述Nginx中如何从main函数开始,到创建各个进程,然后当有客户端连入进来时如何进行消息读取,这篇总结还未涉及到对业务流程的处理,例如对http请求的处理等。Nginx支持epoll、select、kqueue等不同操作系统下的各种IO多路复用方式,本文以epoll为例分析Nginx是如何实现在一套...
阅读(191) 评论(0)

程序员的自我修养——读《软技能-代码之外的生存指南》笔记

我记得曾经读过俞甲子的《程序员的自我修养——链接、加载和库》,当时就觉得这个书名起的不太合适,有点不合主题,因为这本书主要讲述链接库的事情,我认为这个是编译器的一部分,是作为程序员要掌握的一项基本技能,而不修养的事情,更谈不上基本修养(但是这本书的内容依然是非常好的,我曾经仔细阅读过5遍,并且详细的做了笔记和心得,所以,我还是很认可这本书内容)。从那个时候起,我隐约也在想一个问题:程序员的基本修养...
阅读(270) 评论(0)

大数据平台在分布式服务中的应用

对大数据平台的一些理解大数据是目前比较火的领域,它涉及的领域比较广泛,例如数据挖掘、机器学习等等;所有这些基于数据的操作能够正常工作的前提是:搭建相应的大数据收集平台,在该平台中能够通过主动和被动的方式收集到足够的数据;一般情况下,大数据平台里的数据来源主要有:(1)  日志数据,相对于大数据平台,这是一种主动收集数据的方式;这种方式可能是大数据平台中最主要的数据来源,并且随着用户请求量、服务数量...
阅读(236) 评论(0)

chmod简介及其使用方法

1. chmod命令介绍:chmod [who] [+ | - | =] [mode] 文件名   命令中各选项的含义为:   操作对象who可是下述字母中的任一个或者它们的组合:   u 表示“用户(user)”,即文件或目录的所有者。   g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。   o 表示“其他(others)用户”。   a 表示“所有(all)用户”。它...
阅读(263) 评论(0)

使用 logrotate对centos中各服务程序的日志文件进行转储

1.mosquitto的日志输出方式简介mosquitto是一个纯C的代码,它的日志输出支持若干中日志输出方式,通过修改配置项:log_dest即可完成对各种日志输出类型的切换,常见的日志输出类型有有下几种:(1)控制台输出stdout、stderrrlog_dest stderr(2)输出到日志文档log_dest file /home/logs/mosquitto/mosquitto.log【...
阅读(757) 评论(0)

linux信号及其含义

我们运行如下命令,可看到Linux支持的信号列表: ~$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) S...
阅读(348) 评论(0)

悲观锁与乐观锁

悲观锁与乐观锁都是对被修改数据在并发情况下的一种保护机制;这里悲观与乐观的含义是指对于即将修改的数据被外界修改持一种悲或乐的态度;即:悲观锁是指我认为当我要修改一个数据的时候,别人也在修改,所以我要对即将操作的数据进行全程加锁,以保证我的操作不会被别人所影响;乐观锁是指当我要修改数据的时候,别人一般不会再修改,因此,我只在提交我的修改时再加锁,而不用全程加锁。由此可见:悲观锁的加锁时间更长。对于修...
阅读(319) 评论(0)

CentOS7环境下搭建flume

一、flume安装与配置1.将flume解压到指定目录/home/jason/bigdata下:[root@clsserv202 bigdata]# pwd/home/jason/bigdata[root@clsserv202 bigdata]# ll总用量 4drwxrwxrwx. 8 root root 4096 9月 8 14:38 flume-1.6.02.将flume的目录添加到环境...
阅读(565) 评论(0)

centos7环境下搭建storm集群

前提:使用的zookeeper集群为:11.12.112.215:2181,11.12.112.216:2181,11.12.112.217:2181并且zookeeper集群已经启动成功;下面将以11.12.112.210服务器上为例,说明storm的部署过程:1、解压storm到目录/home/jason/bigdata/下:[root@clsserv210 bigdata]# pwd/hom...
阅读(1033) 评论(0)

CentOS7环境下搭建Kafka

计划使用三台主机:11.12.112.206、11.12.112.207、11.12.112.208搭建Kafka集群环境,使用的zookeeper集群为:11.12.112.215:2181,11.12.112.216:2181,11.12.112.217:2181并且zookeeper集群已经启动成功;1.下载压缩包:kafka_2.11-0.8.2.2.tgz并将之放在某个目录下,例如:/h...
阅读(378) 评论(0)

CentOS7环境下搭建Kibana

本次安装的Kibana主要用于展示《CentOS7环境下搭建ElasticSearch》中搭建的ES,其详细安装部署过程如下所示:1.解压Kibana压缩包kafka_2.11-0.8.2.2.tgz到指定的目录/home/jason/bigdata/下如下所示:[root@cluster209 kibana-4.1.3-linux-x64]# pwd/home/jason/bigdata/kib...
阅读(866) 评论(0)

CentOS7环境下搭建ElasticSearch

搭建环境在11.12.112.209主机,本文件主要说明搭建一个ES,如果多个es,只有让他们的配置文件中的集群名称cluster.name配置成一样,它们就会自动组成一个集群。一、搭建elasticsearch环境1.先将软件放在:/home/jason/bigdata/目录下,如下:[root@cluster209 bigdata]# pwd/home/jason/bigdata[root@c...
阅读(666) 评论(0)

关于redis的pipline和lua脚本

1.     关于redis命令执行方式的一点看法:Redis命令执行时是串行的,在同一个连接上客户端发送一条命令,redis对这个命令进行操作然后返回结果,客户端只有接到这个结果之后才能发送下一条命令,例如: 如此串行的执行方式效率非常低,为此,redis引入了pipline,它可以让客户端依次发送一批命令过期,然后redis依次执行这些命令,并把这些命令的结果依次放入到一个list里面一次返回...
阅读(306) 评论(0)

nginx源码分析之IO多路复用流程

一、             主流程几乎所有的服务器程序的工作模式都是:(1)      初始化一些参数;(2)      开启监听socket;(3)      在主线程的死循环(一般都是死循环)中对监听socket和业务socket进行IO状态监控(IO多路复用),并对IO进行处理;Nginx的主要工作模式是多进程模式,那么它的工作方式也是类似的。只不过是它的死循环被分散到了各个工作进程中。这...
阅读(617) 评论(0)

nginx源码分析之内存池实现原理

建议看本文档时结合nginx源码;1.1   什么是内存池?为什么要引入内存池?内存池实质上是接替OS进行内存管理,应用程序申请内存时不再与OS打交道,而是从内存池中申请内存或者释放内存到内存池,因此,内存池在实现的过程中,必然有一部分操作时从OS中申请内存,或者释放内存到OS,如下图所示:图1内存池的引入可有效解决两个问题:(1) 降低应用程序与OS之间进行频繁内存和释放的系统调用,进而降低程序...
阅读(2317) 评论(0)

使用LVS实现负载均衡原理及安装配置详解

本文转自:http://www.cnblogs.com/liwei0526vip/p/6370103.html 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群。常用的负载均衡开源软件有nginx、lvs、haproxy,商业的硬件负载均衡设备F5、Netscale。这里主要是学习 LVS 并对其进行了详细的总结记录。一、负载均衡LVS基本介绍    LB集群的架构...
阅读(368) 评论(0)

Linux 内核中的 Device Mapper 机制

本文结合具体代码对 Linux 内核中的 device mapper 映射机制进行了介绍。Device mapper 是 Linux 2.6 内核中提供的一种从逻辑设备到物理设备的映射框架机制,在该机制下,用户可以很方便的根据自己的需要制定实现存储资源的管理策略,当前比较流行的 Linux 下的逻辑卷管理器如 LVM2(Linux Volume Manager 2 version)、EVMS(Ent...
阅读(303) 评论(0)

微服务开发过程中需要注意的若干事项

微服务,说比做容易!我们更关注怎样将这种架构设计思想融入到实际工作中,微服务更关注各服务之间的调用、管理,它追求软件研发过程中的自动化,例如:自动编译、打包、发布,自动化运维等等,这里的每一个自动化的地方都需要有相应的软件、脚本做支撑;在实际应用过程中,我们很难短时间内把所有的自动化基础软件熟练应用起来,一方面,时间紧迫,很难有公司会专门抽出来时间来搭建和构造这样的一套自动化系统出来,并且培训好相...
阅读(720) 评论(0)

优秀REST风格 API的设计原则

原文来自:https://codeplanet.io/principles-good-restful-api-design/设计优秀的REST风格API非常困难!API是服务提供方和使用方之间的契约,打破该契约将会给服务端开发人员招来非常大的麻烦,这些麻烦来自于使用API的开发人员,因为对API的改动会导致他们的移动app无法工作。一个好的文档对于解决这些事情能起到事半功倍的作用,但是绝对多数程序...
阅读(3406) 评论(5)
297条 共15页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:548153次
    • 积分:7247
    • 等级:
    • 排名:第3227名
    • 原创:184篇
    • 转载:112篇
    • 译文:1篇
    • 评论:98条
    博客专栏
    最新评论