自定义博客皮肤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)
  • 资源 (6)
  • 收藏
  • 关注

原创 高能预警:Lombok相爱相杀的安全隐患

不得不承认,Lombok 是一个很不错的 Java 库,它可以让你在少写代码的同时耍耍酷,简单的几个注解,就可以干掉一大片模板代码。但是,所有的源代码很多时候是用来阅读的,只有很少的时间是用来执行的 (你可以细品这句话)。接下来,我将用几个大家耳熟能详的场景,重演我们是如何掉入 Lombok 的戏法陷阱。# 爱的开始,恨的起源面对 Lombok 提供的诸多 “神走位”,你并不会介意在 IDE 上新增一个插件。对于 IntelliJ IDEA 玩家而言,只需搜索 “Lombok ...

2020-10-15 10:33:28 21957

原创 产品高阶能力:架构图的设计与画法

今天作者和大家分享的是产品架构图的设计与画法,架构图将可视化的具象产品和服务,抽象成信息化、模块化、层次结构以及关联关系清晰的架构,并通过不同分层的交互关系、功能模块的组合、数据和信息的流转,来传递产品的业务流程、商业模式和设计思路。

2020-10-14 13:34:42 22220

原创 谈谈对于企业级系统架构的理解

在我们刚开始学习架构的时候,首先会想到分层的概念,分层架构比较经典的是三层架构,那么,什么是三层架构呢?它包括表现层、业务层、数据访问层;而对于一个新手来说,从抽象意义上的三层架构,逻辑上就划分为三个层。这个是最基本的三层架构模式。表现层充当系统的界面呈现以及UI逻辑的角色,也就是说,UI(用户界面)属于表现层;举一个对于asp.net WebForm来说,人们喜欢把对于UI的控制逻辑(服务器控件的读取、设置、事件等等)写在页面的后置隐藏代码中,并且依赖业务逻辑层。当然,服务器控件支持数据绑

2020-10-14 08:17:36 21209 1

原创 微服务架构的核心关键点

针对构建微服务架构时需要考量的核心关键点,总结如图所示微服务架构的核心关键点- 微服务的服务治理 -当我们架构微服务应用时首先遇到的一个问题是,作为消费者如何访问并调用服务提供者所提供的服务,作为服务提供者如何能让服务消费者知道并进行消费。在传统应用开发时,通常是在开发语言层面上解决这个问题,可能我们从来也没有考虑过这个问题,甚至可以说这个问题在传统开发时根本不存在。但在微服务架构下,同一个微服务可能同时存在多个实例,并且这些微服务实例还在不停上线、下线,那么它...

2020-10-14 08:15:34 21273

转载 湖仓一体:从零开始搭建数据仓库

数仓全景图镇楼00建设过程数仓建模的过程分为业务建模、领域建模、逻辑建模和物理建模,但是这 些步骤比较抽象。为了便于落地,我根据自己的经验,总结出上面的七个步骤:梳理业务流程、垂直切分、指标体系梳理、实体关系调研、维度梳理、数仓分层以及物理模型建立。每个步骤不说理论,直接放工具、模板和案例。01业务流程1找到公司核心业务流程,找到谁,在什么环节,做什么关键动作,得到什么结果。2梳理每个业务节点的客户及关注重点,找到...

2020-10-14 08:02:18 1220 2

原创 优秀架构师必须拥有的架构思维习惯

程序员的迷茫不仅仅是面对技术繁杂的无力感,更重要的是因为长期埋没于软件 世界的浩大的分工体系中,无法看清从业务到软件架构的价值链条,无法清楚定位自己在分工体系的位置,处理不好自身与技术、业务的关系所致。很多程序员打心底不喜欢业务,这一点我曾经也经历过,我更宁愿从事框架工 具、技术组件研究的相关事情。我有个朋友经常吐槽我说:”你们天天加班加点写了那么多代码,然后呢?有改变什么吗?还不是写出了一堆垃圾。”仔细想想很多时候业务在我们脑海中存留的只是逻辑和流程,我们丢失的是对业务场景的...

2020-10-14 08:00:00 22566 2

原创 企业架构中常见的十种软件架构模式

