自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

人道宗主的博客

致力于成为中国中间件运维领域的顶尖人才

  • 博客(13)
  • 收藏
  • 关注

原创 RocketMQ5.1.3依然存在刷盘bug,可能导致消息丢失

最近考察5版本,发现问题依旧。这就导致如果刷盘超时,是可以捕获的。但如果是刷盘直接报错,输出一条日志就完了,返回给客户端的还是SEND_OK。此时做个服务器重启,数据就丢了。之前4.8.0时,发过文章《RocketMQ 刷盘机制BUG踩坑——可能引起消息丢失》,说明了可能导致消息丢失的bug。不过不得不承认,5版本可以自动切换主从,这样的话主节点丢失的数据从节点还有。但如果你想用单点的架构,那么消息丢失就是要考虑的点。后来社区一直没改,我们就自己修复了,之后也没太关注新版本。

2023-08-31 15:53:22 155

原创 RocketMQ 刷盘机制BUG踩坑——可能引起消息丢失

上文说到dledger模式有bug,于是还是踏实考察master-slave或HA的架构。最近看源码发现一个严重的bug,可能导致消息丢失。具体分析过程有机会再详写,直接看MappedFile.java的flush方法代码 public int flush(final int flushLeastPages) { if (this.isAbleToFlush(flushLeastPages)) { if (this.hold()) {

2021-03-03 14:10:29 774 6

原创 RocketMQ4.8.0 dledger模式初体验——尚存在严重BUG

RocketMQ 4.7.1时期就尝试了dledger集群,但是当时dledger集群有严重的性能问题。同样服务器配置,master-slave模式测试TPS最高可以超过10万,dledger模式最高只有13000。盼了几个月,终于盼来了据说会改善dledger性能的4.8.0版本。测试了一下,性能果然有很大提升,完全不比master-slave模式差了。TPS随随便便也达到了八九万。但是测了一会发现,我高兴的太早了。因为master经常会莫名其妙的发生切换。1,经过几次测试,发...

2021-01-18 10:38:20 6072 8

原创 windows版tomcat8安装心得

以tomcat8为例1,安装软件需要找windows版的tomcat,最好直接从官网下载。虽然linux版的tomcat在windows上也能用,但是缺少tomcat8.exe、service.bat等,不能注册服务。Window tomcat如果不注册服务,窗口关了就不能用了。2,你可以在startup.bat里可以设置JAVA参数,设置CATALINA_HOME、JAVA_HOME、JRE_HOME,在shutdown.bat里设置CATALINA_HOME、JAVA_HOME、JRE_H.

2020-08-31 11:08:14 475

原创 中文乱码与字符集

一. Charset.defaultCharset()系统默认编码字符集介绍说明返回此 Java 虚拟机的默认 charset。默认 charset 在虚拟机启动时决定,通常根据语言环境和底层操作系统的 charset 来确定。Charset.defaultCharset()是操作系统的编码,可以通过虚拟机启动时指定属性-Dfile.encoding=UTF-8,来更改Charset.defaultcharset().Charset.defaultcharset()指的是jvm输入流、.

2020-06-12 14:13:44 292

原创 淇℃伅 Tomcat日志乱码的原因与解决方法

问题现象: 启动tomcat时,看见日志里有淇℃伅字样的乱码04-Jun-2020 14:10:58.553 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:ParallelGCThreads=1604-Jun-2020 14:10:58.553 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListe.

2020-06-04 16:20:41 1186

原创 tomcat自定义项目访问路径,不使用项目名,而是使用根路径的方法

1,tomcat应用部署时,可以通过在server.xml里配置,也可以在$CATALINA_HOME\conf\Catalina\localhost中添加一个xml文件,用来自定义应用部署。这种部署可以指定应用访问路径。经过测试,发现有以下几种情况1,server.xml里如下配置<Context path="/abc" reloadable="false" docBase="/tomcat/apache-tomcat-8.0.50/webapps/omdm.war" w..

2020-05-27 14:23:37 1914

原创 apache反向代理,浏览器访问context与后端应用context不一致的处理

某些应用,存在历史原因浏览器只能访问http://www.aaa.com/bbb而后端的应用上下文根其实为/ccc在apache服务器中,做了如下配置ProxyPass /bbb http://www.ddd.com:8080/cccProxyPassReverse /bbb http://www.ddd.com:8080/ccc发现问题有二:1,问题现象:访问后会出现404报错wget http://www.aaa.com/bbb发现先进行了30...

2020-05-18 10:45:38 595

原创 apache作为客户端的SSL双向认证和将p12证书制作为pem证书的方法

有这样一种业务场景,我们内网的应用要去访问互联网上的服务,因为应用不能直接对互联网暴露,这时就需要代理。有的时候,互联网的服务,比如微信,会要求进行https的双向认证,即在我们一侧也需要证书和密钥文件。我们代理服务器使用apache,网上的资料只介绍了apache代理https单向认证的配置方法,因此进行了研究。经常实验,发现在httpd.conf中配置,可以实现apache作为客户端的...

2020-01-06 16:15:57 1270

原创 docker run -m指定内存大小不生效

执行docker run的时候,想要指定一下内存大小,用了-m参数,报错如下#docker run -id -m 3g -p 7001:7001 197.3.16.51/sysmgr/mywebapptest_app_weblogic:20180820047WARNING: Your kernel does not support swap limit capabilities or the ...

2019-01-25 10:26:39 10157

原创 window版本 activeMQ如何修改JVM

linux版本activeMQ  如何修改JVM网上有了很多,这里就不再赘述windows 启动的脚本在这里 D:\Program Files\activeMQ\apache-activemq-5.14.0-hub1\bin\win32 但并不像linux是修改启动脚本,windows是修改wrapper.conf 下面两个参数就是初始堆和最大堆的参数 # Init

2017-05-03 19:20:48 1079

原创 websphere数据源属性之容器的认证别名和组件管理的认证别名

很多中间件的管理员,并不知道容器的认证别名和组件管理的认证别名的区别,实际上,一般也看不出区别。但是偏偏有的情况下会出大问题。 最近我们有一台数据库的变更,应用要改连异地的数据库,因为维护人不同那边的数据库用户密码和这边不一样。于是切换前,我们这边修改了J2C的认证别名和数据库的URL,结果很快我们这边的数据库用户锁定了,造成了业务还没切过去这边数据库就不能用了,有了一定的业务影响

2016-09-04 22:37:49 2011

原创 基于secureCRT的unix服务器批量登陆的脚本

做运维的人大概都有体会,一个变更要登录服务器,输入IP、用户、密码一台台服务器登录,花时间还没成就感。遇上几十台上百台的变更,登录的时间得花个把小时了。 有没有比较方便的办法呢,其实很简单,secureCRT+简单的VB脚本就能做到。 一、首先我们要安装secureCRT 7以上版本,先登录一台服务器保证CRT可以正常使用 二、把以下内容拷贝到一个txt里,把文件名修改为自动登录.vb

2015-12-09 20:57:12 4634 2

空空如也

空空如也

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

TA关注的人

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