暴躁的码农 - 2019年9月
type: channel
link: https://zacms.com/index.php/2019/09/
description: 让建站变得简单。无暴躁，不编程，我爱暴躁，我爱编程，编程使我暴躁。精通PHP、PYTHON、C、C++、Java、C#、VB、HTML、Delphi、JavaScript、PHP等语言的拼写,熟练PhotoShop、Illustrator CS、CorelDraw、Flash CS、AutoCAD、Office等软件的卸载,掌握Windows Server、Unix、Lunix等操作系统的关机
items: navi 命令行备忘录
items: github多账户key问题处理
items: summer整合tp6

navi 命令行备忘录
type: item
date: 2019-09-27T09:42:00+08:00
description: 特性：- 通过给定关键字或文字描述，更便捷地查找命令 - 如果作为长命令的辅助部分，查找后的结果也可以直接复制粘贴到主命令 - 命令行使用习惯或备忘录可以与其它人共享 - 该工具也能实现命令行的自动补全 先安装fzfgit clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf ~/.fzf/install . ~/.bashrc再安装navigit clone --depth 1 http://github.com/denisidoro/navi /opt/navi cd /opt/navi sudo make install如果通过ssh每次访问都需要重新source一下，更改bashvim ~/.bash_profile 加入if test -f .bashrc ; then source .bashrc fi即可使用：navi

github多账户key问题处理
type: item
date: 2019-09-17T10:54:00+08:00
description: 由于之前summer放在我个人账户里面，前缀不是很好看，所以新申请了个账户。但是同一台电脑key登录多个账户遇到问题，网上搜索了下，解放方法如下:创建一个新keyssh-keygen -t rsa -C "**@qq.com" -f suframe 编辑~/.ssh/config, 没有就新增一个Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa Host suframe.github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/suframe在项目中的remotegit remote add origin git@suframe.github.com:suframe/proxy.git注意： suframe是我的名字，需要替换成你自己的。 Host suframe.github.com可以随便写成你自己的，只要后面保持一致即可

summer整合tp6
type: item
date: 2019-09-10T18:25:00+08:00
description: 在完成基础对服务注册发现等功能后，如果要写业务，还是需要一套比较好用对后端框架作为支撑。 选了一大圈没找到满意的，准备自己写，发现找组件，组合这些组件也是很大的工程，而且代码质量不能保证。综合一下，就选了使用人数较多，门槛较低对thinkphp6, 由于tp6正式版还没有出来，所以在开发版上进行集成。等tp6正式版发布，我也发布个summer正式版，哈哈哈，tp也有轻量级对微服务化架构支撑了。整合需求无侵入低配置整合方案基于think-swoole开发suframe/think进行集成，包地址：https://packagist.org/packages/suframe/think大致开发思路：新增thinkphp对services，用于增加console命令初始化配置文件启动tcp服务，自动注册增加rpc接口同步测试接下来完整的走下开发流程1. 安装summer代理网关composer create-project suframe/summer-proxy=@dev cd summer-proxy php app/summer tcp:start2. 安装tp6composer create-project topthink/think=6.0.x-dev tp cp .example.env .env修改.env 内容：APP_DEBUG = true，打开调试模式3. 修改composer.json（重要）这步很重要，因为suframe-think还在开发版，没有发布正式版，只能先安装dev版增加到底部如下{ "minimum-stability": "dev", "prefer-stable": true }4. 安装suframe-thinkcomposer require topthink/think-swoole composer require suframe/think5. 增加测试文件创建app/rpc目录，新增HelloRpc.php,内容如下：<?php namespace app\rpc; class HelloRpc { /** * hello 测试 * @param null $name * @return string */ public function run($name = null){ return 'hello ' . $name; } }6. 开始测试启动rpc服务php think swooleTcp同步rpc接口新窗口打开命令行php think swooleTcp sync此时config目录下会有个.phpstorm.meta.php，这个就是用于rpc提示对文件，当然这个是用于phpstorm编辑器增加测试action打开app/controller/Index.php增加action， public function rpc($name = 'ThinkPHP6') { $rs = [ \suframe\core\components\rpc\SRpc::route('/demo/HelloRpc')->run(1111), (new \app\rpc\HelloRpc())->run(2222) ]; return \think\response\Json::create($rs); }这里用绝对路径而不是use是因为好多朋友直接用记事本编辑，没有自动引入usesuframecorecomponentsrpcSRpc::route(' 这句代码的时候，输入/ 会提示出所有对rpc接口，就是前面sync的时候创建对启动tp6php think php然后访问：http://127.0.0.1:8000/index/rpc总结来看看我们启动了些什么服务suframe/proxy 代理网关和服务注册发现 Asuframe/think 基于tp6的rpc服务 Bthink run tp6的服务启动 C浏览器访问的流程: 浏览器 => c 控制器 => rcp调用 c的rpc接口 当然你可以重新起一个，修改swooleTcp里面对端口和注册的path即可到此summer已经集成到tp6了，至于统一日志和统一配置后面来慢慢处理，这个涉及到tp的一些流程监控，属于定制。一起high起来~~~