7 科技D人生

尚未进行身份认证

我要认证

专注于金融科技领域的技术人

等级
TA的排名 123

Java基础学习总结(160)——JDK15正式发布,划时代的ZGC同时宣布转正

✍前言2020年9月15日,JDK15正式发布,可谓如约而至。按照Java SE的发展路线图,JDK14自此停止更新。值得注意的是JDK15并非「LTS」版本,Oracle官方对Java SE的支持路线图如下:JDK8的扩展支持时间超过了JDK11,Oracle你是认真的吗?那么自Java11之后,哪个版本才是LTS版本呢?Oracle官方并没给出具体参考路线图,但可参考OpenJDK的这张:可以看到「JDK17」将是下一个LTS版本,预计发版日期是2021年9月份。当然喽这只是Open

2020-09-18 15:09:49

Java基础学习总结(159)——JDK15 正式发布了!新增14个新特性

前言2020-09-15 Oracle 如期发布了JDK15了。在的 JDK 真变成了“版本帝”,无力吐槽啊,版本发到 15,大部分人却都还在用着 JDK 7/8,甚至 6。不过作为技术人员来说关注新技术。学习新技术应该是人生的常态。OracleJDK 15 发布地址:https://www.oracle.com/java/technologies/javase/15all-relnotes.htmlOpenJDK 15 发布地址:https://openjdk.java.net/

2020-09-17 09:19:56

Windows学习总结(20)——Win10 子系统Linux(Ubuntu 18.04)的安装与卸载

话说微软对Linux 越来越友好了。我们可以选择从微软应用商店下载安装Ubuntu子系统。安装之前需要做一下设置。以对虚拟化的支持。安装完成后截图:如要卸载输入如下命令:

2020-09-15 16:55:22

Linux学习总结(58)——生产环境运维故障处理指南

1、故障处理原则故障处理的原则只有两个:以恢复业务优先 及时升级1.1、恢复业务优先恢复业务优先是指,不管在任何情况下,也不管任何级别的故障,都要先做到恢复业务,这个和故障定位不同,也有很多人会产生歧义,觉得如果不找到问题的根源,如何能恢复业务,下面我举一个例子说明二者的差别:如果 A 应用调 B 应用时,调用失败,这时我们要怎么做?方法一,排查问题,寻找A到B之间会经过哪些环节,找到其中的出问题的环节,比如HA连接异常,进行重启或者扩容恢复。方法二,从A应用的服务器去ping

2020-09-11 13:54:24

鸿蒙OS代码正式开源!!!

鸿蒙OS代码正式开源!!!鸿蒙官网同步正式上线!!!这是中国软件行业值得记录的时刻!!!开源代码地址:https://openharmony.gitee.com/openharmony。134个仓,每个仓求赞求Star!没有人能熄灭漫天星火,每一位开发者都是社区要汇聚的星星之火!!!鸿蒙官网:https://www.harmonyos.com开源项目官网:https://www.openatom.org/openharmony开源代码仓库:https://openharmony.g

2020-09-11 10:10:14

Spring Boot学习总结(23)——Spring Boot 实践经验总结

1、使用 BOM 维护第三方依赖Spring Boot 项目本身使用和集成了大量的开源项目,它帮助我们维护了这些第三方依赖。但是也有一部分在实际项目使用中并没有包括进来,这就需要我们在项目中自己维护版本。如果在一个大型的项目中,包括了很多未开发模块,那么维护起来就非常的繁琐。怎么办呢?事实上,Spring IO Platform 就是做的这个事情,它本身就是 Spring Boot 的子项目,同时维护了其他第三方开源库。我们可以借鉴 Spring IO Platform 来编写自己的基础项目 platf

2020-09-10 10:00:26

Mysql学习总结(81)——为什么MySQL不推荐使用uuid或者雪花id作为主键?

前言在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一,单机递增),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏处?本篇博客我们就来分析这个问题,探讨一下内部的原因。一、Mysql和程序实例1.1.要说明这个问题,我们首先来建立三张表分别是user_auto_key,user_uuid,user_random_key,分别表示自动增长的主键,uuid作为

2020-09-09 13:33:57