想知道如何设计大型企业级的系统吗?在开始主要的代码开发之前,我们必须选择一种合适的体系架构,它将为我们提供所需的功能和质量属性。因此,在将它们应用到我们的设计之前,应该先了解不同的体系结构。- 什么是架构模式 -根据维基百科,架构模式是在给定上下文中解决软件架构中常见问题的通用、可重用的解决方案。架构模式类似于软件设计模式,但范围更广。在本文中,我会简单介绍下列10种常见的架构模式,及其用途、优势和劣势。- 分层模式 -...

2020-10-14 07:56:36 22621 1

原创 数字化转型:应用工程代码自动生成之模板替换(一)

目录1、应用场景:2、实战1.环境搭建2.代码3.运行结果3、官方网站4、总结:关注我公众号【香菜聊游戏】序言:对于重复的工程和基础代码我们怎么通过工程化的手段自动生成呢?今天就介绍下偷懒大杀器——Freemaker。【FreeMarker 是一款模板引擎:即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件】。官方的解释真的是高级.

2020-10-13 09:07:54 22526

原创 Spring Cloud架构的各个组件的原理分析

我们先认识一下SpringCloud的各个组件,然后知其所以然。原理讲解前,先看一个最经典的业务场景,如开发一个电商网站,要实现支付订单的功能,流程如下: 创建一个订单之后,如果用户立刻支付了这个订单,我们需要将订单状态更新为“已支付” 扣减相应的商品库存 通知仓储中心,进行发货 给用户的这次购物增加相应的积分 如上,微服务的应用场景和核心竞争力: 降低耦合:每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度..

2020-10-12 08:41:22 22949

原创 高能预警:Java ConcurrentHashMap里面也有死循环!!!

JDK BUG这篇文章,聊一下我最近才知道的一个关于 JDK 8 的 BUG 吧。首先说一下我是怎么发现这个 BUG 的呢?大家都知道我对 Dubbo 有一定的关注,前段时间 Dubbo 2.7.7 发布后我看了它的更新点,就是下面这个网址: https://github.com/apache/dubbo/releases/tag/dubbo-2.7.7其中有 Bugfixes 这一部分:每一个我都去简单的看了一下,其他的 Bugfixes 或多或少都和 Dubbo 框架有一定的关.

2020-10-12 08:40:38 21766 1

原创 数字化转型企业人才画像

当前,产业数字化已成为经济发展的最大确定性。在“新基建”等政策引导下,以数字、信息经济为内核的基础设施、资源要素逐渐丰富,制造、物流、零售、金融、农业等产业在数字化转型过程中爆发出相当高的效率提升和边际产出,而数字化人才的培育则因其技能场景极具个性化、人才培养与组织环境不嵌套等问题成为企业实现数字化能力的主要瓶颈。该报告旨在探讨企业在数字化人才培育方面的主要困境、基本思路、以及可行的路径措施。通过呈现数字化人才特征画像、梳理建立个性化能力模型、以及分析建设数字化人才梯队的实践探索,为处在数字化转型...

2020-10-12 08:39:05 24591 1

原创 数据湖与数据仓库的新未来:阿里提出湖仓一体架构

近几年,随着数据湖概念的兴起,业界对于数据仓库和数据湖的对比甚至争论始终不断。数据仓库和数据湖的区别到底是什么?本文作者来自阿里巴巴计算平台部门,在深度参与阿里巴巴大数据 / 数据中台领域建设之后,将对数据湖和数据仓库的来龙去脉进行深入剖析,阐述两者融合演进的新方向——湖仓一体。大数据 20 年发展的变与不变概述大数据从本世纪初发展到现在,已经历 20 年。从宏观层面观察其中的发展规律,可以高度概括成如下五个方面:图 1. 阿里巴巴双十一单日处理数据量增长 数据保持高速增长...

2020-10-12 08:37:33 26991

原创 VIPKID从“快进键”到“慢进键” 的自我突围。

1VIPKID 想要站回在线教育的“舞台”中央VIPKID 开始赚钱了。前不久,VIPKID 宣布,公司单位运营利润 (UE) 连续两个季度为正,90% 的渠道首单实现盈利。VIPKID 表示,公司由此成为国内唯一一家收入在百亿级规模且实现 UE 转正的在线教育企业。梧桐树资本投资总监董帅在接受 InfoQ 采访时表示,“在百亿级规模”其实是这一成就的前提约束。其实在一些垂直赛道中,规模不如 VIPKID 大的成长期在线教育公司应该会有不少已经实现盈利。单位运营利润 (UE) 被视为衡量企业

