草庐IT

成为Java架构师需要掌握哪些能力?

在互联网开发领域,架构师可以分为业务架构师、中间件架构师、系统架构师。根据不同的方向,在相关招聘平台上,对于架构师的岗位职责和任职要求各有不同。在招聘网站上可以看到真实的例子:Java架构师中间件架构师系统架构师以上是三种不同架构师的能力要求,虽然类型不同,技术要求侧重不同,但是我告诉你,成为架构师都要具备以下能力。1、技术掌控力:成为架构师要掌握全面的技术栈,一切技术皆工具,包括开发语言、框架、各种中间件都是工具,要达到熟练使用,了解其原理和长短板,具备合适场景合理选型和灵活运用的能力。比如要成为业务架构师,那么必须掌握Java生态圈方方面面的技术。如何做到呢?首先需要把所有技术列出来,然后

掌握Web应用的监控与告警

最近组里又来了一个需求:当告警发生时,将告警信息通过企业微信发送给开发的相关负责人,方便尽快排除故障。实际使用Alertmanager来完成这项工作,下面介绍具体的实现方法。详细配置告警通道配置监控最重要的是在故障发生时,能将告警信息发送出来,让正确的人第一时间获悉故障的详情,只有这样才能尽快排除故障。企业微信很多公司都有使用,而且Alertmanager支持将企业微信作为告警通道。按照企业微信的官方文档来配置告警通道,如果觉得麻烦,可以在浏览器上搜索“alertmanager企业微信”关键字,就有很多配置例子展示。我们需要得到下面五个键值对:wechat_api_url:'https://q

掌握Web应用的监控与告警

最近组里又来了一个需求:当告警发生时,将告警信息通过企业微信发送给开发的相关负责人,方便尽快排除故障。实际使用Alertmanager来完成这项工作,下面介绍具体的实现方法。详细配置告警通道配置监控最重要的是在故障发生时,能将告警信息发送出来,让正确的人第一时间获悉故障的详情,只有这样才能尽快排除故障。企业微信很多公司都有使用,而且Alertmanager支持将企业微信作为告警通道。按照企业微信的官方文档来配置告警通道,如果觉得麻烦,可以在浏览器上搜索“alertmanager企业微信”关键字,就有很多配置例子展示。我们需要得到下面五个键值对:wechat_api_url:'https://q

信息架构如何设计?5000字干货帮你快速掌握!