消息中间件学习总结(21)——RocketMQ 消息丢失场景分析及如何解决!

项目中使用了MQ,那么就不可避免的需要考虑消息丢失问题。在一些涉及到了金钱交易的场景下,消息丢失还是很致命的。那么在RocketMQ中存在哪几种消息丢失的场景呢?先来一张最简单的消费流程图:上图中大致包含了这么几种场景: 生产者产生消息发送给RocketMQ RocketMQ接收到了消息之后,必然需要存到磁盘中,否则断电或宕机之后会造成数据的丢失 消费者从RocketMQ中获取消息消费,消费成功之后,整个流程结束 这三种场景都可能会产生消息的丢失,如下图所示:1

2020-09-09 13:26:55

Java基础学习总结(158)——开发Leader如何做CodeReview

一、目标和原则提高代码质量,及早发现潜在缺陷,降低修改/弥补缺陷的成本 促进团队内部知识共享,提高团队整体水平 评审过程对于评审人员来说,也是一种思路重构的过程,帮助更多的人理解系统 是一个传递知识的手段,可以让其它并不熟悉代码的人知道作者的意图和想法,从而可以在以后轻松维护代码 可以被用来确认自己的设计和实现是一个清楚和简单的 鼓励相互学习对方的长处和优点 高效迅速完成Code Review二、流程和规则采用Git Flow + Pull Request(PR)模式来做Code Re

2020-09-07 19:37:42

Java基础学习总结(157)——国产开源JDK来了

简介Alibaba Dragonwell 是一款免费的, 生产就绪型Open JDK 发行版,提供长期支持,包括性能增强和安全修复。阿里巴巴拥有最丰富的Java应用场景,覆盖电商,金融,物流等众多领域,世界上最大的Java用户之一。Alibaba Dragonwell作为Java应用的基石,支撑了阿里经济体内所有的Java业务。Alibaba Dragonwell完全兼容 Java SE 标准,您可以在任何常用操作系统(包括 Linux、Windows 和 macOS)上开发 Java 应用程序, 运行

2020-09-07 10:06:19

Redis学习总结(18)——Redis 常见的使用场景汇总

1、缓存缓存现在几乎是所有中大型网站都在用的必杀技,合理的利用缓存不仅能够提升网站访问速度,还能大大降低数据库的压力。Redis提供了键过期功能,也提供了灵活的键淘汰策略,所以,现在Redis用在缓存的场合非常多。2、排行榜很多网站都有排行榜应用的,如京东的月度销量榜单、商品按时间的上新排行榜等。Redis提供的有序集合数据类构能实现各种复杂的排行榜应用。3、计数器什么是计数器,如电商网站商品的浏览量、视频网站视频的播放数等。为了保证数据实时效,每次浏览都得给+1,并发量高时如果每次都请

2020-09-03 16:04:25

Java基础学习总结(156)——那些年被淘汰的Java技术及框架

一、SwingSwing 算是 Java 早期代替 AWT 的桌面应用 GUI 开发工具包,一个听到就已经淘汰的技术,给我的感觉就是丑丑丑!现在与 AWT 一起在时间这个长河里长眠。如果 Java GUI 库发展历程分为三代,可以是:AWT > SWING > JAVAFX随着 JavaFx 的发布,加速 SWING 的被淘汰。下面这个是用 JavaFx 开发的:现在 JavaFx 也有十来年了,虽然这篇帖子也在说 JavaFx 淘汰了的,只是现在桌面应用不是主流

2020-09-03 15:59:08

Dubbo学习总结(11)——Dubbo3.0 - 开启下一代云原生微服务

导读:本文整理自作者于 2020 年云原生微服务大会上的分享《Dubbo3.0 - 开启下一代云原生微服务》,主要介绍了关于思考 rpc 框架层面,功能演进的方向是什么?以及怎么更好地支持云上的多语言开发的新思考。看到这个题目,大家可能会有几个问题,比如,什么是云原生微服务?Dubbo3.0 是什么?和目前的 Dubbo2.0 有什么区别?用了 Dubbo3.0 会带来哪些业务视角的好处?后面的分享会对这些问题逐一解答。这次分享分为以下几个环节: Dubbo 的演进历史 Dubbo

