LeeQingShui's Blog

  • 标签

  • 分类

  • 归档

  • 关于

(六)ElasticSearch 集群分片未分配问题探究及解决方案

发表于 2021-05-20 | 更新于 2024-01-23 | 分类于 全文检索
本文字数: 4.6k | 阅读时长 ≈ 7 分钟

前言

  正常来讲,Elasticsearch 的集群状态status属性应该显示为green,但在 ES 的使用过程中,我们经常会遇到这么一个问题——集群状态显示为yellow或red。

阅读全文 »

(运维篇)MySQL CRON 定时全量备份

发表于 2021-02-13 | 更新于 2022-08-20 | 分类于 关系型数据库
本文字数: 263 | 阅读时长 ≈ 1 分钟

前言

  在互联网中,数据就是金钱,为了防止出现数据丢失无法找回的意外,通常都会对数据库做定期备份动作。
  那么,MySQL 如何实现此目的呢?

  下面,我们就使用 MySQL 自带的 mysqldump 命令结合 Linux 的 crontab 工具来定时全量备份数据!

阅读全文 »

Java 异步编程实战学习笔记

发表于 2020-12-19 | 更新于 2023-01-12 | 分类于 Java
本文字数: 2.2k | 阅读时长 ≈ 3 分钟

序言

  通过对此书的学习,能够让我们获取以下问题的答案:

  • 为什么使用异步编程?
  • 在 Java 中如何编写异步编程的代码?
  • 在 Java 中如何编写对异步编程的结果进行特殊处理的代码?
阅读全文 »

(五)ElasticSearch 分片深入研究

发表于 2020-11-10 | 更新于 2024-01-29 | 分类于 全文检索
本文字数: 4.2k | 阅读时长 ≈ 6 分钟

序言

  分片是 ES 中的一个重要概念,围绕着分片,我们会有很多疑问:

  • 文档是什么?
  • 分片是什么?
  • 文档与分片关系如何?
  • 分片的作用?
  • 文档存储在哪个分片?
  • 主副分片间如何交互?

  本文将通过一些说明来解答这些疑问。

阅读全文 »

Prometheus + Grafana 打造实时全链路监控系统

发表于 2020-10-30 | 更新于 2024-02-08 | 分类于 Ops
本文字数: 12k | 阅读时长 ≈ 18 分钟

序言

  人非圣贤,孰能无过?
  对程序而言,同样如此,即使一个产品经历了一系列的开发测试工作,在此过程中又遇到并解决了成百上千个 Bug,最终交付给客户并正式上线了,后期还是可能会出现一些问题。
  这些问题的产生,可能是客户进行了不符合逻辑的异常操作引起的,也可能是程序代码原先判断逻辑本就存在问题,还有可能是某个应用或服务器资源(CPU、内存、磁盘、网络)出现异常了。但不管怎样,是问题就应当给客户解决,不然客户不满意了,公司的企业形象降低了,若后期还有合作,说不定就泡汤了呢!合作泡汤了,说不定整个业务部门就给你优化掉,程序员就没班上了呢!!!
  作为程序员,为了防止被优化的意外发生,还是老老实实的帮客户解决问题吧!
  那么,怎么去解决问题呢?
  作为一个程序员,接到一个产品问题,想的应该不是解决,而是分析问题的类型,待分析出问题的类型后,才去解决问题。
  那么,问题大概又可以分为哪几种类型呢?
  笔者认为,其大致可以分为以下三种:

  • ① 理解问题:做的需求不符合客户的预期效果,客户不买帐,那么,互相扯皮或者重新做~
  • ② 代码问题:程序存在 Bug,这又进一步可以分为三种:
    • 前端 Bug:前端程序问题,页面设计不合理或与后端对接不正确
    • 后端 Bug:后端程有问题,逻辑错误或重大 Bug 导致应用的宕机,那么让后端同学修复
    • 运维 Bug:服务器配置问题,让实施同学(通常被后端同学替代…)解决
  • ③ 服务器问题:CPU、内存、磁盘,网络资源引起的问题

  现在,我们得到了一个结论——问题的存在形式是多种多样的,因此我们遇到问题不能局限在某一块思考(后端开发不能碰到问题就想的是看日志,得明确是后端问题才去看日志),因为不同的问题解决方案也不一样。

  由于只有在大致分析出问题的类型后,才能尝试去解决问题:

  • 针对问题 ①,我们有时可以甩锅给产品同学——你的需求不对呀,我肯定做错呀(叉腰:理直气壮),当然有时也需要自己接锅(自己理解不到位)
  • 针对问题 ②,通常需要看线上日志来定位问题的产生原因,尝试复现 Bug
  • 针对问题 ③,需要去看服务器某段运行时间里资源情况(注意哦,是观测服务器在某段运行时间里资源情况,因为线上出问题了,肯定是之前某个时间点出的问题,我们仅仅观察出错后的资源占比情况不一定能找出问题所在)

  那么,又该如何去观察服务器在某段运行时间里的资源情况是怎样的呢?
  这个时候,就需要布置一套监控系统来辅助我们程序员观察分析了。

