如何阐述自己做了一个什么样的东西
线上qps2000,主要的性能瓶颈在于出现在数据库I/O上。另外,如果是一个正常部署的容器,qps能达到几百就不错了。资讯服务现在做了静态的底层页,所以热点新闻多数会命中底层页,即便没有命中底层页,也会走多层的缓存,不会直接打到资讯服务的接口上。
技术方案
解决哪些问题?模块如何拆分?
解决资讯服务mongo pg数据不是同事写入的问题,该问题会造成底层页404。
收敛资讯发文入口、目前发文都是直接写的PG,不好控制。
竞争对手的解决方案是什么?行业领先的解决方案是什么?
收敛服务业务垂直分割
数据存储怎么设计?扩展性考虑了嘛?
存储:Mongodb+PG
扩展性:mongo支持分表(按照SEQ分表)、非基础属性计划迁移到画像。
是否需要缓存?缓存如何设计?如何保证数据一致性?缓存失效怎么处理?
无缓存
代码设计是怎么样的?使用什么设计模式解决问题?
无
需要调用外部哪些服务?所有调用的处理容错和监控做了嘛?(所有服务都认为不可信:包括可用性,数据字段返回异常)
依赖的服务:stockMatch
容错:Sentinel 对 stockMatch、写mongo、写PG(出基础表以外的)、查pub205之类的
降级:Sentinel 对 stockMatch、写mongo、写PG(出基础表以外的)、查pub205之类的
监控: 基础监控报警 、jvm指标、所有写入的操作。
日志:所有写入的操作。
这个开发任务可以抽取哪几个组件?
基于接口抽象出http sdk(composer)
这个开发任务可以抽取哪几个服务?
服务:newsinfo(http)
是否需要独立平台来解决更大的系统性问题?
独立部署
性能瓶颈点是什么?业务需求并发是多少?如何保证并发支撑?如何做到线性扩容?
瓶颈:数据库,mongodb的IO,PG的IO。
并发:发文接口没有统计。需要挖一下日志。
并发支持:多副本
线性扩容:mongo可以做分区扩容、PG@ifind、容器副本扩容、cpu扩容
系统关键的容错方案是什么?如何兜底?
写PG失败:重试、如果不是基础表就丢弃。基础报表失败则发文失败。
写mongo失败:重试、不处理mongo了。
stockmatch失败:重试、丢弃
可测性如何保证?测试工具,测试数据能否提供?
在flashcms想中的savenews方法记录$item序列化日志,在测试环境上回放。验证PG数据的数据和正式环境的数据是否一致,验证mongo的数据格式。验证底层页。
工具:item日志解析脚本、回放脚本、数据对比工具
测试数据:$item的日志
监控如何考虑?这个业务或者功能有哪些关键节点?使用什么方式的监控?
基础监控模块,流控进行监控,监控 写入mongo、写入PG。失败进行报警。
日志需要覆盖哪些主要流程来确保后续的排查方案?
写入时、feign日志、feign失败日志
排查方案:记录elk日志
问题排查方案是什么?排查工具是否提供?
监控、Elk。
部署方案是什么?
k8s独立部署、
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
如何阐述自己做了一个什么样的东西
线上qps2000,主要的性能瓶颈在于出现在数据库I/O上。另外,如果是一个正常部署的容器,qps能达到几百就不错了。资讯服务现在做了静态的底层页,所以热点新闻多数会命中底层页,即便没有命中底层页,也会走多层的…...
![](https://www.ngui.cc/images/no-images.jpg)
TC3XX - MCAL知识点(二十二):QSPI 同步与异步 Mcal配置及代码实战
目录 1、MCAL配置 1.1、配置目标 1.2、同步QSPI配置 1.2.1、SpiGeneral 1.2.2、SpiMaxChannel 1.2.3、SpiMaxJob...
![](https://img-blog.csdnimg.cn/img_convert/2222037583dfd54ac21fcf6c4bf006f6.png)
led台灯哪些牌子性价比高?推荐几款性价比高的护眼台灯
作为学龄期儿童的家长,最担心的就是孩子长时间学习影响视力健康。无论是上网课、写作业、玩桌游还是陪伴孩子读绘本,都需要一个足够明亮的照明环境,因此选购一款为孩子视力发展保驾护航的台灯非常重要。为大家推荐几款性价比高的护眼台灯。 …...
![](https://www.ngui.cc/images/no-images.jpg)
什么情况下容易发生锁表及如何处理
目录 什么情况下容易发生锁表发生锁表怎么解决 什么情况下容易发生锁表 在数据库中,当多个事务同时竞争访问同一个表的资源时,可能会发生锁表现象,导致性能下降甚至阻塞。以下情况容易导致锁表问题: 大事务操作:如果一…...
![](https://img-blog.csdnimg.cn/e90adc1f769748c99cbf640e205422c1.png)
elk开启组件监控
elk开启组件监控 效果: logstash配置 /etc/logstash/logstash.yml rootnode1:~# grep -Ev "^#|^$" /etc/logstash/logstash.yml path.data: /var/lib/logstash path.logs: /var/log/logstash xpack.monitoring.enabled: true xpack.monitoring.elasti…...
![](https://img-blog.csdnimg.cn/abec0da97bc4451fb1a2b975417dc32f.jpeg#pic_center)
Java Random 类的使用
Java中的Random类是用来生成伪随机数的工具类。它可以用来生成随机的整数、浮点数和布尔值。以下是Java Random类的一些常见用法: 创建Random对象: Random random new Random();生成随机整数: int randomNumber random.nextInt(); // 生…...
![](https://img-blog.csdnimg.cn/46aba8174d604ccc9a6d9eff62d2a7b2.png)
完美的分布式监控系统——Prometheus(普罗米修斯)与优雅的开源可视化平台——Grafana(格鲁夫娜)
一、基本概念 1、之间的关系 prometheus与grafana之间是相辅相成的关系。作为完美的分布式监控系统的Prometheus,就想布加迪威龙一样示例和动力强劲。在猛的车也少不了仪表盘来观察。于是优雅的可视化平台Grafana出现了。 简而言之Grafana作为可视化的平台ÿ…...
![](https://img-blog.csdnimg.cn/6c5b8e2f4b6347b4a5dffe9a65614b53.png)
pycharm的Terminal中如何设置打开anaconda3的虚拟环境
在pycharm的File -> Settings -> Tools -> Terminal下面,如下图所示 修改为红框中内容,然后关闭终端在重新打开终端,即可看到anaconda3的虚拟环境就已经会被更新...
![](https://img-blog.csdnimg.cn/c1cd80f8473e48e39d2b36fb95a30378.png)
Jmeter(四) - 从入门到精通 - 创建网络测试计划(详解教程)
1.简介 在本节中,您将学习如何创建基本的 测试计划来测试网站。您将创建五个用户,这些用户将请求发送到JMeter网站上的两个页面。另外,您将告诉用户两次运行测试。因此,请求总数为(5个用户)x(2…...
![](https://img-blog.csdnimg.cn/10dc605fd8c4478398e7ed3be4bf7899.png)
Flowable-结束事件-空结束事件
目录 定义图形标记XML内容 定义 空结束事件是最常见的一种结束事件,也是最简单的一种结束事件,只要把结束任务置于流程 或分支的最后节点,流程实例运行到该节点的时候,流程引擎就会结束该流程实例或分支。前面提 到,结…...
![](https://img-blog.csdnimg.cn/6bcc2aca3f6a4a0ca36991dbe259314e.png)
Elasticsearch:如何创建 Elasticsearch PEM 和/或 P12 证书?
你是否希望使用 SSL/TLS 证书来保护你的 Elasticsearch 部署? 在本文中,我们将指导你完成为 Elasticsearch 创建 PEM 和 P12 证书的过程。 这些证书在建立安全连接和确保 Elasticsearch 集群的完整性方面发挥着至关重要的作用。 友情提示:你可…...
![](https://img-blog.csdnimg.cn/504599a4ebee4bc7a7d7121d41a9f900.png#pic_center)
数仓架构模型设计参考
1、数据技术架构 1.1、技术架构 1.2、数据分层 将数据仓库分为三层,自下而上为:数据引入层(ODS,Operation Data Store)、数据公共层(CDM,Common Data Model)和数据应用层ÿ…...
![](https://www.ngui.cc/images/no-images.jpg)
RedisTemplate.opsForGeo()用法简介并举例
RedisTemplate.opsForGeo()是RedisTemplate类提供的用于操作Geo类型(地理位置)的方法。它可以用于对Redis中的Geo数据结构进行各种操作,如添加地理位置、获取距离、获取位置信息等。 下面是一些常用的RedisTemplate.opsForGeo()方法及其用法…...
![](https://img-blog.csdnimg.cn/1423b68274fd42a5a0b288922d07887f.png)
Android OkHttp源码分析--拦截器
拦截器责任链: OkHttp最核心的工作是在 getResponseWithInterceptorChain() 中进行,在进入这个方法分析之前,我们先来了 解什么是责任链模式,因为此方法就是利用的责任链模式完成一步步的请求。 拦截器流程: OkHtt…...
![](https://www.ngui.cc/images/no-images.jpg)
docker:如何传环境变量给entrypoint
使用shell,不带中括号 ENTRYPOINT .\main -web -c $CONFIGENTRYPOINT [sh, -c, ".\main -web -c $CONFIG"]docker build --build-arg ENVIROMENTintegration // 覆盖ENTRYPOINT命令 使用shell脚本 ENTRYPOINT ["./entrypoint.sh"]entrypoint.sh 镜像是a…...
![](https://img-blog.csdnimg.cn/80c65153d8f447faad66f93158494848.png)
kuboard安装和使用
windows平台下使用docker和docker-compose部署Kuboard,并添加Docker Desktop for windows的k8s单机集群 使用docker安装 docker run -d \--restartunless-stopped \--namekuboard \-p 80:80/tcp \-p 10081:10081/tcp \-e KUBOARD_ENDPOINT"http://内网IP:80&…...
![](https://img-blog.csdnimg.cn/114c4e2012094caba7a5d5ad517c48fb.png)
海外直播种草短视频购物网站巴西独立站搭建
一、市场调研 在搭建网站之前,需要进行充分的市场调研,了解巴西市场的消费者需求、购物习惯和竞争情况。可以通过以下途径进行市场调研: 调查问卷:可以在巴西市场上发放调查问卷,了解消费者的购物习惯、偏好、购买力…...
![](https://www.ngui.cc/images/no-images.jpg)
C#图像均值和方差计算实例
本文展示图像均值和方差计算实例,分别实现RGB图像和8位单通道图像的计算方法 实现代码如下: #region 方法 RGB图像均值 直接操作内存快/// <summary>/// 定义RGB图像均值函数/// </summary>/// <param name="bmp"></param>/// <retur…...
![](https://img-blog.csdnimg.cn/f5290f394efa4fa3bd9423fd1403511a.png#pic_center)
【动态规划】数字三角形
算法提高课课堂笔记。 文章目录 摘花生题意思路代码 最低通行费题意思路代码 方格取数题意思路代码 摘花生 题目链接 Hello Kitty想摘点花生送给她喜欢的米老鼠。 她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。 地里每个道…...
![](https://img-blog.csdnimg.cn/6cbcd6c17cec4dba9bb3c0f895f02fa2.png)
【C++】开源:ceres和g2o非线性优化库配置使用
😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍ceres和g2o非线性优化库配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下&…...
![](https://img-blog.csdnimg.cn/f605a81e9e2241cbbd1f58889d2bb4a5.png)
OCR学习
...
![](https://www.ngui.cc/images/no-images.jpg)
《练习100》56~60
题目56 M 5 a [1, 2, 3, 4, 5] i 1 j M - 1 while i < M:# print(f"第{i1}轮交换前:i {i}, j {j} , a[{i}] {a[i]} , a[{j}] {a[j]}")a[i], a[j] a[j], a[i]# print(f"第{i1}轮交换后:i {i}, j {j} , a[{i}] {a[i]} , a[…...
![](https://img-blog.csdnimg.cn/03645256e33b4027a6ec0b563d580fdb.png)
基于大数据为底层好用准确性高的竞彩足球比分预测进球数分析软件介绍推荐
大数据与贝叶斯理论在足球比赛分析与预测中的应用 随着科技的不断进步,大数据分析在各个领域的应用也越来越广泛,其中包括体育竞技。足球比赛作为全球最受欢迎的运动之一,也借助大数据和贝叶斯理论来进行模型分析和预测。本文将通过结合贝叶…...
![](https://img-blog.csdnimg.cn/bcb38dfa790d4c2aa71095d0fe322c77.png)
Django进阶
1.orm 1.1 基本操作 orm,关系对象映射。 类 --> SQL --> 表 对象 --> SQL --> 数据特点:开发效率高、执行效率低( 程序写的垃圾SQL )。 编写ORM操作的步骤: settings.py,连…...
![](https://www.ngui.cc/images/no-images.jpg)
Linux系统服务管理
服务命令比较 操作 Linux 6 Linux7 服务开机自动启动 chkconfig --level 35 iptables on systemctl enable firewalld.service 服务器开机不自动启动 chkconfig --level 35 iptables off systemctl disable firewalld.service 加入自定义服务 chkconfig --add aaa s…...
![](https://img-blog.csdnimg.cn/7ab0505e2dcb4eeb8bb3a3c8b54e7881.png)
C#之控制台版本得贪吃蛇
贪吃蛇小时候大家都玩过,具体步骤如下: 1.给游戏制造一个有限得空间。 2.生成墙壁,小蛇碰撞到墙壁或者咬到自己的尾巴,游戏结束。 3.生成随机的食物。 4.吃掉食物,增加自身的体长,并生成新的食物。 具体代码如下&…...
![](https://img-blog.csdnimg.cn/ebc9ba1d4cce466d819a51378cf49b0b.png#pic_center)
ffplay数据结构分析(一)
本文为相关课程的学习记录,相关分析均来源于课程的讲解,主要学习音视频相关的操作,对字幕的处理不做分析 下面我们对ffplay的相关数据结构进行分析,本章主要是对PacketQueue的讲解 struct MyAVPacketList和PacketQueue队列 ffp…...
![](https://img-blog.csdnimg.cn/5624c2fe1ff94c6591dc0c8a2af91609.png)
JavaWeb学习|JSP相关内容
1.什么是JSP Java Server Pages: Java服务器端页面,也和Servlet一样,用于动态Web技术! 最大的特点: 。写JSP就像在写HTML 。区别: 。HTML只给用户提供静态的数据 。JSP页面中可以嵌入JAVA代码,为用户提供动态数据 JSP最终也会被转换成为一…...
![](https://img-blog.csdnimg.cn/1c54a41b387544968a3fc2aa5da3069b.png)
Springboot后端通过路径映射获取本机图片资源
项目场景: 项目中对图片的处理与查看是必不可少的,本文将讲解如何通过项目路径来获取到本机电脑的图片资源 如图所示,在我的本机D盘的图片测试文件夹(文件夹名字不要有中文)下有一些图片, 我们要在浏览器上访问到这些图片&#…...
![](https://img-blog.csdnimg.cn/584ca5ebdbe045999dcd3fa55c5a2e21.png)
【IDEA + Spark 3.4.1 + sbt 1.9.3 + Spark MLlib 构建鸢尾花决策树分类预测模型】
决策树进行鸢尾花分类的案例 背景说明: 通过IDEA Spark 3.4.1 sbt 1.9.3 Spark MLlib 构建鸢尾花决策树分类预测模型,这是一个分类模型案例,通过该案例,可以快速了解Spark MLlib分类预测模型的使用方法。 依赖 ThisBuild /…...
![](/images/no-images.jpg)
合肥做网站优化/做推广app赚钱的项目
有时因为病毒修改或人为删除了某个系统文件,造成系统无法正常运行的时候, 如果知道被修改或丢失的文件的文件名,我们就可以试着用光盘来修复,但是修复的时间很长,我们可以直接用expand命令来提取所需要的那个文件. 其用法如下: EXPAND [-r] Source DestinationEXPAND -r Source…...
![](/images/no-images.jpg)
做网站优化公司/关键词网站
Linux I2C程序框架通常包括以下几个部分: 包含I2C相关头文件:在程序中使用I2C功能时,需要包含Linux内核中的I2C相关头文件。通常包括"i2c-dev.h"和"i2c-io.h"。 打开I2C设备文件:使用Linux的"open()"函数打开I2C设备文件。I2C设备文件通常位…...
做优化的网站必须独立IP吗/友链价格
键字:《JAVA基础》 自学笔记序时令已经过了白露,转眼就快到了中秋佳节,天天渐渐变凉,一派秋天肃杀的景象。2020年注定是一个不平凡的一年。新型肺炎带来的影响还在持续。生活和经济都蒙上了一些不确定的薄薄的灰色。最近疫情期&am…...
![](/images/no-images.jpg)
营销型网站和展示型网站的区别/百度站长工具seo综合查询
对于C语言的指针类型,有点乱,测试了一下。 了解到: 1.声明赋值与非声明赋值 2. * 与 ** 的区别与意义 3. 一些 & 和 * 的利用方法 如 int * b<value>,在这里b是int型指针, 声明时候需要加 * ,但是声明时赋值…...
![](https://www.oschina.net/img/hot3.png)
苏州建网站必去苏州聚尚网络/泉州网站建设优化
2019独角兽企业重金招聘Python工程师标准>>> myisam:如果对事务要求不高,同时是以查询和添加为主,可以考虑使用此种存储引擎。不如bbs中的发帖表,回复表等 批量插入速度高,支持全文索引,表锁 in…...
![](/images/no-images.jpg)
武汉网站设计师培训学校/淘宝运营培训班
计算机软硬件实训报告汇编新疆大学实习(实训)报告实习(实训)名称: 计算机软硬件工程实践学 院: 电气工程学院专 业、 班 级: 电气15-3指 导 教 师: 蔺红 娄毅报 告 人: 赵泽明学 号: 20152101202时 间&…...