Skip to content

Latest commit

 

History

History
executable file
·
822 lines (564 loc) · 25.4 KB

learn-notes.md

File metadata and controls

executable file
·
822 lines (564 loc) · 25.4 KB

学习笔记

jetbrain插件方案:

实现同时
1 支持proto跳转依赖proto
2 支持service跳转到pb.go
方案 
1 禁用 Protocol Buffers 插件
2 启用 protobuf support 插件
3 重启IDEA

wget 类似curl请求并响应

wget -O - qq.com

2021 6.1

本地启动 grpc 项目后不方便启动 client 来调试,于是选择用 grpcurl 工具方便调试;推荐姿势:

查看本地有哪些 grpc 服务
grpcurl -plaintext 127.0.0.1:{端口} list

查看本地 grpc 服务 下的 action
grpcurl -plaintext 127.0.0.1:{端口} list .....服务名

调用 grpc action
grpcurl -H 'token:cn01:a862a6eb-8c4' -d '{"params": "123456"}' -plaintext 127.0.0.1:{端口}  ....Service.HelloCoo

查看对应方法的请求和返回结构体信息:
grpcurl -plaintext 127.0.0.1:8080 describe describe proto.Greeter.SayHello
查看对应方法的请求参数:
grpcurl -plaintext 127.0.0.1:8080 describe proto.HelloRequest

2021 5.10

遇到生产不打印非 fmt 类型日志,测试和开发环境正常, 代码一样,应该是配置原因,于是开始从启动 main排查,发现日志器 zap init 中没有配置 'stderr' 终端输出项,由于服务日志是终端输出重定向到日志文件的,这里加上以后解决。

2021 1.15

iterm2快捷指令:

  • cmd-opt-B 使用即时重播功能
  • ctrl + a 到行首
  • ctrl + e 到行尾
  • ctrl + f/b 前进后退 (相当于左右方向键)
  • ctrl + p 上一条命令
  • ctrl + r 搜索命令历史
  • ctrl + d 删除当前光标的字符
  • ctrl + h 删除光标之前的字符
  • ctrl + w 删除光标之前的单词
  • ctrl + k 删除到文本末尾
  • ctrl + t 交换光标处文本
  • Command + / 查看当前终端中光标的位置

10.21 使用db2struct

db2struct --host 192.168.1.1 --user root -p root --gorm --json -d database --package model --struct tablename -t table_name >table_name.go

12.31 php array

  • 用于将一个数组 利用外来的arr的数据 更改其中的键值 并返回

array_walk($list,function (&$a,$key,$arr){ $a['state'] = $arr[$a['user_id']]["gouhao"]; return $a; },$arr);

  • 用户重新生成一个数组是有当前数组callback 生成的

array_map(function ($a){ return $a['user_id']; },$list);

goland phpstorm

远程配置setting:https://github.com/Darrenzzy/storm-config.git

8.1 判断标志符号:

  • lt:less than 小于
  • le:less than or equal to 小于等于
  • eq:equal to 等于
  • ne:not equal to 不等于
  • ge:greater than or equal to 大于等于
  • gt:greater than 大于

