docker-compose命令表

参数名 说明 例子 -f 指定配置文件,可以指定多个 docker-compose -f /data/docker/config/docker-compose.yml config -q 验证(docker-compose.yml)文件配置,当配置正确时,不输出任何内容,当文件配置错误,输出错误信息 docker-compose -f /data/docker/config/docker-compose.yml config -q ps 查看启动的服务 docker-compose ps docker-compose ps nginx up 创建启动容器 docker-compose up down 停用移除所有容器以及网络相关 docker-compose down start 启动服务 docker-compose start stop 停止服务 docker-compose stop restart 重启服务 docker-compose restart pause <name|id> 暂停指定容器 docker-compose pause nginx unpause

查看更多

go mod 常用命令

#打开gomod export GO111MODULE=on #关闭gomod export GO111MODULE=off #更改依赖项版本(或添加新的依赖项) go get github.com/golang/protobuf/proto@master #创建一个新模块,初始化 go.mod 文件,参数为该模块的导入路径,推荐使用这种形式。如:go mod init github.com/linehk/example go mod init #格式化 go.mod 文件 go mod edit -fmt #添加依赖或修改依赖版本,这里支持模糊匹配版本号 go mod edit -require=path@version #从 go.mod 删除不需要的依赖、新增需要的依赖,这个操作不会改变依赖版本 go mod tidy #生成 vendor 文件夹 go mod vendor #Go 命令行工具会根据需要添加新的依赖项。如:go test ./…,测试当前模块。 go build、go test #打印当前模块依赖 go list -m all #列出该模块的所有版本

查看更多

redis cluster手动批量添加槽shell

cluster如果不用redis-trib.rb管理的话,手动添加槽是非常痛苦的。因为cluster addslots 需要把添加的槽都要写上。 这里写了一个shell,可以批量添加槽—— cluster_slot.sh #!/bin/sh begin_slot=$1 end_slot=$2 m_host=$3 m_port=$4 for((i=$begin_slot;i<=$end_slot;i++)); do m_slot=”${m_slot} ${i}” done echo “add slots from ${begin_slot} to ${end_slot} :” redis-cli -h ${m_host} -p ${m_port} cluster addslots ${m_slot} 使用: sh cluster_slot.sh begin_slot end_slot m_host m_port 这里需要传4个参数,分别是起始槽、结束槽、需要分配槽的redis地址、需要分配槽的redis端口: 如:sh cluster

查看更多

微信分享类

这个是在ci项目中,用到的微信分享的一个类,储存用的redis /** * wechart service * 微信service * * @author guomumin<aaron8573@gmail.com> * @date 2016-03-21 */ class Wechart { /** * 微信存储到redis中的access_token key * @var string */ const ACCESS_TOKEN_KEY = ‘wechart_access_token’; /** * 微信存储到redis中的jsapi_ticket key * @var string */ const JSAPI_TICKET_KEY = ‘wechart_jsapi_ticket’; /** * 微信标识 * @var string */ private $_app_id = NULL; /** * 微信秘钥 * @var string */ private $_app_secret = NULL; /** * 微信授权秘钥 * @var string */ privat

查看更多

Linux下PHP安装kafka扩展

先下载librdkafka: wget https://github.com/edenhill/librdkafka/archive/master.zip mv master.zip librdkafka-master.zip unzip librdkafka-master.zip cd librdkafka-master ./configure 在这期间,如果没有安装 gcc-c++ 就会报错: c++: command not found 这时候安装一下 gcc-c++ 就可以。如:centos 下 yum install gcc-c++ make && make install 成功后如下:    

查看更多

分布式消息系统:Kafka

Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务。它主要用于处理活跃的流式数据。 在大数据系统中,常常会碰到一个问题,整个大数据是由各个子系统组成,数据需要在各个子系统中高性能,低延迟的不停流转。传统的企业消息系统并不是非常适合大规模的数据处理。为了已在同时搞定在线应用(消息)和离线应用(数据文件,日志)Kafka就出现了。Kafka可以起到两个作用: 降低系统组网复杂度。 降低编程复杂度,各个子系统不在是相互协商接口,各个子系统类似插口插在插座上,Kafka承担高速数据总线的作用。 Kafka主要特点: 同时为发布和订阅提供高吞吐量。据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB)。 可进行持久化操作。将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。通过将数据持久化到硬盘以及replication防止数据丢失。 分布式系统,易于向外扩展。所有的producer、broker和consumer都会有多个

查看更多

mysql插入语句

mysql插入数据有三种方式 1>INSERT INTO 表示插入数据,数据库会检查主键(PrimaryKey),如果出现重复会报错。 2>REPLACE INTO 表示插入替换数据,需求表中有PrimaryKey,或者unique索引的话,如果数据库已经存在数据,则用新数据替换,如果没有数据效果则和insert into一样。 REPLACE语句会返回一个数,来指示受影响的行的数目。 该数是被删除和被插入的行数的和。如果对于一个单行REPLACE该数为1,则一行被插入,同时没有行被删除。如果该数大于1,则在新行被插入前,有一个或多个旧行被删除。如果表包含多个唯一索引,并且新行复制了在不同的唯一索引中的不同旧行的值,则有可能是一个单一行替换了多个旧行。 3>INSERT IGNORE 表示如果中已经存在相同的记录,则忽略当前新数据。

查看更多

手机页面touch拉取页面效果

手机页面touch拉取页面效果 需要下载touchSwipe。 移动端触屏滑动的效果其实就是图片轮播,在PC的页面上很好实现,绑定click和mouseover等事件来完成。但是在移动设备上,要实现这种轮播的效果,就需要用到核心的touch事件。处理touch事件能跟踪到屏幕滑动的每根手指。 touch事件如下: touchstart:手指放到屏幕上时触发 touchmove:手指在屏幕上滑动式触发 touchend:手指离开屏幕时触发 touchcancel:系统取消touch事件的时候触发 <script> $(“body”).on(“touchstart”, function(e) {         //e.preventDefault();         startX = e.originalEvent.changedTouches[0].pageX,         startY = e.originalEvent.changedTouches[0].pageY;         startT = +new Da

查看更多