摘要: 工作已经很多年了, 总结了一下标准的产品开发流程, 供大家参考理解. 2021.6.27 by Felix 一切的前提: 要有独立思想, 要充分理解公司战略和目标, 熟悉业务, 贴近业务, 密切合作 前言: 不要相信需求方, 不要相信运营, 不要相信产品, 不要相信技术, 不要相信设计师, 不要相信 阅读全文
posted @ 2021-07-16 17:57 飞云~风之谷 阅读(258) 评论(0) 推荐(0)
摘要: 对于初级管理者来说, 经常会出现时间碎片化, 关键事项抓不住的情况, 此时我们可以试着推行"标准管理模版". 举个模版的例子如下: 名称 描述 对象 上线通知 已经上线的项目要通知相关需求方/部门, 并安排相关培训. (已经做的事情要让别人知晓) 组员, 需求方, 产品 项目进度 项目进度是否正常, 阅读全文
posted @ 2021-07-16 17:54 飞云~风之谷 阅读(121) 评论(0) 推荐(0)
摘要: Dubbo 可以实现的扩展很多, 官方文档在这: https://dubbo.apache.org/zh/docs/v2.7/dev/impls/ (太简单了....) 下面我们实现一个Route Factory, 它会根据参数中的workzone来选择合适的Invoker实例, 可以实现一定程度上 阅读全文
posted @ 2021-07-16 17:51 飞云~风之谷 阅读(659) 评论(1) 推荐(0)
摘要: Dubbo 可以实现的扩展很多, 官方文档在这: https://dubbo.apache.org/zh/docs/v2.7/dev/impls/ (太简单了....) 下面我们实现一个Load Balance, 它会根据参数中的workzone来选择合适的Invoker实例, 可以实现一定程度上的 阅读全文
posted @ 2021-07-16 17:47 飞云~风之谷 阅读(369) 评论(0) 推荐(0)
摘要: 此文是一个完整的例子, 包含可运行起来的源码. 此例子包含以下部分: 网关层实现自定义LoadBalancer, 根据Header选取实例 服务中的Feign使用拦截器, 读取Header Feign的LoadBalancer也是用网关一样的实现 使用Web Filter来统一设置header变量, 阅读全文
posted @ 2021-07-16 17:45 飞云~风之谷 阅读(281) 评论(0) 推荐(0)
摘要: 现在我们简单地来定制二个 ServiceInstanceListSupplier, 都是zone-preference的变种. 为了方便, 我重新调整了一下项目的结构, 把一些公用的类移动到hello-pubtool 模块, 这样网关项目和Feign项目就能复用一样的类了. A. main和beta 阅读全文
posted @ 2021-07-16 17:42 飞云~风之谷 阅读(1922) 评论(0) 推荐(0)
摘要: 上面看到直接通过网关访问微服务是可以实现按区域调用的, 那么微服务之间调用是否也能按区域划分哪? 下面我们使用FeignClient来调用微服务, 就可以配合LoadBalancer实现按区域调用. 首先我们新建一个微服务模块 hello-nameservice, 用来调用 hello-remote 阅读全文
posted @ 2021-07-16 17:39 飞云~风之谷 阅读(180) 评论(0) 推荐(0)
摘要: 注意: 因为涉及到配置测试切换, 中间环节需按此文章操作体验, 代码仓库里面的只有最后一步的代码 准备好了微服务, 那我们就来看看网关+负载均衡如何一起工作 新建一个模块hello-gateway, 开启gateway和loadbalancer, pom部分如下: <?xml version="1. 阅读全文
posted @ 2021-07-16 17:37 飞云~风之谷 阅读(316) 评论(0) 推荐(0)
摘要: 我们准备一下用于查询姓名的微服务. 首先定义一下服务的接口, 新建一个空的Maven模块hello-remotename-core, 里面新建一个类: public interface RemoteNameService { String readName(int id) ; } 接下来的微服务都实 阅读全文
posted @ 2021-07-16 17:32 飞云~风之谷 阅读(75) 评论(0) 推荐(0)
摘要: 最近研究了一下Spring Cloud里面的灰度发布, 看到各种各样的使用方式, 真是纷繁复杂, 眼花缭乱, 不同的场景需要不同的解决思路. 那我们也来实践一下最简单的场景: 区域划分: 服务分为beta(线上预发布环境)和main主生产环境 区域隔离情况 试情况可能有三种选择: main和beta 阅读全文
posted @ 2021-07-16 17:29 飞云~风之谷 阅读(104) 评论(0) 推荐(0)
摘要: 最近研究了一下Spring Cloud的灰度发布, 发现方法真是多. 这里先提供一个修改Eureka注册中心里的instance实例的metadata的脚本, 可以方便地用来测试效果. 使用举例: sh eureka.sh BETAZONE-HELLO-REMOTENAME 172.18.0.145 阅读全文
posted @ 2021-07-16 16:50 飞云~风之谷 阅读(252) 评论(0) 推荐(0)
摘要: 去年边学边写了搞了很久, 已经好久没继续开发了, 先放出来供大家参考吧. 发现自己的学习能力还是不错的. 技术点: 使用QT, QML技术 代码参考: https://github.com/cnscud/simpletodo 开发时记录的一些开发步骤, 供参考. OK 保存窗口位置 任务维护: OK 阅读全文
posted @ 2021-07-16 16:43 飞云~风之谷 阅读(578) 评论(0) 推荐(0)
摘要: 需求: Nginx根据参数来输出不同的header 我们想用Nginx来判断一些通用的参数, 根据参数情况在输出中不同的header, 或者cookie, 那么根据正常思路, 有如下配置: location ^~ /test1/ { root /home/app/services/test_html 阅读全文
posted @ 2021-07-16 16:40 飞云~风之谷 阅读(1553) 评论(0) 推荐(0)
摘要: 需要自动升级版本的AAA项目发布 (有内部依赖时) 步骤比较复杂, 有一些需要根据实际情况调整. 考虑了以下几种可能性: 依赖模块的版本有更新 依赖模块版本没更新 依赖模块的版本号: 直接定义, 用属性定义的 依赖项目已经升级过多次版本, 本项目没有跟进 依赖项目跳过了几个版本(没有发布直接跳过), 阅读全文
posted @ 2021-07-16 16:39 飞云~风之谷 阅读(879) 评论(0) 推荐(0)
摘要: 参考了网络上很多文章, 特此感谢. Maven项目规范 同一项目中所有模块版本保持一致 子模块统一继承父模块的版本 统一在顶层模块Pom的节中定义所有子模块的依赖版本号,子模块中添加依赖时不要添加版本号 开发测试阶段使用SNAPSHOT 生产发布使用RELEASE或(无后缀)正式版 新版本迭代只修改 阅读全文
posted @ 2021-07-16 16:33 飞云~风之谷 阅读(91) 评论(0) 推荐(0)
摘要: 参考 http://www.sail.name/2018/12/16/ssh-config-of-mac/ 有一点注意 Host 的名字和 HostName改为一致. 因为从git仓库复制的地址是全程. Host code.aliyun.com HostName code.aliyun.com Us 阅读全文
posted @ 2021-07-16 16:30 飞云~风之谷 阅读(36) 评论(0) 推荐(0)
摘要: 一个QT窗口如下可以做到无边框: Window { id: window //Designer 竟然不支持..., 设计模式时要注意 flags: Qt.FramelessWindowHint width: 500 height: 300 title: "Window Title" } 不过要注意, 阅读全文
posted @ 2021-07-16 16:16 飞云~风之谷 阅读(738) 评论(0) 推荐(0)
摘要: 最近看看磁盘觉得有点小, 就整理了一下, 经过一番折腾, 发现MacOS卸载软件可真是不省心啊. 从应用里移到垃圾桶仅仅是第一步, 当然对于不读写任何文件的应用也许就可以了. 咱们看看赶紧卸载一个软件, 需要影响那些目录. 以下仅为示例, 是我测试安装一个软件时候的, 结果留下一大堆垃圾, 要是处女 阅读全文
posted @ 2021-07-16 16:03 飞云~风之谷 阅读(112) 评论(0) 推荐(0)
摘要: 关键点 使用Model驱动Instantiator QML里面的hashmap: QQmlPropertyMap 上一次说到用 QQmlApplicationEngine 多次load的方式创建多个一级窗口 详见这里, 但是窗口数据需要自己设置, 不如Model设置方式方便, 窗口如果比较复杂, 数 阅读全文
posted @ 2021-07-16 16:01 飞云~风之谷 阅读(585) 评论(0) 推荐(0)
摘要: 如何动态地创建多个长的一样的主窗口哪(数据当然不一样), 用QML也是可以实现的. 简单的地说, 就是调用多次load即可. QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QGuiApplication app(argc, 阅读全文
posted @ 2021-07-16 15:55 飞云~风之谷 阅读(798) 评论(0) 推荐(0)