启动撮合引擎 几大步骤

  • 先启动ssdb和redis (打开撮合引擎目录)
  • redis-server /config/redis.conf
  • ssdb-server -d /config/ssdb.conf
  • 使用场景:前段时间交易所项目需要在服务器上用到 根据websocket推送价格数据,在交易所内进行下单撤单处理,但是由于有多个交易对,在服务器上部署时候,略显繁琐。 (撮合引擎同样有此问题,可以一并解决)
  1. shell使用:在git项目后,这里每个交易对单独配一个文件,负责各自的交易处理,此处做项目下的目录轮询,并执行该目录下的shell脚本

    #!/bin/bash
    root=$(cd "$(dirname "$0")";pwd)
    
    #读取当前目录全部目录名
    dirs=`ls -a`
    for dir in ${dirs[@]}
    do
        #以下判断做去除非项目目录操作
      if [ -d ${root}/${dir} ];then
          if [ ${dir} == '.' ];then
              continue
          fi
          if [ ${dir} == ".." ];then
              continue
          fi
    if [ ${dir} == "logs" ];then
              continue
          fi
          #这里打开对应项目目录,做初始化配置
          cd ${root}/${dir} && ./update.sh
    
      fi
    done
  2. shell的再次使用:在每个项目中需要替换一些配置文件中的个别字符串,作为当前项目的配置文件(解决了不需要再进入每一个项目中去修改配置文件的繁琐)

    #!/bin/bash
    root_dir=$(cd "$(dirname "$0")";pwd)
    
    #获取当前操作系统名称(用来区别linux和mac os系统)
    os=`uname -s`
    
    #获取文件名字
    file=${root_dir##*/}
    
    #配置文件所在位置
    config_file="${root_dir}/app/config/development/environment.ini"
    
    #开始轮询该文件
    while IFS= read -r line
    do
    
        if [[ ${line} == *"otc_pair ="* ]];then
        #取出要替换的字符串
            pair=$(echo ${line}|awk -F '=' '{print $2}'|sed 's/ //g')
        #替换该行字符串  这里的逻辑是将变量 $pair 替换为项目文件名 $file
            if [ ${os} == 'Darwin' ];then
              #此sed命令在macos上
                sed -i "" "s/$pair/$file/g" $config_file
            else
              #此sed命令在linux上
                sed -i "s/$pair/$file/g" $config_file
            fi
            break
        fi
    done <"${config_file}"
  3. 至此完成shell的骚操作,其中关键可利用处我已贴出来,并做了注释,

sed的其他操作

linux中 来删除所有以 "#" 开头的行,无论前面有多少空格:

sed -i '/^[[:space:]]*\#/d' /path/to/file

对于Mac,您可以使用以下命令来删除所有以 "#" 开头的行,无论前面有多少空格:

sed -i '' '/^[[:space:]]*\#/d' /path/to/file

11.30

钱包 项目部署时需要额外部署icomet git地址: https://github.com/ideawu/icomet

wget --no-check-certificate https://github.com/ideawu/icomet/archive/master.zip

unzip master.zip
cd icomet-master/
make
#start
./icomet-server -d icomet.conf
# stop
./icomet-server icomet.conf -s stop

10.24

  • 今天了解了在公司框架中 model 自动保存到redis的逻辑 注:需要在model中加一个函数(getCacheEndpoint),然后在basemodel中save时会判断是否有需要缓存的逻辑,然后做缓存。

10.18

npm下载指定版本后面直接加版本号即可 npm install -g [email protected]

8.30

  • 市商项目快速开启检测api请求的任务 nohup php cli.php order_details start >> log/redis_orders.log 2>&1 &

8.24

  • 今天启动本地otc项目,首页是白屏,进不去,看debug是500报错,但是后台可以进去。 解决: 启动项目,php cli.php env init php cli.php env start php cli.php async start php cli.php db migrate 主要原因是,新拉的代码,更新了数据库字段,首页读取不到,导致报错。 按上面命令后,可以访问到主页了。

  • 另外:重启电脑后,有时候fpm没有启动,导致otc项目无法使用,这里解决:fpm restart

8.23

  • 修复bug : 市商中,当一个订单被成交部分量时,存入数据库的数据,应该是(deal_volume/deal_amount)的当前成交量 原来是直接存最新的deal... 导致数据库中一个订单被分为多个重复的量,用此量去火币下单,这样会亏损(在火币下的量太多)

8.16

  • 今天部署市商项目时遇到坑,由于phalcon项目中未初始化启动,PHP cli.php env init 这个命令 导致nginx不能正常启动!!!立个flag,回头遇到来看看

8.11

  • 使用快速查找进程id的命令:
$taskid = shell_exec("ps ax | grep -i 'every_minutes' | grep -v grep | awk '{print $1}'");
  • 终端发送消息,自定义操作:
curl -X POST --data-urlencode 'payload={"channel": "darren", "username": "darren", "text":"1111"}'  https://hooks.slack.com/services/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

https://hooks.slack.com/services/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

#在linux中使用curl在shall中发送请求,
curl -X POST --data-urlencode 'payload={"channel": "wc_test_server", "username": "bot", "text":"'"${MS}"'"}' https://hooks.slack.com/services/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

# 运维响应 使用curl 查看api响应的内容,全部打印出来。
curl -w '
time_namelookup\t: %{time_namelookup}
time_connect\t: %{time_connect}
time_appconnect\t: %{time_appconnect}
time_redirect\t: %{time_redirect}
time_pretransfer\t: %{time_pretransfer}
time_starttransfer\t: %{time_starttransfer}
time_total\t: %{time_total}
http_code\t: %{http_code}\n' \
--location 'https://connect-api.cloud.huawei.com/api/oauth2/v1/token' \
--header 'Content-Type: application/json' \
--header 'Cookie: HWWAFSESID=9b38d305cd; HWWAFSESTIME=1291922922564' \
--data '{
    "grant_type": "client_credentials",
}'
  • pqsl给数据库增加字段, php cli.php generate add_connect_weixin_to_product_channels 增加完文件后,生成数据即可: PHP cli.php migrate