信息架构​设计是每个交互设计​师都必须要掌握的基本功,那到底什么是信息架构设计?为什么要进行信息架构设计,以及如何进行信息架构设计呢?下面我们一一来看。从用户体验设计的5个层次来看,结构层和框架层是交互设计师设计的核心范畴:图1用户体验设计各角色分工框架层呈现的是每一个界面中文本、图片、按钮、控件等元素的具体内容、位置及关系,包含界面布局、导航设计和信息设计。而结构层则决定了每个界面应该有哪些文本、图片、按钮和控件元素,以及这些元素在交互前后的逻辑对应的关系。如果说框架是面,那么结构则是包含面+面与面串联的关系网络。1.What|什么是信息架构?①信息架构的起源信息架构(information

信息架构如何设计?5000字干货帮你快速掌握!

信息架构​设计是每个交互设计​师都必须要掌握的基本功,那到底什么是信息架构设计?为什么要进行信息架构设计,以及如何进行信息架构设计呢?下面我们一一来看。从用户体验设计的5个层次来看,结构层和框架层是交互设计师设计的核心范畴:图1用户体验设计各角色分工框架层呈现的是每一个界面中文本、图片、按钮、控件等元素的具体内容、位置及关系,包含界面布局、导航设计和信息设计。而结构层则决定了每个界面应该有哪些文本、图片、按钮和控件元素,以及这些元素在交互前后的逻辑对应的关系。如果说框架是面,那么结构则是包含面+面与面串联的关系网络。1.What|什么是信息架构?①信息架构的起源信息架构(information

三分钟带你掌握缓存穿透、缓存雪崩、缓存击穿,以及应对方案!

​一、介绍每场后端面试,似乎都少不了关于redis的话题,比如项目使用过哪些分布式缓存服务,为什么要使用redis,有没有碰到过缓存失效、缓存穿透、缓存雪崩等问题。在前几篇关于redis的介绍文章中,我们说到项目中之所以会引入分布式缓存服务,主要是为了解决集群环境下,内存数据不共享的问题,比如session会话,以及一些字典缓存等等,在当前服务器的内存中存储,在另一台服务器中难以获取查询的问题,通过引入缓存服务,将缓存数据统一归一到一个服务器里面,以解决系统中内存数据不共享的问题,同时缓存性能也不会受到很大影响。当然软件开源市场上,也有很多的分布式缓存服务,比如比较有名的有redis、memc

三分钟带你掌握缓存穿透、缓存雪崩、缓存击穿,以及应对方案!

​一、介绍每场后端面试,似乎都少不了关于redis的话题,比如项目使用过哪些分布式缓存服务,为什么要使用redis,有没有碰到过缓存失效、缓存穿透、缓存雪崩等问题。在前几篇关于redis的介绍文章中,我们说到项目中之所以会引入分布式缓存服务,主要是为了解决集群环境下,内存数据不共享的问题,比如session会话,以及一些字典缓存等等,在当前服务器的内存中存储,在另一台服务器中难以获取查询的问题,通过引入缓存服务,将缓存数据统一归一到一个服务器里面,以解决系统中内存数据不共享的问题,同时缓存性能也不会受到很大影响。当然软件开源市场上,也有很多的分布式缓存服务,比如比较有名的有redis、memc

每个开发人员都需要掌握的十个基本 SQL 命令

SQL是一种非常常见但功能强大的工具,它可以帮助从任何数据库中提取、转换和加载数据。数据查询的本质在于SQL。​随着公司和组织发现自己处理的数据量迅速增加,开发人员越来越需要有效地使用数据库来处理这些数据。所以想要暗恋数据领域,SQL是必须的!要掌握这门语言,您需要知道如何使用一些命令,其中大部分命令都基于一些基本命令。让我们一起探索最重要和最基本的SQL命令!*对于整篇文章,我使用的是一个包含5个不同年龄和眼睛颜色的不同人的自制表格。01、SELECTandFROMSQL中的SELECT命令是最简单但也是最重要的命令之一,每个查询都以SELECT开头,这就是您从数据库中获取数据的方式。我们总

每个开发人员都需要掌握的十个基本 SQL 命令

SQL是一种非常常见但功能强大的工具,它可以帮助从任何数据库中提取、转换和加载数据。数据查询的本质在于SQL。​随着公司和组织发现自己处理的数据量迅速增加,开发人员越来越需要有效地使用数据库来处理这些数据。所以想要暗恋数据领域,SQL是必须的!要掌握这门语言,您需要知道如何使用一些命令,其中大部分命令都基于一些基本命令。让我们一起探索最重要和最基本的SQL命令!*对于整篇文章,我使用的是一个包含5个不同年龄和眼睛颜色的不同人的自制表格。01、SELECTandFROMSQL中的SELECT命令是最简单但也是最重要的命令之一,每个查询都以SELECT开头,这就是您从数据库中获取数据的方式。我们总

分布式唯一ID的几种生成方案,一次性全掌握!

​上一篇文章,我们聊了一下分库分表相关的一些基础知识,具体可以参见:​​《用真实业务场景告诉你,高并发下如何设计数据库架构?》​​。这篇文章,我们就接着分库分表的知识,来具体聊一下全局唯一id如何生成。在分库分表之后你必然要面对的一个问题,就是id咋生成?因为要是一个表分成多个表之后,每个表的id都是从1开始累加自增长,那肯定不对啊。举个例子,你的订单表拆分为了1024张订单表,每个表的id都从1开始累加,这个肯定有问题了!你的系统就没办法根据表主键来查询订单了,比如id=50这个订单,在每个表里都有!​所以此时就需要分布式架构下的全局唯一id生成的方案了,在分库分表之后,对于插入数据库中的核