alibaba

款阿里开源的 Java 诊断工具Arthas

有些话、适合烂在心里 提交于 2020-01-07 21:31:48
Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题。 Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux、Mac、Windows 操作系统,命令还支持使用 tab 键对各种信息的自动补全,诊断起来非常利索。 这是它的官方网站: https://alibaba.github.io/arthas/index.html Github地址: https://github.com/alibaba/arthas Arthas能解决什么问题? 让我们来看下 Arthas 的官方解释。 当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 1、这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 2、我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 3、遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗? 4、线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现! 5、是否有一个全局视角来查看系统的运行状况? 6、有什么办法可以监控到JVM的实时运行状态? 看完是不是觉得太牛逼了? 特别是它可以在线反编译类,可以不用加日志在线调试跟踪问题代码。 既然这么牛逼,肯定有不少公司在使用吧,下面列出了官方给出的使用登录顺序图。

记录一个处理Excel的新插件:Alibaba Easy Excel

喜欢而已 提交于 2020-01-07 10:27:14
EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址: https://github.com/alibaba/easyexcel 读Excel DEMO代码地址: https://github.com/alibaba/easyexcel/blob/master/src/test/java/com/alibaba/easyexcel/test/demo/read/ReadTest.java 123456789101112 /** * 最简单的读 * <p>1. 创建excel对应的实体对象 参照{@link DemoData} * <p>2. 由于默认一行行的读取excel,所以需要创建excel一行一行的回调监听器,参照{@link DemoDataListener} * <p>3. 直接读即可 */@Testpublic void simpleRead() { String fileName = TestFileUtil.getPath() + "demo" + File.separator + "demo.xlsx"; // 这里 需要指定读用哪个class去读,然后读取第一个sheet 文件流会自动关闭 EasyExcel.read(fileName, DemoData.class,

spring Cloud Alibaba 学习 笔记

ⅰ亾dé卋堺 提交于 2020-01-07 01:15:27
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> spring boot 开发 官方的插件与非官方插件格式 spring boot actuator 监控 spring boot 配置管理 使用 yml 配置 还是使用 properties 配置 推荐yml : 1. 可读性 2. 如果在 yml 的话,对于springboot 来说 读取配置内容是有序读取的, 但是 properties 就不一定是 按照配置顺序读取配置项的 比如 上面的 yml的话就是 先读取 users 配置然后到 legacy 配置 配置设置 优先级 以上 SOME_ENV就是启动的时候 指定环境变量 。同时 使用 命令行参数也是 一样的使用方式 yml 指定不同环境的 使用 属性 微服务适用场景 1.大型,复杂项目 2. 有快速迭代的需求 3. 访问压力大 不适用微服务场景 1. 业务稳定 2. 迭代周期长 微服务拆分 方法论 DDD 在国内不流行,不过正在越来越流行,可以去了解 心得 合理的粒度 1. 良好地满足业务 2. 幸福感: 团队不会觉得微服务很大,部署方便,每次部署不需要部署很多微服务 3. 增量迭代 : 每次迭代都是 迭代有限个微服务,发布也是发布有限个微服务 4. 持续进化: 对微服务进行再拆分与合并 spring cloud alibaba 简介 参考 文档

阿里巴巴java开发规范

独自空忆成欢 提交于 2020-01-03 01:50:34
一、编程规约 (一) 命名规约 1. 【强制】所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 反例: _name / __name / $Object / name_ / name$ / Object$ 凡是以两个或一个下划线开始,后面紧跟着一个大写字母的标识符,不管它出现在哪里,都是保留给编译程序或标准库函数使用的。 此外,凡是以一个下划线开始,后面不管跟着什么内容的标识符,如果它出现在文件范围内(即它不是出现在一个函数内),那么它也是被保留的。 如果你用一个保留的标识符来作一个变量的名称,结果是没有定义的(程序可能无法编译,或者可以编译但会崩溃)。 即使你能非常幸运地找到一个目前还没有被你的编译程序或函数库使用的标识符,你也应该记住这样的标识符是保留起来供将来使用的。 因此,最好还是避免使用以下划线开始的变量名或函数名。 2. 【强制】所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。 反例: DaZhePromotion [打折] / getPingfenByName() [评分] / int 变量 = 3; 正例: ali / alibaba / taobao / cainiao / aliyun / youku /

阿里巴巴 Java 开发手册(一):命名风格

时光毁灭记忆、已成空白 提交于 2020-01-03 01:39:06
命名风格 1. 【强制】 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 反例: _name / __name / $Object / name_ / name$ / Object$ 2. 【强制】 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式 也要避免采用。 正例: alibaba / taobao / youku / hangzhou 等国际通用的名称,可视同英文。 反例: DaZhePromotion [打折] / getPingfenByName() [评分] / int 某变量 = 3 3. 【强制】类名使用 UpperCamelCase 风格,必须遵从驼峰形式,但以下情形例外:DO / BO / DTO / VO / AO 正例:MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion 反例:macroPolo / UserDo / XMLService / TCPUDPDeal / TAPromotion 4. 【强制】方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从 驼峰形式。 正例: localValue /

SpringCloud Alibaba微服务实战八 - Seata 整合Nacos