2020-09-03 10:18:18

消息中间件学习总结(20)——主流MQ比较及MQ常见使用场景总结

前言MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据机构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队列拉取消息,或者订阅相应的队列,由MQ服务端给其推送消息。消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。解耦:一个业务需要多个模块共同实现,或者一条消息有多个系统需要对应处理,只需要主业务完成以后,.

2020-09-02 13:35:15

两个月新增 80万行代码,Linux 内核维护为什么不会崩?

8 月初,当 Linux 5.8 RC 版本开放测试时,大多数的新闻都聚焦于它的大小,称其为“史上最大的内核版本”。正如 Linus Torvalds 本人指出的那样,“尽管没有任何一件事情能脱颖而出……但 5.8 似乎是我们有史以来最大的发行版之一。”确实,刚刚发布的 Linux 内核 5.8 RC 具有超过 14,000 个 commit,约 80 万行新代码以及大约 100 名新贡献者。要知道,距离 5.7 正式版发布才仅仅过去了约 2 个月的时间。Linux 内核维护者 Steve.

2020-08-28 15:53:07

Java基础学习总结(155)——Java 日志框架怎么选?Logback Or Log4j2?

前言前段时间写了一篇文章(文章链接:Logback配置文件这么写,TPS提高10倍),反响还不错,有很多网友也发表了自己的意见:总结一下就是:logback性能测试同步和异步TPS相差不大 都9102年了还在用logback看到网友的意见后又继续去做了一波测试和调研服务器硬件CPU 六核 内存 8G测试工具JMeter JProfile APM(New Relic)logback日志框架同步和异步测试之前的测试结果存在以下几点问题:...

2020-08-12 16:01:53

Spring Boot学习总结(22)——如何定制自己的 springboot starter 组件呢?

引言我们日常项目中都会用到springboot,只要我们用到springboot,一定会用到各种spring-boot-starter。下面我们通过一个springboot starter 的demo(实现一个简单的通过日志记录方法的执行时间的一个组件)制作过程来总结如何定制自己的springboot starter 组件。一、创建一个Maven工程在使用spring-boot-starter,会发现,有的项目名称是 XX-spring-boot-starter,有的是spring-boot-s

2020-08-11 16:58:28

Docker学习总结(52)—— Docker容器环境变量相关知识点的总结

一、前言了解Docker容器的运行环境非常重要,我们把应用放在容器里执行,环境变量会直接影响程序的执行效果。所以我们要知道容器内部的环境变量,也要知道如何改变这些环境变量。二、查看环境变量方式一:docker inspect通过docker inspect命令不仅能查看环境变量,还能查看容器其它相关信息,非常丰富,以Json格式输出。$dockerinspectcentos截取片段来看看:可读性还可以,但也不算很高,可以通过grep命令过滤一下:$docker...

2020-08-06 09:14:34

RabbitMQ学习总结(9)——RabbitMQ 核心知识点再总结

一、核心概念 server:又称broker,接受客户端连接,实现AMQP实体服务。 connection:连接和具体broker网络连接。 channel:网络信道,几乎所有操作都在channel中进行,channel是消息读写的通道。客户端可以建立多个channel,每个channel表示一个会话任务。 message:消息,服务器和应用程序之间传递的数据,由properties和body组成。properties可以对消息进行修饰,比如消息的优先级,延迟等高级特性;

2020-08-05 09:21:41

软件架构五大原则

方案架构师是负责系统架构以及特定产品的技术标准(包括技术、平台、基础架构)的专家。他们为产品设定前景,他们的分析也是产品的定义、设计、交付和永久支持的成功关键。因此,构架师不仅需要了解业务需求,还需要了解符合企业技术总目标的逻辑性、可扩展性及成本效益。架构师的重要技能之一就是能从许多不同的角度来看待架构,因为每一个单独的角度可能不完全相关,但结合在一起就可以从总体的角度来看待产品。这些角度包括原则、标准、模式和反模式、经验法则和经验实践,而这些对于决策方向确定和项目评估成功至关重要。本文将一一介绍这些架构原

2020-08-04 09:20:09

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 分享达人
    分享达人
    成功上传6个资源即可获取