摘要: 项目生态升级 spring-cloud 主框架再次调研 2020年已经调研过了 spring-cloud 较为基础的是服务发现 duboo 太久不更新,可能是比较稳定,pass 云原生的mesh类方案,优秀,复杂度过高,但作为补充和跨平台选型,与此次调研不冲突,即使mesh强大,也需要了解下spri 阅读全文
posted @ 2021-06-21 23:05 cclient 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 前言 死锁和具体的开发语言无关,工业界使用的主流开发语言者都提供并行/并发,线程/进程,及各种锁的元语 多线程导致的死锁在现在的代码开发中已经很少见了,现在日常谈到的死锁主要是sql这类db的事务导致的sql死锁 因为大部分开发工作已经很少直接和锁打交道,都是各种封装好的组件,如java的juc等。 阅读全文
posted @ 2021-06-21 23:03 cclient 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 基于gitlab runner 的did(docker in docker ) ci/cd k8s方案 首先,jenkins很强大,尤其是各种插件的支持,但实际个人工作中,用到的并不多,早期大型项目布署负载各种脚本和远程调用,目前所有项目和k8s深耦合,已经拆解为各种云服务,jenkins的大部分功 阅读全文
posted @ 2021-06-21 22:59 cclient 阅读(987) 评论(0) 推荐(0) 编辑
摘要: 某云es节点失效,重置primary,迁移分区 接手另一个团队的elasticsearch服务,服务布署在某云上,迁移计划执行期间,集群状态yellow,多sharding UNASSIGNED 夹一个私货,个人其实是不喜欢云的,有能力自已维护机房和物理服务器的,还是用服务器成本低 集群版本5.5, 阅读全文
posted @ 2021-06-21 22:54 cclient 阅读(404) 评论(0) 推荐(1) 编辑
摘要: 算法服务布署在k8s上 服务走了两层代理,出问题其实并不觉得意外,因为代理层数过多 kong → nginx-ingress → svc 通过kong访问,部分请求返回502 <html><head><title>502 Bad Gateway</title></head><body><center 阅读全文
posted @ 2021-06-21 22:48 cclient 阅读(1090) 评论(0) 推荐(0) 编辑
摘要: 个人比较熟悉elk 对logstash也相对熟悉,有较丰富的插件应用使用经验和一部分插件的开发经验 但logstash毕竟基于jvm,负载较重 同时logstash执行一些数据dsl操作,也是不小的负载 对一般的服务不影响 但如一些轻量的客户端,logstash过重 收集es集群所有节点慢查询日志, 阅读全文
posted @ 2021-06-21 22:42 cclient 阅读(1337) 评论(0) 推荐(0) 编辑
摘要: elasticsearch 包安装方式单点启动多服务 搞调研分别以rpm包的形式布署了es官方版和亚马逊分发版 https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html htt 阅读全文
posted @ 2021-06-21 22:36 cclient 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 升级es集群同时更新同版本ik词包测试发现检索不一致 对比了两版本自编译词包的代码,同时查看es变更日志,发现问题点 ik从6.* 到7.* 基本分词相关的功能性代码变更,主要变更的是日志内容(中文变英文),加载远程词库的一些调整 经测试导致影响的主要变化为 https://github.com/m 阅读全文
posted @ 2021-06-21 22:35 cclient 阅读(546) 评论(0) 推荐(0) 编辑
摘要: 两集群esA esB,一致的docs数,doc内容,mapping等,区别只是es的版本不同(及相应的分词jar包不同,但是jar包只是针对不同es版本做的适配,实际行为完全一致) 同样的dsl,但是有1%的dsl查询结果不一致 首先用不一致的dsl分别查询esA,esB,获取命中文档 matchA 阅读全文
posted @ 2021-06-21 22:30 cclient 阅读(1538) 评论(0) 推荐(0) 编辑
摘要: 官方的静态lb已经满足大部分场景 缺点是全静态,动态扩展能力不强 动态扩展有两个方向 方式一 是聚焦于spring-cloud-gateway本身,实现一些自定义的方法 方式二 是依赖spring-cloud的生态,consul/nacos注册中心,或config配置中心,bus事件队列动态更新配置 阅读全文
posted @ 2021-06-21 22:27 cclient 阅读(2537) 评论(0) 推荐(0) 编辑
摘要: 实际是该项目的延申 cclient/elasticsearch-multi-cluster-compat-proxy: 网关代理兼容ES6 es7 proxy and compat elasticsearch version 7 and elasticsearch version 6's _sear 阅读全文
posted @ 2021-06-21 22:26 cclient 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 谈不上核心分析 gateway 网关,本质是实现一层反向代理,client提交 获取request,提交给upstream 把upstream 返回的response 返回给client 查看spring-cloud-gateway的反向代理的实现位置 spring-cloud-gateway 提供 阅读全文
posted @ 2021-06-21 22:24 cclient 阅读(240) 评论(0) 推荐(0) 编辑
摘要: spark 累加器的理论概念不用多说 原生支持的long/couble数值类加和list,但生产上实际使用场景,map<>类累加的用途非常广泛 class CollectionAccumulator[T] extends AccumulatorV2[T, java.util.List[T]] cla 阅读全文
posted @ 2021-06-21 22:22 cclient 阅读(164) 评论(0) 推荐(0) 编辑
摘要: // 21/04/23 17:47:51 WARN AsyncProcess: #43, table=ns:table_test, attempt=1/1 failed=108ops, last exception: org.apache.hadoop.hbase.RegionTooBusyExce 阅读全文
posted @ 2021-06-21 22:20 cclient 阅读(1533) 评论(0) 推荐(0) 编辑
摘要: 创建region,官方提供4种重载 hbase shell 里创建table 就不说了,简单资料也多,最大的坑是版本冲突,或包缺失 例 create 'ns_test:table_test', {NAME => 'cf', COMPRESSION => 'SNAPPY', BLOCKCACHE => 阅读全文
posted @ 2021-06-21 22:19 cclient 阅读(754) 评论(0) 推荐(0) 编辑
摘要: 读写方式 其实个人最近访问hbase 都是通过shc df/sql 来访问的 df的读写方式,足够覆盖90%的场景,但该方案有一个前提是,明确的知道hbase 的列族和列信息,新项目都会规范这一点,可以使用 但有些历史包袱的项目,列族是明确的,但是列族里的列信息是不明确的,正好要做一个旧项目列的标准 阅读全文
posted @ 2021-06-21 22:16 cclient 阅读(1617) 评论(0) 推荐(0) 编辑