我是研究僧i 提交于 2019-12-29 09:34:47
上篇文章中我们使用的是Seata的file配置实现分布式事务,既然本系列文章用的是Springcloud alibaba全家桶而Seata又恰好支持Naocs,那么我们肯定也将选择Nacos作为Seata的注册配置中心。本篇文章我们将一步一步把Seata整合上Nacos,大家伙跟我一起动手试试吧~ 注本篇文章依赖于上篇文章 SpringCloud Alibaba微服务实战七 - 分布式事务 配置调整 服务端配置修改 服务端主要是修改 \seata\conf\registry.conf 文件,让Seata使用Nacos作为注册配置中心,修改后的文件如下: registry { # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa type = "nacos" nacos { serverAddr = "192.168.136.130:8848" namespace = "" cluster = "default" } } config { # file、nacos 、apollo、zk、consul、etcd3 type = "nacos" nacos { serverAddr = "192.168.136.130:8848" namespace = "" } } 将Seata配置推到Nacos 此处主要修改 \seata\conf

Spring Cloud Ilford 版本又来了

我与影子孤独终老i 提交于 2019-12-24 18:11:08
Spring Cloud 联合创始人 Spencer Gibb 发布了 Spring Cloud 2020 的计划。 本文就来分析一下 Spring Cloud 2020 代号:Ilford (伊尔福德) 公布 Spring Cloud 的下个版本代号 Ilford ,第一个版本计划 2020年3月份发布 。 核心依赖为: Spring Framework 5.3 、 Spring Boot 2.4 删除已进入维护模式的模块: spring-cloud-netflix-archaius spring-cloud-netflix-hystrix-contract spring-cloud-netflix-hystrix-dashboard spring-cloud-netflix-hystrix-stream spring-cloud-netflix-hystrix spring-cloud-netflix-ribbon spring-cloud-netflix-turbine-stream spring-cloud-netflix-turbine spring-cloud-netflix-zuul 组件替代说明 以下为 官方推荐组件 CURRENT REPLACEMENT Hystrix Resilience4j Hystrix Dashboard Turbine Ribbon

Alibaba Java Coding Guidelines

╄→гoц情女王★ 提交于 2019-12-24 18:06:32
阿里巴巴于10月14日在杭州云栖大会上,正式发布众所期待的《阿里巴巴Java开发规约》扫描插件!该插件由阿里巴巴P3C项目组研发。P3C是世界知名的反潜机,专门对付水下潜水艇,寓意是扫描出所有潜在的代码隐患。这个项目组是阿里巴巴开发爱好者自发组织形成的虚拟项目组,把《阿里巴巴Java开发规约》强制条目转化成自动化插件,并实现部分的自动编程。 阿里技术公众号于今年的2月9日首次公布《阿里巴巴Java开发规约》,瞬间引起全民代码规范的热潮,上月底又发布了PDF的终极版,大家踊跃留言,期待配套的静态扫描工具开放出来。 为了让开发者更加方便、快速将规范推动并实行起来,阿里巴巴基于手册内容,研发了一套自动化的IDE检测插件(IDEA、Eclipse)。该插件在扫描代码后,将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,甚至在IDEA上,我们还基于Inspection机制提供了实时检测功能,编写代码的同时也能快速发现问题所在。对于历史代码,部分规则实现了批量一键修复的功能,如此爽心悦目的功能是不是很值得拥有?提升代码质量,提高团队研发效能,插件将会一路同行。阿里巴巴于10月14日在杭州云栖大会上,正式发布众所期待的《阿里巴巴Java开发规约》扫描插件!该插件由阿里巴巴P3C项目组研发。P3C是世界知名的反潜机,专门对付水下潜水艇

Spring Cloud Ilford 版本又来了

假如想象 提交于 2019-12-24 16:57:42
Spring Cloud 联合创始人 Spencer Gibb 发布了 Spring Cloud 2020 的计划。 本文就来分析一下 Spring Cloud 2020 代号:Ilford (伊尔福德) 公布 Spring Cloud 的下个版本代号 Ilford ,第一个版本计划 2020年3月份发布 。 核心依赖为: Spring Framework 5.3 、 Spring Boot 2.4 删除已进入维护模式的模块: spring-cloud-netflix-archaius spring-cloud-netflix-hystrix-contract spring-cloud-netflix-hystrix-dashboard spring-cloud-netflix-hystrix-stream spring-cloud-netflix-hystrix spring-cloud-netflix-ribbon spring-cloud-netflix-turbine-stream spring-cloud-netflix-turbine spring-cloud-netflix-zuul 组件替代说明 以下为 官方推荐组件 CURRENT REPLACEMENT Hystrix Resilience4j Hystrix Dashboard Turbine Ribbon

Alibaba Cloud Toolkit

自作多情 提交于 2019-12-23 22:03:40
插件安装 1、确保 IntelliJ 、PyCharm、PhpStorm等在 2018.1 或更高版本,本文以 IntelliJ 为例(我的版本是2018.3) 2、打开 Intellij 的 Settings ,进入 Plugins 选项,搜索Alibaba Cloud Toolkit插件安装即刻。 如图: 3、安装成功以后需要重启才能生效,可以看见如下图标就是安装成功了。 4、我使用的是阿里云服务器,做个简单例子,操作简单基本相同,未见什么大坑。 5、找到Host,打开terminal窗口(添加host成功以后点下搜索,有时候自动刷新不出来)。 6、一键部署( 来源: CSDN 作者: wzc_ss 链接: https://blog.csdn.net/wzc_ss/article/details/100701458