8.1

  • 防火墙 启动:# systemctl start firewalld systemctl start firewalld.service 查看状态:# systemctl status firewalld 或者 firewall-cmd --state systemctl status firewalld.service

  • 停止:# systemctl disable firewalld

  • 禁用:# systemctl stop firewalld

  • 查看当前开了哪些端口

firewall-cmd --list-services
查看还有哪些服务可以打开
firewall-cmd --get-services
查看所有打开的端口
firewall-cmd --zone=public --list-ports

更新防火墙规则
firewall-cmd --reload
添加一个服务到firewalld
firewall-cmd --permanent --add-service=http


那怎么开启一个端口呢 添加

firewall-cmd --zone=public --add-port=3888/tcp --permanent

查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

zsh不存储历史记录的问题 解决:将~/目录下的这个文件加上权限,就ok了~ sudo chmod 777 .zsh_history .zshrc 中添加 setopt HIST_IGNORE_DUPS #可以消除重复记录

记录下新的坑!!!设置了每次开机fpm,导致启动后,并没有加载到后面启动的bash_profile 以至于里面的环境变量没有被加载到, 所以在web中取不到环境变量。

解决办法:将开机启动的fpm,设置到全部环境变量读取完毕后,在启动,或者改为手动启动。

今天遇到的一个问题,就是开机重启后,发现zookeeper服务也在,导致src包里的zookeeper不能正常的启动和关闭。查了半天,不是自己src包里的服务,那想必就是原来安装的brew里面, 然后仔细 ps aux |grep zookeeper 之后,发现确实是,然后就打开开启预启动目录:cd ~/Library/LaunchAgents/ 一眼看到这个zookeeper 然后果断删除,后面有brew uninstall zookee... 卸载成功后,重新启动电脑,看到已经没有这个服务了,完美解决了

输出该端口的详细信息 echo status | nc 127.0.0.1 2181

强制杀任务 kill -9 ***

7.20

MAc开机启动命令,导入配置 sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist 关闭 sudo launchctl stop io.redis.redis-server

7.19 php_sapi_name — 返回 web 服务器和 PHP 之间的接口类型

7.18

composer清理缓存 rm -rf ~/.composer/cache/ composer clearcache composer clear-cache

7月17日 当有成交量时候打开redis 127.0.0.1:6378> keys depth*

环境变量中撮合引擎域名(交易撮合引擎域名) export trade_host='btc_omg.engine.com' 记着!!!!!! 要改host文件,要配置环境变量,要

撮合引擎数据库配置 return [ 'adapter' => 'postgres', 'dbname' => 'otc' . '_' . env('env', 'php'), 'host' => env('otc_db_host', '127.0.0.1'), 'port' => env('otc_db_port', 5432), 'user' => env('otc_db_username', 'postgres'), 'password' => env('otc_db_password', 'aaaa') ];

{"sell":{"user_id":92,"trade_id":63},"buy":{"user_id":99,"trade_id":64}}

https://ex.haobtc.io/trade_engine/orders/trade

7月16号笔记

php显示所有参数 info(func_get_args(), '.........'); func_get_args()

7月2号开始 1 phpstorm 2 navicat 3 sourcetree ,charles, istat menu

目录区别作用: /usr/local下一般是你安装软件的目录,这个目录就相当于在windows下的programefiles这个目录 /opt这个目录是一些大型软件的安装目录,或者是一些服务程序的安装目录

ffmpeg安装(音频视频转换包)

查询端口占用情况 lsof -i:8000 通过某个进程号显示该进程打开的文件 lsof -p 11968 列出某个程序进程所打开的文件信息 lsof -c mysql

mac调出进程管理快捷键 alt+cmd+esc

