自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 每日10亿数据的日志分析系统OOM

今天这个案例,大家会发现,我们先是通过OOM的排查方法去分析,发现主要是内存太小导致的问题。然后用gc日志和jstat分析,明显发现是内存不够用了,最后加大系统内存,并且优化代码就可以了。

2024-05-11 18:00:33 469

原创 Kafka效率篇-提升效率三板斧

总结一下本文的大致内容,主要解释了kafka如何提高效率的,主要解决了小型IO和大量的字节拷贝问题。小型IO的问题,kafka的解法是转微批的方式。字节拷贝问题,kafka利用了零拷贝技术实现,减少了数据的重复拷贝问题,但目前还没做到真正的“零拷贝”。利用压缩技术,使的网络带宽能够更高效的使用。后续会出一个关于零拷贝的文章(先埋个坑)

2024-05-11 17:27:58 1252 1

原创 Kafk设计篇01(设计动机+持久化)

因此即使少量的磁盘寻址操作也会导致很高的代价。由于存储系统混合了非常快的缓存操作和非常慢的物理磁盘操作,树结构的观测性能常常随着混合数据的增长是超线性增长的,即:一倍的数据往往是性能降低一倍以上。这个特性在不使用直接I/O的情况下,不能轻松的被关闭,所以即使一个进程维护了一份数据的进程内的缓存,这份数据也会在操作系统的页缓存中被复制一份,会有效的将数据存储两次。真实生产环境中也是如此,我们一般利用kafka用来接收实时流数据,而且往往是大数据量的场景,它能轻松的抗住上万的qps,并且具备消息持久化的能力。

2024-05-08 18:10:15 787

原创 系统SLA

假如作为一个架构师,利用SLA精准的描述和定义一个系统是非常重要的。在做架构演进或优化过程中,始终将SLA作为衡量标准。当然作为一名技术,当下次客户问到,你们系统/产品提供什么样的SLA?就可以按照以上四个维度来解释。

2024-05-08 18:03:29 916

原创 工作中你需要知道的事

最近看了些书和文章,感觉心里有点干货,本着能救一个是一个的心态,发了这篇文章,只要这篇文章能够对你有一点点作用,哪怕心里吐槽一句:“这我还能不知道!”这篇文章的作用也就达到了。。相信大部分人都给自己定过计划,或者叫规划,或叫flag。大家往往年初定了一个很大的目标或计划,然后硬着头皮去做,结果往往适得其反。正确的做法是,定期review你的计划,发现不合理、不适配的情况下,及时调整,避免适得其反。我这里举个简单的栗子,我在我的月度打卡表里写了一项:每天运动1h,每天早睡(24点前)。

2024-05-04 23:45:58 670

原创 半年多后,我又来发面试篇了

依旧以面试篇开头半月内面试的几家二线公司体验面试题汇总mysql相关jvmredisspringboot事务并发编程(必问)项目(重中之重)自身准备半月内面试的几家二线公司体验首先说明楼主两年多经验,面试的话,对标的是阿里的p5-p6左右,大概就是中高级开发的样子,半个月来,面试了大概几家大家可能知道的公司吧,因为楼主对自己自身的能力比较有数(比较菜),所以本次面试没有针对非常知名的公司,大概有以下几家公司:大搜车盒马菜鸟网络玩物得志面试题汇总mysql相关mysql索引了解不?

2020-12-29 15:33:49 255

原创 Dashboard实时统计遇到的坑以及如何爬过去的

这个坑困了一天多,记录一下做个分享。在dashboard中大部分情况下数据需要记在一张统计表中,跑一个定时任务刷新表中数据,以便于dashboard直接展示。但由于种种原因,有部分dashboard元数据不适合记录在dashboard微服务,而且数据量不大,只需要实时统计。需求:统计即将超出承载能力的商家。背景:商家关联采购单,采购单明细,采购能力表,需要根据单量、sku总数、采购总价三个限制维度(每个维度的统计时间段不同)统计,即在规定时间段内该供应商的采购单量、规定时间段内该供应商的s.

2020-05-14 16:59:39 735

原创 项目中stream流的使用心得

话不多说,直接上。 需求:根据一定规则获取前几(top N)的供应商(商户,啥的都可以)。 背景:供应商有等级level,评分 rank,距离维度。 实现步骤: // 1. 根据等级分组 Map<Integer, List<SupplierService.Supplier>> supplierLevelMap = allSupplierList.stream().filter(e -> e.getLevel(...

2020-05-14 16:29:45 786 1

原创 列表中有两件商品,但是查看详情只看到一条商品信息

新增组合商品时,商品列表中有两件商品,但是查看详情只看到一条商品信息,修改后记录消失?解:查看详情发现sql中有limit 1,由于组合商品对商品是1:n,不能加limit 1的限制。注:需要在resultmap中返回子集的,都不能加limit1的限制,否则子集只能取到一条数据。修改时记录消失,是因为业务做了门店区分,详情页未返回storeId,在修改时,前端默认传了0,被更新到数据库...

2019-07-12 16:21:26 228

原创 再一次的项目启动失败

这次5分钟解决,因为在方法头上打了断点导致debug延迟,启动失败。

2019-07-12 16:15:16 143

原创 阿里云oss上传图片

