写在前面 在 [冰河技术] 微信公众号中的[互联网工程]专题,更新了不少文章,有些读者反馈说,在公众号中刷 历史文章不太方便,有时会忘记自己看到哪一篇了,当打开一篇文章时,似乎之前已经看过了,但就是不知道具体该看哪一篇了.相信很多小伙伴都会有这样的问题.那怎么办呢?最好的解决方案就是我把这些文章整理成PDF电子书,免费分享给大家,这样,小伙伴们看起来就方便多了.希望这本电子书能够给大家带来实质性的帮助. 关于PDF 之前,我写过<深入浅出Java23种设计模式>.<Java8新特性教程&…
写在前面 在 [冰河技术] 微信公众号中的[Nginx]专题,更新了不少文章,有些读者反馈说,在公众号中刷 历史文章不太方便,有时会忘记自己看到哪一篇了,当打开一篇文章时,似乎之前已经看过了, 但就是不知道具体该看哪一篇了.相信很多小伙伴都会有这样的问题.那怎么办呢?最好的解决 方案就是我把这些文章整理成PDF电子书,免费分享给大家,这样,小伙伴们看起来就方便多 了.希望这本电子书能够给大家带来实质性的帮助. 关于PDF 之前,我写过<深入浅出Java23种设计模式>.<Java8新特新…
写在前面 最近,一直有小伙伴让我整理下关于JVM的知识,经过十几天的收集与整理,初版算是整理出来了.希望对大家有所帮助. JDK 是什么? JDK 是用于支持 Java 程序开发的最小环境. Java 程序设计语言 Java 虚拟机 Java API类库 JRE 是什么? JRE 是支持 Java 程序运行的标准环境. Java SE API 子集 Java 虚拟机 Java历史版本的特性? Java Version SE 5.0 引入泛型: 增强循环,可以使用迭代方式: 自动装箱与自动拆箱:…
文章和教程 Vue 学习笔记 Node 学习笔记 React 学习笔记 Angular 学习笔记 RequireJS 学习笔记 Webpack 学习笔记 Gulp 学习笔记 Python 学习笔记 Egret 引擎学习笔记 流处理,TCP 和 UDP,WebRTC 和 Blob 学习笔记 博客 前端回忆录 | 前端笔记本 - 一个前端博主记录的心得和总结 Hasnode - Hashnode 是在您的个人域 free 上免费创建开发者博客并通过我们的全球开发者社区与读者联系的最简单方法! ‍‍…
Apache Hudi 的Payload是一种可扩展的数据处理机制,通过不同的Payload我们可以实现复杂场景的定制化数据写入方式,大大增加了数据处理的灵活性.Hudi Payload在写入和读取Hudi表时对数据进行去重.过滤.合并等操作的工具类,通过使用参数 "hoodie.datasource.write.payload.class"指定我们需要使用的Payload class. ​ 1.摘要 Apache Hudi 的Payload是一种可扩展的数据处理机制,通过不同的Pay…
写在前面 很多小伙伴都反馈说,现在的工作不好找呀,也不敢跳槽,在原来的岗位上也是战战兢兢!其实,究其根本原因,还是自己技术不过关,如果你技术真的很硬核,怕啥?想去哪去哪呗!这不,我的一个读者去面试了蚂蚁金服,HR小姐姐让他下周入职! 注:二狗子,我的一名忠实读者,很勤奋,我的每一篇文章他都是必读的,后来由于经常交流技术,成为了比较熟悉的网友,二狗子也是我给他起的外号,哈哈.这次他拿下了蚂蚁金服,跟我说:面试中大部分的问题我公众号中的文章都有涉及到.哈哈哈,很开心的有木有?! 关注 冰河技术 微信…
韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 凡信(超仿微信Android版)开源了,内有源码下载 - IM Geek开发者社区-移动开发者社区-开源社区-IM Geek官网 腰果Cashew,基于原生实现,整体上使用了DataBinding - Android免费源码 - 秀源码 - Android源码社区_免费没毛病 Android Demo源码下载与使用 - 云通信 - 产品文档 - 帮助与文档 - 腾讯云 秀源码这个 可以…
超链接可以实现不同元素之间的连接,用户可以通过点击被链接的元素来激活这些链接.具有高效.快捷.准确的特点.本文中,将分享通过C#编程在PDF文档中插入超链接的方法.内容包含以下要点: 插入网页链接 插入外部文档链接 插入文档页面跳转链接 工具 Free Spire.PDF for .NET (免费版) 下载安装后,注意将Spire.Pdf.dll引用到程序(dll文件可在安装路径下的Bin文件夹中获取) 示例代码(供参考) [示例1]插入网页链接 步骤 1:创建实例,并添加页 PdfDocume…
今天,要给大家很是详细地介绍一下PDF Expert(一款专门在mac上使用的PDF阅读编辑器)的注释功能,让有点健忘的各位小伙伴们通过积极地与文本交互,从而记住更多的专业书内容. 具体使用方法请看以下介绍: 1.运行安装并激活成功的PDF阅读编辑器(没有激活的小伙伴们可以正确获取PDF Expert激活码),然后打开专业书的PDF文件: 2.在这款PDF阅读编辑器中,最让人印象深刻的注释功能就是[高亮]工具了,要突出显示PDF中的文本,请转到[注释]选项卡,然后选择[高亮]工具标注相关内容:…
本文适合有 Python 基础的朋友 本文作者:HelloGitHub-Anthony HelloGitHub 推出的<讲解开源项目>系列,本期介绍让你快速拥有完美进度条的 Python 三方库--alive-progress, 项目地址:https://github.com/rsalmei/alive-progress 不知你是否有过这样的经历:你写了一个程序,每次运行都会耗费很长时间.在等待程序运行期间你一次次的按下回车防止程序卡死.亦或者你的任务需要实时掌握程序运行进度但你根本不知道程序…
前言 分布式事务,是分布式架构中一个绕不开的话题,而什么是分布式事务?为什么要使用分布式事务?分布式事务有哪些实现方案?更是面试时面试官特别喜欢的一个分布式三连炮!同时用XMind画了一张导图记录分布式事务学习笔记(源文件对部分节点有详细备注和参考资料, 已经完善更新): 1.事务基本概念 1.1什么是事务? 事务是恢复和并发控制的基本单位,事务有四个特性(ACID),原子性(Atomicity),一致性(Consistency),隔离性(Isolation),持久性(Durability).…
写在前面 十一假期期间,也有很多小伙伴不忘学习呀,看来有很多小伙伴想通过十一长假来提升自己的专业技能!这不,就有小伙伴在微信上问我:如何搭建Maven私服?让我专门推一篇搭建Maven私服的文章.安排上了,这也是我亲自验证过,在自己服务器内网一直运行的Maven私服环境.今天,我就把如何搭建Maven私服的方法分享给小伙伴们,希望能够给大家带来实质性的帮助. 小伙伴的疑问 这里,我就直接以一张图来说明小伙伴的疑问吧. 假期不忘学习的读者,日后必然是公司的栋梁之才呀!加油! 那么,接下来,我们就一…
写在前面 趁着十一长假,很多小伙伴都在悄悄学习,有些是为了能够顺利通过面试,进入大厂升职加薪.有些则是为了进一步巩固和提高自己的专业技能,希望有朝一日能过成为互联网架构师乃至技术专家.这不,就有小伙伴问我:如何通过Jenkins自动构建和发布项目,我:安排上了!! 小伙伴的疑问 我们还是通过一张图来直观的了解下小伙伴的疑问吧. 老规则,我们直接进入正题. 基础环境 所有的环境均搭建在CentOS 6.5 x64服务器上,IP:192.168.209.121 主机名:liuyazhuang121…
写在前面 十一长假基本上过去了,很多小伙伴在假期当中还是保持着持续学习的心态,也有不少小伙伴在微信上问我,让我推送相关的文章.这个时候,我都是抽空来整理小伙伴们的问题,然后,按照顺序进行推文. PS:这个假期我是哪里也没去,除了在家带娃,就是抽空写文了.有人说:假期没人看技术文?我不信! 小伙伴的疑问 我们还是以一张图来看下小伙伴的疑问吧. 接下来,我们就进入正文吧. 什么是PV? PV即Page View,网站浏览量,指页面浏览的次数,用以衡量网站用户访问的网页数量. 用户每次打开一个页面便记…
写在前面 在分布式数据库中间件领域,Mycat和ShardingSphere可以说是在开源界有着相当重要的位置,不少小伙伴也在问我:Mycat和sharding-jdbc哪个好呀!其实,就我本身而言,我作为Mycat的开发者,也深度分析过ShardingSphere的源码.可以这么说:各有各的优势吧!其实,针对ShardingSphere,我也跟ShardingSphere的创始人亮哥聊过,从他那里确实学到了不少有价值的东西.后续我也可能会写一部关于分布式数据库的书籍,也说不定会将Mycat和S…
写在前面 事情是这样的,今年疫情期间,我在某云购买了一套服务器,做什么呢?不是用来部署项目,也不是用来搭建网站,而是用来做代码备份和管理.没错,都是我个人的代码,也许你会说,你个人能有多少代码啊?确实不多,备份的都是我在GitHub上开源的个人作品.为何做这个备份管理?原因就是谁TM能保证某国哪天不会限制我们使用GitHub呢? 小伙伴们可以关注[冰河技术]微信公众号,回复[Git]领取Git安装包. 部署私有Git服务 说干就干,下单,付款一气呵成,接下来就是搭建企业级的私有Git服务.搭建完…
写在前面 从开始学习Java的时候,我们就接触了这样一种观点:Java中的对象是在堆上创建的,对象的引用是放在栈里的,那这个观点就真的是正确的吗?如果是正确的,那么,面试官为啥会问:"Java中的对象就一定是在堆上分配的吗?"这个问题呢?看来,我们从接触Java就被灌输的这个观点值得我们怀疑. 关于面试题 标题中的面试题为:Java中的对象都是在堆上分配的吗? 面试官这样问,有些小伙伴心里会想:我从一开始学习Java时,就知道了:Java中的对象是在堆上创建的,对象的引用是存储到栈中的…
写在前面 今天,一名读者反馈说:自己出去面试,被面试官一顿虐啊!为什么呢?因为这名读者面试的是某大厂的研发工程师,偏技术型的.所以,在面试过程中,面试官比较偏向于问技术型的问题.不过,技术终归还是要服务于业务的,光会技术可不行,还要将技术应用于项目中才行.结果,最后问了一连串的项目实战问题,其中一个问题就是:如何在不重新复制整个库的情况下,添加新数据库到MySQL主从复制环境?结果... 问题阐述 明确问题 面试官的问题比较明确:如何在不重新复制整个库的情况下,添加新数据库到MySQL主从复制环…
写在前面 最近面试跳槽的小伙伴有点多,给我反馈的面试情况更是千差万别,不过很多小伙伴反馈说:面试中的大部分问题都能够在我的公众号[冰河技术]中找到答案,面试过程还是挺轻松的,最终也是轻松的拿到了Offer!听到这些,我也确实替小伙伴们高兴!今天,我们再分享一个面试场景:讲讲Redis的五大数据类型?如何使用? 关于Redis 在正式分析题目的问题之前,我们先来聊聊Redis的基础知识. 基于键值对的存储系统 :字典形式. 五种数据结构:字符串(String),Hash(字典),列表(List),…
写在前面 在<[FastDFS]小伙伴们说在CentOS 8服务器上搭建FastDFS环境总报错?>和<[FastDFS]面试官:如何实现文件的大规模分布式存储?(全程实战)>文章中,我们详细的搭建了FastDFS环境.那么,现在环境是有了,如何将FastDFS整合到项目中呢?今天,我们就一起来聊聊这个问题. 注:工程源码已提交到:https://github.com/sunshinelyz/mykit-fastdfs. 编译Java客户端 在FastDFS的官方Github上,专…
写在前面 最近,有个小伙伴问我:我在SpringBoot项目中,使用@JsonFormat注解标注LocalDateTime类型的字段时,LocalDateTime反序列化失败,这个我该怎么处理呢?别急,我们一起来解决这个问题. 小伙伴的疑问 解答小伙伴的疑问 我们可以使用SpringBoot依赖中的@JsonFormat注解,将前端通过json传上来的时间,通过@RequestBody自动绑定到Bean里的LocalDateTime成员上.具体的绑定注解使用方法如下所示. @JsonForma…
写在前面 相信从事Java工作的小伙伴们多多少少都会接触到Maven.使用Maven来搭建项目,能够极大的方便我们构建项目的依赖关系,对于项目中需要依赖的Jar包,也只是简单的在pom.xml中进行配置即可.可以说,Maven能够极大的提高我们的开发效率和项目的维护效率,能够统一项目的依赖环境,提高团队的协作效率.然而,尽管使用Maven的小伙伴很多,但真正掌握了Maven核心配置的又有多少呢? 项目依赖 项目依赖是指Maven 通过依赖传播.依赖优先原则.可选依赖.排除依赖.依赖范围等特性来管…
写在前面 转眼间,今天已经是假期的第4天了.今天要给大家分享点啥呢?想了半天,想起了之前去某宝面试的情景.记得面试前自己基于Maven开发过一些简单实用的插件,而且在自己的本地环境中一直在使用,极大的提高了我的开发和工作效率.恰好在面试时,某宝的面试官问了我一个问题:开发过Maven插件吗?我:开发过啊.面试官:那你给我讲讲你是如何开发的呢?我:吧啦吧啦吧啦...面试官:下周入职吧!我:好的.就这样,我拿到了Offer. Maven插件的相关概念 插件坐标定位 插件与普通jar包一样包含坐标定位…
写在前面 不管是传统软件企业还是互联网企业,不管是管理软件还是面向C端的互联网应用.都不可避免的会涉及到报表操作,而对于报表业务来说,一个很重要的功能就是将数据导出到Excel.如果我们在业务代码中,嵌入很多导出Excel的逻辑,那我们的代码就会变得异常臃肿,不利于维护,而且导出Excel的核心逻辑基本相同.那我们能否将导出Excel的核心逻辑封装成一个工具,当我们需要导出Excel时,只是向工具简单的传入数据呢?于是乎,mykit-excel诞生了! mykit-excel的github链接地…
写在前面 最近小伙伴加群时,我总是问一个问题:Java中的String类占用多大的内存空间?很多小伙伴的回答着实让我哭笑不得,有说不占空间的,有说1个字节的,有说2个字节的,有说3个字节的,有说不知道的,更让人哭笑不得的是竟然还有人说是2的31次方.那如果真是这样的话,服务器的内存空间还放不下一个字符串呀!作为程序员的我们,可不能闹这种笑话呀.今天,我们就一起来聊聊Java中的String到底占用多大的内存空间! Java对象的结构 首先,我们来下Java对象在虚拟机中的结构,这里,以HotSp…
写在前面 最近,在使用SpringBoot+K8S开发微服务系统,既然使用了K8S,我就不想使用SpringCloud了.为啥,因为K8S本身的就提供了非常6的服务注册与发现.限流.熔断.负载均衡等等微服务需要使用的技术,那我为啥还要接入SpringCloud呢?额,说了这么多,在真正使用SpringBoot+K8S这一套技术栈的时候,也会遇到一些问题,比如我不需要使用SpringCloud时,调用其他服务时,我使用的是原生的OpenFegin,在使用OpenFegin调用其他服务的时候,就遇到…
写在前面 大家都知道,SpringCloud Alibaba是在SpringCloud基础上开发并开源的一套微服务架构体系.那么,肯定会有小伙伴要问:在微服务领域,SpringCloud已经很火了,为何还要弄出个SpringCloud Alibaba?这不是又要增加我的学习成本吗?今天,我们就来一起聊聊这个话题. Dubbo与SpringCloud 在之前的微服务架构中,SpringCloud和Dubbo可以说是微服务架构中两种最具代表性的框架(严格意义上来说SpringCloud不是一个框架)…
写在前面 前段时间搭建了一套MySQL分布式数据库集群,数据库节点有12个,用来测试各种分布式事务方案的性能和优缺点.测试MySQL XA事务时,正当测试脚本向数据库中批量插入数据时,强制服务器断电!注意:是直接拔电源,使其瞬间断电,再次重启服务器后,MySQL数据库报错了.特此记录MySQL XA事务的恢复. MySQL XA事务问题 服务器强制断电后重启,此时MySQL报错,查看MySQL启动日志时,发现如下所示的错误信息. InnoDB: The log sequence number i…
写在前面 MySQL数据库在互联网行业使用的比较多,有些小伙伴可能会认为MySQL数据库比较小,存储不了很多的数据.其实,这些小伙伴是真的不了解MySQL.MySQL的小不是说使用MySQL存储的数据少,而是说其体积小,比较轻量.使用MySQL完全可以存储千亿级别的数据,这个我会在后面的文章中来给小伙伴们分享如何使用MySQL存储千亿级别以上的数据.或者小伙伴们可以提前预定我的新书<MySQL技术大全:开发.优化与运维实战>.好了,说了这么多,今天给大家分享一篇有关MySQL的经典面试题:如何…
写在前面 很多小伙伴留言说让我写一些工作过程中的真实案例,写些啥呢?想来想去,写一篇我在以前公司从零开始到用户超千万的数据库架构升级演变的过程吧. 本文记录了我之前初到一家创业公司,从零开始到用户超千万,系统压力暴增的情况下是如何一步步优化MySQL数据库的,以及数据库架构升级的演变过程.升级的过程极具技术挑战性,也从中收获不少.希望能够为小伙伴们带来实质性的帮助. 业务背景 我之前呆过一家创业工作,是做商城业务的,商城这种业务,表面上看起来涉及的业务简单,包括:用户.商品.库存.订单.购物车.…