阅读全文 »

(四)ElasticSearch 集群

发表于 2020-10-22 | 更新于 2022-12-08 | 分类于 全文检索
本文字数: 5.5k | 阅读时长 ≈ 8 分钟

集群

  一个运行中的 Elasticsearch 实例称为一个节点,而集群是由一个或者多个拥有相同 cluster.name 配置的节点组成, 它们共同承担数据和负载的压力。

阅读全文 »

Java 高并发之工具类

发表于 2020-09-05 | 更新于 2023-05-30 | 分类于 Java 高并发
本文字数: 2.6k | 阅读时长 ≈ 4 分钟

序言

  

阅读全文 »

Nginx 总结

发表于 2020-08-06 | 更新于 2025-12-04 | 分类于 Ops
本文字数: 16k | 阅读时长 ≈ 23 分钟

序言

  作为一名后端工程师,Nginx 的学习必不可少。

阅读全文 »

初识 Shell

发表于 2020-08-01 | 更新于 2025-04-10 | 分类于 Ops
本文字数: 6.4k | 阅读时长 ≈ 9 分钟

序言

  在 Linux 中,我们经常需要输入一些长命令。
  比如,我们现在需要以后台模式指定内存大小运行一个 jar 文件,并且还将运行日志输出到nohup.out文件中,那么需要输入以下命令达到该效果:

1
nohup java -jar -Xms256m -Xmx256m xxx.jar &

  除此之外,我们还想看看输出后的日志信息,那么又需要执行以下命令:

1
tailf nohup.out

  这两行命令能否一起执行呢?
  并且,我们知道:代码开发完成后,一般会在测试服务器上进行测试。既然需要测试,那么测试出 Bug 是再正常不过的一件事情了。
  出了 Bug 那就修呗,修好后就需要重新打 jar 包并部署到服务器,那么就又需要重新启动该应用!
  若每次部署都重复输入同样的长命令,无疑会非常耗费时间,那么有没有一种方法来保存该命令以方便后续快速运行呢?
  对于以上问题的答案,均可通过 Shell 脚本解决,并且 Shell 比这更强大!

阅读全文 »

初识 Aerospike

发表于 2020-07-02 | 更新于 2022-10-22 | 分类于 NoSQL
本文字数: 5.2k | 阅读时长 ≈ 7 分钟

简介

  Aerospike 是一个高性能、高可扩展、高可用、高复杂性的分布式的 Key-Value 的 NoSQL 数据库(注意不是缓存哦,其定位就是数据库),可基于行进行随机存取,支持多种部署模式(纯内存、内存 + SSD、纯 SSD)。

  Aerospike 的体系结构主要具有三个目标:

  • 为 Web 规模的应用程序创建一个灵活的可扩展平台
  • 提供传统数据库期望的鲁棒性和可靠性(如 ACID)
  • 以最少的人工参与提供运营效率
阅读全文 »
1…345…15
LeeQingShui

LeeQingShui

149 日志
16 分类
69 标签
RSS
© 2018 – 2026 LeeQingShui | 站点总字数: 899k
赣 ICP 备 2022002212 号
本站已运行
本站总访问量 次 | 本站访客 人次
0%