业务参数配置类 AliyunProperties.加上@ConfigurationProperties(prefix = "alioss")prefix中的值,对应application.yml中的头路径,在该类中定义的属性,对应yml文件中的属性,用于自定义yml中的注解,如 swagger、alioss...

2019-07-12 16:12:52 222

原创 记录一次批量更新报表中缺失的数据

有两种方案,1.使用存储过程 2.老程序员方法。使用存储过程:声明更新中用到的字段:record_id , client_address在游标中声明查询出的多条记录,遍历游标,执行update语句,将record_id , client_address 代入。老程序员方法:将查询的结果集复制到excel中,编写单条update语句,利用excel下拉生成多条update语句,在subli...

2019-07-12 16:10:49 194

原创 Collections集合中containsAll在业务中的使用

记录一次使用containsAll的业务需求:品牌中存在多个关联的类目,在分页查询时,需要可以按照多个基础类目去实现搜索,即当前有类目a,b,c,d,e,f,g。品牌中关联了a,b,f。按类目搜索ab,可以搜到对应的品牌。这时候,可以定义两个集合c1和c2,c1接受前段传的类目,c2存放品牌中的类目,若c2.containsAll(c1)为true,则返回对应品牌。以前只是知道cont...

2019-07-12 16:02:30 584

原创 项目中,存在类,但是引入失败

在一次同事提交的代码中,已经更新到类,但是引入失败,怀疑是缓存在作怪。解:step1:idea清除一下缓存,无效step2:删除本地项目,重新拉取git上代码(成功)...

2019-06-25 17:26:58 2479

原创 git拉取代码时,弹框提示输入密码,密码正确,但是操作无效,还是无法拉取和提交代码

首先检查一下密码,密码正确的前提下,查看一下本地在git管理的项目,是不是在git服务器上没找到对应的项目(误删)。两端对应不上,会导致拉去提交失败。...

2019-06-13 16:48:33 5583

原创 记一次项目启动失败

在经过rebuild、maven clean之后,还是启动失败的,基本是由于配置文件的问题,仔细检查。我的问题是:之前解决冲突时,导致redis: database: 15 host: 192.168.0.168 port: 6379 password:redis-pass细心的应该发现问题了吧,由于password: 和redis-pass之间需要有一个空格,不然,...

2019-06-13 16:44:59 159

原创 java xml文件中提示cannot resolve property ‘id’ Inspection info : Under Construction

问题大体翻译:无法解析id字段由于之前引入了mybatis Plugin插件,最近插件出错,导致xml文件解析失败,删除插件后,问题解决。

2019-06-13 16:41:51 6471

原创 公司为期三四个月项目期间,bug整理

2019.01.05 org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'communityName' in 'class com.manku.entity.system.domain.Project'. 解:mapper文件中有communityName...

2019-04-16 17:43:06 226

原创 网新恒天面试

1.电话初步了解,问了一些要求,能否接受?全英文环境、做国外金融外包项目(肯定可以啊)2.面试:        笔试:英文试卷,尽量用英文答题(反正我是全英文答题),最后的编程题要考点逻辑        技术面:先看看笔试试卷,问你最后一题写了没,谈谈思路,讲了快十分钟。之后怼着简历问,简历不要留坑给自己(项目中遇到什么问题?)blabla                    Structs1和...

2018-04-25 09:51:58 7590 15

原创 两天的面试经

楼主是一位即将毕业的大学生,有过一段实习经历。希望这简单的面经能够让小伙伴们少走点弯路,欢迎讨论第一天是梦想小镇的一家公司,团队30人左右。1.读过juc源码吗?啥?java.util.concurrent。(蒙)2.对spring事务了解多少?(balabala讲了aop,事务隔离级别,传播行为。)3.项目中事务如何配置,怎么启动?(只能说自己没看过,以前公司是封装好了的,没去了解,后来知道是写...

2018-04-19 10:27:20 349

原创 一家中小型公司的电话面试

昨天中午进行了一轮电话面试,公司是一家100-499人数的软件公司。内容分享如下(不喜勿喷,谢谢):1.自我介绍,巴拉巴拉。2.问项目中遇到的难点,如何解决的。3.对spring框架的理解。(回答的不好)4.(可能觉得我回答的太烂)你认为java中,你最熟悉的知识点是哪个?我:集合吧,因为工作中用的比较多。5.顺藤摸瓜,set,map,list中哪个不是实现collection接口?hashmap...

2018-04-17 10:17:54 335

转载 JVM内存机制(面试)

 JVM的内存区域划分  学过C语言的朋友都知道C编译器在划分内存区域的时候经常将管理的区域划分为数据段和代码段,数据段包括堆、栈以及静态数据区。那么在Java语言当中,内存又是如何划分的呢?  由于Java程序是交由JVM执行的,所以我们在谈Java内存区域划分的时候事实上是指JVM内存区域划分。在讨论JVM内存区域划分之前,先来看一下Java程序具体执行的过程:                ...

2018-04-16 11:03:17 7496 1

原创 新手处女作

项目中遇到的问题记录:1.驱动程序无法通过使用安全套接字层(SSL)加密与SQL server 建立安全连接?           解决过程:1.更换使用高版本JDK、Tomcat,clean项目。                            2.SQL Server配置管理器,打开MSSQL Server协议中的TCP/IP,设置TCP端口,要求与db配置文件对应。          ...

2018-03-28 11:23:32 160

空空如也

空空如也

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

TA关注的人

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