2020-10-10 14:26:59 22899

原创 微服务设计中的API网关模式

根据 Gartner 对微服务的定义:“微服务是范围狭窄、封装紧密、松散耦合、可独立部署且可独立伸缩的应用程序组件。”与将模块高度耦合并部署为一个大的应用程序相比,微服务的目标是将应用程序充分分解或者解耦为松散耦合的许多微服务或者模块,这样做对下面几点有很大帮助: 每个微服务都可以独立于应用程序中的同级服务进行部署、升级、扩展、维护和重新启动。 通过自治的跨职能团队进行敏捷开发和敏捷部署。 运用技术时具备灵活性和可扩展性 在微服务架构中,我们根据各自的特定需求部署不同的松耦

2020-10-10 14:23:35 22267

原创 就算有“中台”模式,企业也应该重视“大部头”架构设计

很多人可能认为互联网企业没做过“笨重”的企业架构,依然不乏成功的创新和指数型的增长,甚至带动了各种跨行业的竞争和进步。这点不容置喙,但是,我们也必须意识到,上述结论也有需要注意之处,比如,“幸存者偏差”,我们关注星光耀眼的互联网头部企业时,还有更多的互联网企业怀揣着各种创意、甚至比现有商业模式更好的创意倒在了路上,互联网模式并非所有互联网企业的“免死金牌”。即便是成为头部企业的幸存者,他们也越来越重视企业整体的管理包括战略管理,不少大型互联网企业设有战略管理岗位,随着企业规模的增大,一些传统企业管理

2020-10-10 14:21:16 23058

原创 超越大数据分析:流处理系统迎来黄金时期

摘要流处理作为一个一直很活跃的研究领域已有 20 多年的历史,但由于学术界和全球众多开源社区最近共同且成功的努力,它当前正处于黄金时期。本文的内容包含三个方面。首先,我们将回顾和指出过去的一些值得关注的但却很大程度上被忽略了的研究发现。其次,我们试图去着重强调一下早期(00-10)和现代(11-18)流系统之间的差异,以及这些系统多年来的发展历程。最重要的是,我们希望将数据库社区的注意力转向到最新的趋势:流系统不再仅用于处理经典的流处理工作负载,即窗口聚合和联接。取而代之的是,现代流处理系统正越来越多地

2020-10-10 14:18:00 22599

原创 数字化转型中的人才技能重建

当前,产业数字化已成为经济发展的最大确定性。在“新基建”等政策引导下,以数字、信息经济为内核的基础设施、资源要素逐渐丰富,制造、物流、零售、金融、农业等产业在数字化转型过程中爆发出相当高的效率提升和边际产出,而数字化人才的培育则因其技能场景极具个性化、人才培养与组织环境不嵌套等问题成为企业实现数字化能力的主要瓶颈。该报告旨在探讨企业在数字化人才培育方面的主要困境、基本思路、以及可行的路径措施。通过呈现数字化人才特征画像、梳理建立个性化能力模型、以及分析建设数字化人才梯队的实践探索,为处在数字化转型过..

2020-10-10 14:11:18 22767

原创 闲鱼服务端架构演进历程

闲鱼是从阿里巴巴某一茶水间“游”出来的。2014 年 6 月,闲鱼诞生,2 年时间不到,其用户数突破 1 亿。如今,它已经成为国内最知名的闲置交易平台,拥有数亿用户,年交易额超过 2000 亿,并开启了一个万亿市场。闲鱼能有今天的成绩,离不开背后的技术迭代、架构升级和技术人的付出。闲鱼初创时,架构设计面临着哪些挑战?闲鱼服务端架构在 6 年时间里是怎样演进的?闲鱼在服务端架构上还在做哪些新尝试?...... 带着这些问题,InfoQ 记者采访了闲鱼技术部高级技术专家巴滕。自闲鱼创立以来,他一直参与闲鱼...

2020-10-10 14:03:44 23832 1

原创 运维必备的DevOps工具链大盘点

