自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(160)
  • 资源 (15)
  • 问答 (1)
  • 收藏
  • 关注

原创 java项目将依赖打进jar、并生成可执行的jar

最近在做JAVA 的SDK 工具,由于SDK 依赖了其他的一些开源工具包,打包时少了依赖工具包,这样其他项目想要用SDK 就需要自己额外增加响应依赖,所以想要把依赖打进SDK。示例中依赖了fastjson处理json数据。

2023-12-09 21:33:39 755

原创 生成可执行的jar包

【代码】生成可执行的jar包。

2023-12-09 21:03:25 420

原创 spring的一个properties配置文件,引用另外一个properties配置的变量

在需要引用的基础配置文件中,输入基础配置文件的配置项 在src/resources/目录创建 app.properties。创建filters,并创建base.properties 输入基本的配置信息。某些场景需要在配置文件中引用其他的配置文件,使用filter即可,pom文件中添加以下部分内容,在配置文件中使用${}引用即可。

2023-10-17 12:39:52 972

原创 clickhouse优化使用clickhouse-keeper替代zookeeper

ClickHouse Keeper 是 ZooKeeper 的替代品,与 ZooKeeper 不同,ClickHouse Keeper 是用 C++ 编写的,并使用 RAFT 算法实现,该算法允许对读写具有线性化能力。clikhouse-keeper目的在于替换zookeeper,使用clickhouse后,服务器性能,提升了一大截,只需要在配置zookeeper的地方,改成clickhouse-keeper即可。ClickHouse keeper相对zookeeper来说性能更好,维护更方便。

2023-07-14 14:22:14 2451

原创 生产环境使用HBase,你必须知道的最佳实践

hbase ,Schema设计七大原则,rowkey设计,预分区

2023-06-30 11:27:38 464

原创 java占用cpu最高的线程堆栈信息

java查找cpu飙高的代码,使用top命令或者top -p 进程号指定显示你的java进程的内存情况

2023-06-02 15:47:54 241

原创 nginx限流熔断

nginx限流熔断

2023-06-02 15:33:29 872

原创 hbase常用命令

hbase建表,命名空间,操作等常用命令

2023-05-28 11:19:05 2372

原创 java中死锁检测和预防

死锁是并发编程中的常见问题,它发生在两个或多个线程被阻塞,等待对方释放锁时。死锁可能导致整个系统冻结或崩溃,是一个难以复现和修复的问题。在本文中,我们将探讨 Java 中死锁的成因、检测方法以及避免死锁的最佳实践。Java中的死锁是当两个或多个线程被阻塞并等待对方释放资源,这种情况叫做死锁。换句话说,两个或多个线程被卡住而无法继续,因为每个线程都持有另一个线程所需的资源,从而导致循环依赖。这可能会导致系统完全冻结或崩溃。例如,考虑两个线程,线程 A 和线程 B,以及两个锁,锁 1 和锁 2。

2023-05-11 09:09:29 812 1

原创 Kafka主题,分区,副本介绍

今天分享一下kafka的主题(topic),分区(partition)和副本(replication),主题是Kafka中很重要的部分,消息的生产和消费都要以主题为基础,一个主题可以对应多个分区,一个分区属于某个主题,一个分区又可以对应多个副本,副本分为leader和follower。副本的作用是保证数据的高可用,一个副本在一个broker节点上,broker就是一个台机器或者一个kafka实例,当某个副本出现故障后,还可以使用其他副本的数据,如果只有一个副本,那么就无法保证高可用。

2023-03-28 14:52:48 1092

原创 Kafka 原理以及分区分配策略剖析

如果消费组内,消费者订阅的Topic列表是相同的(每个消费者都订阅了相同的Topic),那么分配结果是尽量均衡的(消费者之间分配到的分区数的差值不会超过1)。这种分配方式明显的一个问题是随着消费者订阅的Topic的数量的增加,不均衡的问题会越来越严重,比如上图中4个分区3个消费者的场景,C0会多分配一个分区。从消费者的角度来看,基于键的主题添加分区是很困难的,因为分区数量改变,键到分区的映射也会变化,所以对于基于键的主题来说,建议在一开始就设置好分区,避免以后对其进行调整。

2023-03-28 13:46:34 630

原创 OpenResty之Lua语法学习

OpenResty,开源作者章亦春,这个开源 Web 平台主要由章亦春(agentzh)维护。在 2011年之前曾由淘宝网赞助,在后来的 2012 - 2016 年间主要由美国的 CloudFlare 公司 提供支持。目前,OpenResty® 主要由 OpenResty 软件基金会和 OpenResty Inc. 公司提供支持。根据作者早期描述OpenResty最早是顺应OpenAPI的潮流做的,所以 Open 取自“开放”之意,而Resty便是 REST 风格的意思。