今天安装php7: 相应的位置 php, phpize, php-config /usr/local/opt/php70/bin php-fpm /usr/local/opt/php70/sbin/php-fpm // /usr/local/opt/[email protected]/sbin/php-fpm //二级显示 /usr/local/etc/php/7.0/php-fpm.d/

php.ini /usr/local/etc/php/7.0/php.ini 当前配置文件在: /usr/local/lib/php.ini 查找 php.ini命令 : php --ini

php-fpm.conf /usr/local/etc/php/7.0/php-fpm.conf

/usr/local/etc/php-fpm.conf

非用户目录下应该在/etc目录下的配置文件!!! include=/usr/local/etc/php-fpm.d/*.conf

配置完成后,测试,显示成功! php-fpm -t [03-Jul-2018 12:49:52] NOTICE: configuration file /private/etc/php-fpm.conf test is successful 停止fpm: sudo killall php-fpm

当我配置完成后报错说没有当前用户所属的组:经过查找后:staff是当前mac用户的组 查找命令: id -a user // 可以查到指定用户所属组更详细的信息 groups // 查看当前用户所属组 groups user_name // 查看指定用户所属组

安装phalcon时候成功了:

Build complete. Don't forget to run 'make test'.

Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20160303/ cp: /usr/lib/php/extensions/no-debug-non-zts-20160303/#INST@4276#: Operation not permitted make: *** [install-modules] Error 1

Thanks for compiling Phalcon! Build succeed: Please restart your web server to complete the installation

查看安装情况: php -m|grep phalcon

nginx相关路径 /usr/local/etc/nginx/nginx.conf (配置文件路径)

/usr/local/etc/nginx/servers ( 虚拟主机记录值~~ )

/usr/local/var/www (服务器默认路径)

/usr/local/Cellar/nginx/1.8.0 (安装路径)

重启(如果端口小于1000则需要在前面加sudo)

重新加载配置|重启|停止|退出

nginx -s reload|reopen|stop|quit #测试配置是否有语法错误 sudo nginx -t nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful

开机自动启动任务目录: ~/Library/LaunchAgents

7.4工作日志: Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为C:/Windows/,

/usr/lib理解为C:/Windows/System32。

/usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。

/opt:用户级的程序目录,可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。

php目录 /usr/local/etc/pear.conf /usr/local/lib/php

改变mac环境变量 vim ~/.bash_profile 编辑环境变量 source ~/.bash_profile 更新环境变量

echo $PATH 开机启动顺序,执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout

Mac系统的环境变量,加载顺序为: /etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc

更换版本 如go

brew install [email protected]
brew unlink go

brew link [email protected]

//检验一下
go version

//output
//go version go1.19.8 darwin/amd64

7.5学习笔记

编辑php文件,做测试 vi html/t.php echo 'hello world!';

访问 php 脚本 curl localhost/t.php

每次访问的时候报错502 是因为php没有开启,没有监听 需要查看下端口9000 netstat -antp 然后启动 php-cgi -b 127.0.0.1:9000 以后用fpm不用这个进程管理

7.6学习笔记:

打开php报错提示: php-fpm 在配置文件中:/etc/php-fpm.d/www.conf display_errors on

错误日志目录 error_log ; Example: error_log = /usr/local/var/log/php_errors.log

php_admin_value[error_log] =/usr/local/var/log/fpm-php.www.log

vim /usr/local/var/log/fpm-php.www.log

mac开机启动: ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

mac取消开机启动 $ launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist $ rm -rf ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

为mac系统中建立软连接:file1是源文件 ln -s file1 file2

7月七日

学习模版volt {% for i in 0..100 %}

{{i}}
{% endfor %}、

{{ url('user/detail?uid='~user['uid']) }}

查看版本信息 brew brew info openresty

使用配置如下 ~/openresty-test nginx -p pwd/ -c conf/nginx.conf

7月9号

获取客户端ip function remoteIp() { $remote_ip = $_SERVER["REMOTE_ADDR"];

    $forwarded_for = $this->headers("X-Forwarded-For");
    if ($forwarded_for) {
        foreach (explode(",", $forwarded_for) as $ip) {
            $ip = trim($ip);
            if (preg_match("/^(127|192|10)\./i", $ip)) {
                continue;
            }
            return $ip;
        }
    }

    $real_ip = $this->headers("X-Real-Ip");
    if ($real_ip) {
        return $real_ip;
    }
    return $remote_ip;
}

7月10号

apache相对nginx的优点 rewrite,比nginx 的rewrite 强大 模块超多,基本想到的都可以找到 少bug,nginx的bug相对较多 超稳定 Apache对PHP支持比较简单,Nginx需要配合其他后端用

java8 /usr/local/Caskroom

otc项目中kafka脚本的使用:

在kafka服务器中:

kafka_list.sh 脚本 :将当期分组中所有分区的消费信息一一列出来

kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group kafka_otc

kafka_check_logs.sh :将所有分区中未消费消息,加和,若超过3000 就报警,(注意!一般不要执行)

tail -f /tmp/kafka_check_logs.log 查看当前日志中的未消费总量

暂时启动临时消费模式: nohup php test/test_kafka_consumer1.php >> log/kafka.log 2>&1 &

研究Kafka 分布式的消息系统

kafka节点之间如何复制备份的? kafka消息是否会丢失?为什么? kafka最合理的配置是什么? kafka的leader选举机制是什么? kafka对硬件的配置有什么要求? kafka的消息保证有几种方式?

/usr/local/etc/kafka/ 安装的配置文件位置

kafka数据存储在了(kafka日志) /usr/local/var/lib/kafka-logs/

新建session,查看kafka的topic 在kafka的bin目录下: 执行命令:./kafka-topics --list --zookeeper localhost:2181

启动zookeeper系统 zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties 启动kafka系统 kafka-server-start.sh /usr/local/etc/kafka/server-1.properties

快捷命令(每次开机都都需要启动) zookeeper-server-start.sh /usr/local/etc/kafka/zookeeper.properties

kafka-server-start.sh /usr/local/etc/kafka/server.properties kafka-server-start.sh /usr/local/etc/kafka/server-1.properties kafka-server-start.sh /usr/local/etc/kafka/server-2.properties kafka-server-start.sh /usr/local/etc/kafka/server-3.properties

/usr/local/system/src/kafka_2.11-1.1.1/bin/kafka-server-start.sh /usr/local/system/src/kafka_2.11-1.1.1/config/server.properties

新建topic tail -f /usr/local/system/src/kafka_2.11-1.1.1/logs/zookeeper.log /usr/local/system/src/kafka_2.11-1.1.1/bin/kafka-topics.sh --create --zookeeper 192.168.81.167:2181,192.168.81.168:2181 --replication-factor 2 --partitions 1 --topic test1

kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic zzyk kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 10 --topic otc-dev

#--zookeeper是集群列表,可以指定所有节点,也可以指定为部分列表 #--replication-factor 为复制数目,数据会自动同步到其他broker上,防止某个broker宕机数据丢失 #--partitions 一个topic可以切分成多个partition,一个消费者可以消费多个partition,但一个partition只能被一个消费者消费

生产消息 kafka-console-producer.sh --broker-list localhost:9092 --topic otc-dev kafka-console-producer.sh --broker-list localhost:9092 --sync --topic zzy0

kafka-console-producer.sh --broker-list 192.168.1.181:9092,192.168.1.181:9093,192.168.1.181:9094 --topic topic_1 消费消息 kafka-console-consumer.sh --zookeeper 127.0.0.1:2182 --from-beginning --topic otc-dev

kafka-console-consumer.sh --bootstrap-server localhost:2181 --from-beginning --topic LTC-ETH

查看当前全部主题 kafka-topics.sh --list --zookeeper localhost:2181 查看当前主题详细信息 kafka-topics.sh --zookeeper 127.0.0.1:2182 --describe --topic zzy10

查看全部主题信息 kafka-topics.sh --describe --zookeeper localhost:2181

查看consumer group列表(新版命令) kafka-consumer-groups.sh --new-consumer --bootstrap-server 127.0.0.1:9092 --list

指定消费组开始消费。 ./bin/kafka-console-consumer.sh --bootstrap-server XXXXXX:9092 --topic topic_t_base_organize --group metasso_center_organize_tag_ms 查看consumer group列表(老命令) kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --list

查看组信息中的分区使用情况 kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group test2

删除主题: kafka-topics.sh --delete --zookeeper localhost:2181 --topic zzyk 此时你若想真正删除它,可以如下操作:

 (1)登录zookeeper客户端:命令:./bin/zookeeper-client

 (2)找到topic所在的目录:ls /brokers/topics

 (3)找到要删除的topic,执行命令:rmr /brokers/topics/【topic name】即可,此时topic被彻底删除。
另外被标记为marked for deletion的topic你可以在zookeeper客户端中通过命令获得:ls /admin/delete_topics/【topic name】,

如果你删除了此处的topic,那么marked for deletion 标记消失

删除 消费者组 kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --delete --group

增加topic分区数 kafka-topics.sh --zookeeper 127.0.0.1:2181 --alter --partitions 60 --topic otc-dev

重新分区 kafka-reassign-partitions.sh --zookeeper 127.0.0.1:2181 --topics-to-move-json-file ./top.json --broker-list "0,1,2" --generate kafka-reassign-partitions.sh --zookeeper 127.0.0.1:2181 --reassignment-json-file ./top.json --execute kafka-reassign-partitions.sh --zookeeper 127.0.0.1:2181 --reassignment-json-file ./top.json --verify 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 查看某个组中的topic信息 kafka-consumer-groups.sh --zookeeper 127.0.0.1:2181 --group test2 --describe

kafka-consumer-groups.sh --new-consumer --bootstrap-server 127.0.0.1:9092 --group kafka_otc1 --describe

指定消费组消费信息

分别打开配置文件进行如下修改: broker.id=0 #三个broker的id不能相同,因此改为不同的id listeners=PLAINTEXT://192.168.10.152:9092 #服务器监听的地址,如果不配置从java.net.InetAddress.getCanonicalHostName()获得 host.name=192.168.10.152 #broker 机器ip zookeeper.connect=192.168.10.152:2181,192.168.10.153:2181,192.168.10.170:2181

"-daemon" 参数代表以守护进程的方式启动kafka server。 官网及网上大多给的启动命令是没有"-daemon"参数,如:“bin/kafka-server-start.sh config/server.properties &”,但是这种方式启动后,如果用户退出的ssh连接,进程就有可能结束,具体不清楚为什么。

kafka-manager启动 已经添加快捷操作命令: ~/kafka_manager nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=9001 &

最小配置是要用于kafka管理器状态的zookeeper主机。这可以在conf目录中的application.conf文件中找到。相同的文件将打包在分发zip文件中; 您可以在解压缩所需服务器上的文件后修改设置。

kafka-manager.zkhosts="my.zookeeper.host.com:2181" 您可以通过逗号分隔多个zookeeper主机,如下所示:

kafka-manager.zkhosts="my.zookeeper.host.com:2181,other.zookeeper.host.com:2181" 或者,ZK_HOSTS如果您不想对任何值进行硬编码,请使用环境变量。

ZK_HOSTS="my.zookeeper.host.com:2181"

nginx配置location

location = / {

只匹配"/".

[ configuration A ] } location / {

匹配任何请求,因为所有请求都是以"/"开始

但是更长字符匹配或者正则表达式匹配会优先匹配

[ configuration B ] } location ^~ /images/ {

匹配任何以 /images/ 开始的请求,并停止匹配 其它location

[ configuration C ] } location ~* .(gif|jpg|jpeg)$ {

匹配以 gif, jpg, or jpeg结尾的请求.

但是所有 /images/ 目录的请求将由 [Configuration C]处理.

[ configuration D ] }

@location 例子 error_page 404 = @fetch;

location @fetch( proxy_pass http://fetch; )

openresty最后成功编译安装的配置信息 ./configure --with-cc-opt="-I/usr/local/opt/openssl/include/ -I/usr/local/opt/pcre/include/" --with-ld-opt="-L/usr/local/opt/openssl/lib/ -L/usr/local/opt/pcre/lib/" --with-http_drizzle_module --with-http_iconv_module --with-http_postgres_module

7月12日

nginx日志 /usr/local/Cellar/nginx/1.15.0/logs

/usr/local/var/log/nginx 撮合引擎配置文件 /Users/apple/projects/exchange_engine

pstree |grep server.php pstree | grep server tail -f error.log tail -f /usr/local/Cellar/nginx/1.15.0/logs/error.log

tail -f /usr/local/var/log/nginx/error.log 查看nginx版本信息详细信息 nginx -V