本篇文章中将介绍一些能够帮助你实现 DevOps 目标的核心技术类别和具体技术。1关于 DevOps 及其工具关于 DevOps 及其工具,需要记住: 持续改进是目标; DevOps 不是花钱买来的; 分阶段采用工具。 2计划工具为什么计划工具对于 DevOps 来说很重要? 分享目标; 透明性; 赋能。 计划工具示例GitLabGitLab 是一个基于 Web 的 DevOps 生命周期工具。它提供了一个 Git 仓库管理器.

2020-10-10 14:01:43 22406

原创 架构师之殇:中间件业务在网易轻舟容器平台的性能调优实践

随着业务容器化的推进,经常有客户抱怨应用 QPS 无法和在物理机或者云主机上媲美,并且时常会出现 DNS 查询超时、短连接 TIME_OUT、网络丢包等问题,而在容器中进行调优与诊断的效果因为安装工具的复杂度大打折扣。本文基于网易轻舟中间件业务容器化实践,总结容器场景下的性能调优心得,供读者参考。1性能调优的“望闻问切”在讨论容器化场景的性能调优之前,先谈一下性能调优中的“望闻问切”。对于性能问题,大部分人首先想到的是 CPU 利用率高,但这只是个现象,并不是症状。打个比方:感冒看医生时,病人跟大夫

2020-10-10 13:57:53 22344

原创 架构师之殇:一个反对“平台团队”的案例

运营多个专注于各自技术业务领域的平台比运营一个平台团队更好。平台思维是关于促进演进的,而不是关于重用的,而专注于重用会破坏这种机会。将平台思维灌输到所有团队中,给自主领域和平台出现的机会,而不应强加于事。超过一定规模的大多数技术公司都开始考虑创建一个内部平台团队来构建 / 管理供多个团队 / 产品使用的系统。这是一个杠杆率非常高的团队,因为他们可以同时对许多产品产生有益的影响,并为能给组织带来巨大的动力。但是,今天,我想提出一些内部平台团队无法顺利工作的情况,至少我遇到过这样的情况。TL;DR—

2020-10-10 13:54:12 21768

原创 数字时代:DevOps工程师的必备技能清单

在公司成立之前,我们团队就已经开始应用 DevOps 实践,而我个人,早在十年前,在另一家公司担任系统管理员的时候,就第一次接触到了这种新鲜的思维方式。那个时候,还没有 DevOps 这种标准说法,但是当时实践的人也自己摸索出了一些相关的概念与原则。 持续集成; 自动交付; 每位团队成员都对产品负有责任; 与客户直接沟通; 收集并分析业务 / 应用程序指标; 说明文档等; 后来证明以上这一切都是对敏捷倡议中各项实践的逻辑扩展,而催生出这些方法的温床

2020-10-10 13:51:08 21827

原创 真正的高手,都懂得构建自己的知识体系

导语高手一般分为两种,一种比较明显,他们有很成体系的逻辑,术法清晰;另一种比较难以被察觉,他们悟性高,通常风格犀利自成一派。对于我们大多数人来说,前者的可借鉴性更高,前提是你足够努力和坚持,塑造系统的思维并予以验证和升级。互联网给了我们前所未有的,成为更好自己的可能。所有的信息触手可得,无分出身,只要你想,皆有可能。获取信息的成本越来越低,但筛选整理的成本并没有降低。查理·芒格说:知识有两种,一种是知识,另一种是表演。任何知识如果是碎片的、孤立的、一知半解的...

2020-10-09 13:44:26 23197

智能制造概论,从自动化到智能化

智能制造系统:把机器智能融入到包括人和资源形成的系统中,使制造活动能动态地适应需求和制造环境的变化,从而满足系统的优化目标。

2023-11-02

Java 多线程测试策略及测试方法探讨.pdf

当前数字化转型时代,大数据处理及人工智能应用陆续应用到日常的生产活动中,涉及到大量的人机协同和人机交互的应用场景,数据发掘及分析为千人万面的辅助支撑越来越离不开多线程。本书详细介绍了多线程知识,是一本非常适合初学者入门学习的教程。

2020-07-09

Java 设计模式

Java设计模式

2017-06-10

读书雷达图谱

读书雷达图谱

2017-01-10

Track-Management

Conference-Track-Management

2016-12-24

事件日子生成器

事件日志生成器

2016-11-15

空空如也

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

TA关注的人

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