2023-03-26 20:35:10 1058

原创 openresty-安装

是一个增强的Nginx,可以编写lua脚本实现非常灵活的逻辑了1.安装开发库依赖2.配置yum的依赖源3.安装OpenResty4.openresty的默认安装目录5.启动openresty(Nginx)6.通过浏览器查看nginx的页面。

2023-03-26 09:52:02 534

原创 Kubernetes HPA自动扩缩容

HPA 自动更新工作负载资源(例如 Deployment 或者 StatefulSet), 目的是自动扩缩工作负载以满足需求。水平扩缩意味着对增加的负载的响应是部署更多的 Pod。这与 “垂直(Vertical)” 扩缩不同,对于 Kubernetes, 垂直扩缩意味着将更多资源(例如:内存或 CPU)分配给已经为工作负载运行的 Pod。如果负载减少,并且 Pod 的数量高于配置的最小值, HPA 会指示工作负载资源(Deployment、StatefulSet 或其他类似资源)缩减。

2023-03-16 09:30:24 525

原创 10 个优化技巧,减少 Docker 镜像大小

Docker 是一种容器引擎,可以在容器内运行一段代码。Docker 镜像是在任何地方运行您的应用程序而无需担心应用程序依赖性的方式。要构建镜像,docker 使用一个名为 Dockerfile 的文件。Dockerfile 是一个包含许多指令(RUN、COPY、EXPOSE 等)的文件。成功执行这些命令后,docker 将创建一个镜像供我们在任何地方使用。

2023-03-16 09:22:05 5180

转载 Kubernetes 篇之 Kubernetes 配置

Secret 对象的名称必须是合法的 DNS 子域名。如果不希望执行这种 base64 字符串的转换操作,你可以选择设置 stringData 字段,其中可以使用任何字符串作为其取值。ConfigMap 是一种 API 对象,用来将非机密性的数据保存到键值对中。使用时,Pods 可以将其用作环境变量、命令行参数或者存储卷中的配置文件。将这些信息放在 secret 中比放在 Pod 的定义或者容器镜像来说更加安全和灵活。作为挂载到一个或多个容器上的卷中的文件。云原生 应用 12 要素 中,提出了配置分离。

2023-02-13 19:05:29 520

转载 带着8个问题5分钟教你学会Arthas诊断工具

Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!是否有一个全局视角来查看系统的运行状况?有什么办法可以监控到JVM的实时运行状态?

2023-02-12 17:57:06 316

原创 1.Kubernetes简介

容器类似于VM,但是它们具有轻量级的隔离属性,可以在应用程序之间共享操作系统 (OS),因此,容器被认为是轻量级的。●接下来,所有Node上运行的Proxy进程通过APIServer查询并监听Service对象与其对应的Endponts信息,建立一个软件方式的负载均衡器来实现Service访问到后端Pod的流量转发功能。●目标Node上运行的Kubelet进程通过APiserver监测到这个"新生的Pod.并按照它的定义,启动该Pod并任劳任怨地负责它的下半生,直到Pod的生命结束。

2023-02-08 12:43:32 238

转载 Kubernetes之Job控制器

Job控制器用于Pod对象运行一次性任务,容器中的进程在正常运行结束后不会对其进行重启,而是将Pod对象置于"Completed"(完成)状态,若容器中的进程因错误而终止,则需要按照重启策略配置确定是否重启,未运行完成的Pod对象因其所在的节点故障而意外终止后会被调度。

2023-02-08 10:18:09 259

原创 rancher通过yaml发布应用

通过yaml文件快速创建应用

2023-02-07 14:45:35 365

原创 Dockerfile 详解,看这一篇就够了

指令格式有两种:注释和指令注释以井号开头,后面跟上信息指令以大写的指令名开头,后面跟上参数指令格式有两种:注释和指令注释以井号开头,后面跟上信息指令以大写的指令名开头,后面跟上参数。

2023-02-07 09:27:33 977

原创 maven利用springboot的配置文件进行多个环境的打包

maven通过profile实现多环境配置

2023-02-03 16:29:59 1266

原创 前端布局神器display:flex

近几年,CSS领域出现了一些复杂的专用布局工具,用以代替原有的诸如使用表格、浮动和绝对定位之类的各种变通方案。Flexbox,或者说是弹性盒子布局模块(Flexible Box Layout Module)是这些新布局工具中的第一个,接着是CSS网格布局模块(CSS Grid Layout Module)。我们会在本文给出一个易于理解的flexbox入门介绍。

2023-01-26 09:15:26 2860

原创 k8s中Controllers 资源控制器

controller是在集群上管理和运行容器的对象,pod通过controller来实现应用的运维比如伸缩,滚动升级等。pod和controller之间通过label标签建立联系。

2023-01-18 14:35:37 1607

原创 使用k8s实现灰度发布,金丝雀,蓝绿发布

Nginx Ingress Controller 实现了项目的网关,作为项目对外的流量入口和项目中各个服务的反向代理。而 Ingress-Nginx 支持配置 Ingress Annotations 来实现不同场景下的灰度发布和测试,可以满足金丝雀发布、蓝绿部署与 A/B 测试等业务场景。

2023-01-17 17:47:06 1787

翻译 Ceph介绍及原理架构分享

Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储。

2022-12-29 21:21:05 820

原创 rancher2.6使用nfs外部存储

选择某个集群-项目, PVC-添加PVC,需要填写的内容如下。选择使用现有的PV,并选择刚才创建的PV。PVC创建完成后,就可以被服务使用了。每台node安装 nfs客户端。选择一个当前项目下的命名空间。

2022-12-26 19:40:22 635

原创 ranchar2.6.4安装与管理k8s1.23.1

rancher k8s 安装

2022-12-26 17:18:46 193

原创 etcd集群搭建使用

ETCD是用于共享配置和服务发现的分布式,一致性的KV存储系统。ETCD是CoreOS公司发起的一个开源项目,授权协议为Apache。

2022-12-09 20:06:27 2504

原创 k8s删除node

删除kubernets中加入的node

2022-12-06 15:32:55 1274

原创 最新版k8s 1.25版本安装

K8s是一个最初由Google开发的,用于自动化部署、扩展和管理容器化应用的开源容器编排器技术。

2022-12-01 14:38:27 4176 1

原创 ffmpeg视频处理

视频文件是一个容器,里面有视频流、音频流、也有字幕等信息。常见格式比如:mp4、avi、webm、mkv、flv等。编码的效率,体现在数据压缩比、信息还原度,以及处理速度等指标上。编码器就是对编码算法的实现,常见如libx264、libx265、libvpx、libaom,前两个开源,后两个是Google的,也就是我们常用Chrome浏览器内置的编码器。

2022-11-27 23:00:28 937

原创 下一代时间同步服务 Chrony入门

Chrony是一个多功能的NTP (Network Time Protocol)实现,类Unix系统上NTP客户端和服务器的替代品。它可以通过NTP服务或者类似GPS时钟接收器的硬件级参考时钟来同步系统时钟,具有更好的时钟准确度,并且对于那些间歇性互联网连接的系统很有帮助。

2022-11-25 18:04:04 1424

原创 letsencrypt的免费https证书申请与nginx部署

免费自动更新https服务器●第一步 选择好使用的软件和系统,本文使用centos和nginx。输入上面的命令,按照提示信息输入 电子邮箱和域名。●第三步 安装python-cert-nginx。●第五步 打开nginx.conf 添加。●第二步 使用下面命令安装相关工具。●第七步 配置定时任务 定时更新证书。●第四步 使用命令,获得证书。使用certbot获取证书。●第六步 重启nginx。

2022-11-25 17:31:12 297

原创 分布式任务xxl-job调度中心安装说明

XXL-JOB是一个轻量级分布式任务调度平台,xxl-job调度中心,管理界面,安装使用入门。

2022-11-22 17:25:18 2447

原创 分布式任务调度项目xxl-job

xxl-job分布式任务调度平台,是一个轻量级分布式任务调度平台, 其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。

2022-11-22 17:24:11 1378

原创 srs流媒体录制视频-配置dvr

dvr它是一套进行图像存储处理的计算机系统,具有对图像/语音进行长时间录像、录音、远程监视和控制的功能。DVR采用的是数字记录技术,在图像处理、图像储存、检索、备份、以及网络传递、远程控制等方面也远远优于模拟监控设备,DVR代表了电视监控系统的发展方向,是市面上电视监控系统的首选产品。硬盘录像机(Digital Video Recorder,简称DVR),即数字视频录像机,相对于传统的模拟视频录像机,采用硬盘录像,故常常被称为硬盘录像机,也被称为DVR。这里dvr_duration设置的是30秒记录一次。

2022-11-22 16:50:21 1984 1

原创 MySQL迁移到ClickHouse

ClickHouse 新增 MaterializeMySQL引擎 ,可通过binlog日志实时物化mysql数据,提升数仓的查询性能和数据同步的时效性;原有mysql中承担的数据分析工作可交由clickhouse去做,这么做可显著降低线上mysql的负载,从此OLTP与OLAP业务实现完美融合。

2022-11-18 16:30:06 1647 1

原创 clickhouse 三种高可用方案

在clickhouse高可用实现中,通常会通过LB方式使每台服务器能够均匀的接受到客户端的请求,另外一点就是在其中一台服务发生故障,仍然能通过故障转移方式正常对外提供服务。

2022-11-14 15:15:07 4587 2

原创 ClickHouse各种MergeTree的关系与作用

clickhouse 各种表引擎关系

2022-11-12 10:30:00 1398

xxl-job管理界面,调度中心

xxl-job管理控制台安装程序和脚本,使用说明请参考文章 https://blog.csdn.net/robinhunan/article/details/127984611 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。下载包对做了启动脚本和启动程序。

2022-11-22

实现浏览器超大文件,分片断点,续传

实现浏览器超大文件,分片断点,续传,使用说明参考 文章 https://blog.csdn.net/robinhunan/article/details/126763184

2022-09-08

cat性能监控demo资源

美团点评性能监控demo

2022-03-11

git图形化的代码冲突处理工具KDiff3

git图形化的代码冲突处理工具

2021-09-30

基于thrift的RPC调用实例

RPC(Remote Procedure Call Protocol)远程过程调用协议实例,学习和使用thrift无痛入门代码。具体使用方法,可以看博客详解。

2020-05-27

腾讯网新版首页-源码.zip

12年5月份,腾讯新版首页搜索框实现例子,8年前的代码,很乱没有整理 能运行,请自行整理吧。搜索框基础功能,包括搜索功能、smartbox功能、以及垂直频道切换功能, 本代码基本上涵盖了前端js中,会遇到的各种坑,代码说明 参考https://blog.csdn.net/robinhunan/article/details/106206316

2020-05-19

Centos6 + Oracle 11g r2 + nfs搭建RAC环境.pdf

RAC是real application clusters的缩写,译为“实时应用集群”。文章详细的介绍了centos下oracle的搭建过程。

2020-01-16

喜马拉雅歌曲移动

拷贝喜马拉雅音乐到系统Music目录,供Music目录播放。 更多介绍 https://blog.csdn.net/robinhunan/article/details/86423454

2019-01-13

easyui 和 pdo 增删改查示例

CRUD 允许我们生成页面列表,并编辑数据库记录。本教程将向你演示如何使用 jQuery EasyUI 框架实现一个 CRUD DataGrid。 我们将使用下面的插件: datagrid:向用户展示列表数据。 dialog:创建或编辑一条单一的用户信息。 form:用于提交表单数据。 messager:显示一些操作信息。

2017-12-27

windows 7/8 内存虚拟盘,同时支持32位/64位系统,附件附教程

将部分内存虚拟为硬盘,为加快系统运行速度创造了条件,更是避免了硬盘频繁存取,为提升固盘寿命打下了基础。

2017-10-21

windows 7/8 32位 64位操作系统可用内存虚拟盘

将部分内存虚拟为硬盘,为加快系统运行速度创造了条件,更是避免了硬盘频繁存取,为提升固盘寿命打下了基础。

2017-10-21

jQuery点击头像上传本地预览裁剪图片

使用jquery上传前,预览图片,裁剪,示例使用php接收上传的文件,并且保存为裁剪后的图片。不需要上传后再裁剪图片,只需要本地裁剪好即可,裁剪的时候也可以旋转图片。

2017-09-05

web开发调试利器教程

工欲善其事,必先利器! 好的工具能事半功倍。 本文档介绍了常用工具开发调试利器,提升开发人员开发效率,降低bug。

2014-08-20

CH341A编程器使用说明

CH341A编程器使用说明,CH341A编程器使用说明中文 - CH341A 编程器使用说明 为保证你正确的使用此编程器, 为保证你正确的使用此编程器,请仔细阅读 本说明! 本说明! 一、驱动安装 打开

2013-06-02

路由器flash升级到8M,教程

制作编程固件,刷flash,直接编辑数据缓冲区,写入MAC和PIN。可装入多个文件到数据缓冲区起始地址,备份的board_config/art 分区文件装入到 0x7F0000,固件 xxx-factory.bin 装入到0x20000。

2013-06-02

表单验证插件

可以自定义验证函数, 实时提示,动态提示, 支持输入框, 默认验证函数, 支持单选复选框, 也支持表单提交的时候验证!

2012-12-19

网站高可用架构

一篇介绍网站架构的好文章.english版本

2008-02-12

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除