alibaba

spring boot 2.x版本:启动报错:Error creating bean with name 'dataSource' defined in class path resource

僤鯓⒐⒋嵵緔 提交于 2019-12-19 02:20:38
#在使用spingBoot 2.x版本的时候,使用alibaba的druid数据库连接池,com.github.pagehelper的分页插件1.1.2版本,启动项目报错。 错误日志如下: Error creating bean with name 'dataSource' defined in class path resource [com/alibaba/druid/spring/boot/autoconfigure/DruidDataSourceAutoConfigure.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/boot/bind/RelaxedDataBinder 解决方案一:使用jdbc连接 <dependency> <groupId

RocketMQ在windows上安装和开发使用

南笙酒味 提交于 2019-12-18 21:46:34
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 概述 RocketMQ是alibaba公司开源的一个纯java的开源消息中间件。 开发测试环境搭建 1. 安装&启动 进入到RocketMQ下载包解压的路径下 D:\machine\RocketMQ-3.0.8\RocketMQ-3.0.8> 接下来安装 执行下边的命令或者执行install.bat(在这个bat文件中的命令如下)对maven熟悉的一眼就知道是执行clean package install assembly等操作。 mvn -Dmaven.test.skip=true clean packageinstall assembly:assembly –U 操作信息如下: [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] Reactor Build Order: [INFO] [INFO] rocketmq-all 3.0.8 [INFO] rocketmq-remoting 3.0.8 [INFO] rocketmq-common 3.0.8 [INFO] rocketmq-client 3.0.8 [INFO]

Spring Cloud Alibaba 实战(十一) - Spring Cloud认证授权

陌路散爱 提交于 2019-12-16 13:28:00
欢迎关注全是干货的技术公众号:JavaEdge 本文主要内容: 如何实现用户认证与授权? 实现的三种方案,全部是通过画图的方式讲解.以及三种方案的对比 最后根据方案改造Gateway和扩展Feign 0 相关源码 1 有状态 vs 无状态 1.1 有状态 也可使用粘性会话,即:对相同IP的请求,NGINX总 会转发到相同的Tomcat实例,这样就就无需图中的Session Store了。不过这种方式有很多缺点:比如用户断网重连,刷新页面,由于IP变了,NGINX会转发到其他Tomcat实例,而其他实例没有Session,于是就认为用户未登录。这让用户莫名其妙。 粘性会话不是本章重点,如果感兴趣可以百度一下(用得越来越少了) 1.2 无状态 这里讲的是解密Token直接拿到用户信息;事实上要看项目的具体实现;有时候Token里不一定带有用户信息;而是利用Token某个地方查询,才能获得用户信息。 1.3 对比小结 2 微服务认证方案 2.1 “处处安全” 推荐阅读 ◆ OAuth2实现单点登录SSO ◆ OAuth 2.0系列文章 代表实现 Spring Cloud Security : https://cloud. spring.io/spring-cloud-security/reference/html/ Jboss Keycloak : https://www

Spring Cloud Alibaba 实战(十二) - Nacos配置管理

痴心易碎 提交于 2019-12-16 10:57:59
本章主要内容是:使用Nacos管理配置以及实现配置管理的原因,配置如何管理以及动态刷新和最佳实现总结,最后是Nacos配置刷新原理解读 该技术类似于Spring Cloud Config 1 配置管理的意义 项目痛点 不同环境 ,不同配置 配置属性动态刷新 为了解决痛点,常用方案是引入配置服务器,架构如下: 引入依赖 写配置(约定大于配置),要谨遵如下映射关系图哦 创建新的bs.yml配置文件 在NACOS操作面板配置 启动内容中心 2 配置的动态刷新 修改配置后,应用可以动态刷新配置,而不需要重启应用 添加@RefreshScope注解即可 回滚的Bug(不要回滚到初始状态! Nacos 1.2会解决) https://github.com/alibaba/nacos/issues/186 https://qithub.com/alibaba/nacos/issues/434 可以尽量避免使用历史版本,而直接修改配置 3 共享配置 3.1 相同应用内 所指定的大于通用的 3.2 不同应用间 比如这段配置在用户/内容中心都有,可以将其交给nacos管理共享配置 下面看NACOS配置共享的两种方案: shared-detaids ext-config 优先级 shared-dataids < ext-config < 自动 4 引导上下文 4.1 用来连接配置服务器,读取外部配置

SpringCloud H系列 alibaba 2.1.1 (一) dubbo 服务端与客户端实现 (集成nacos注册中心与配置中心)

半世苍凉 提交于 2019-12-15 04:54:19
1.nacos安装 请参考 : docker 安装 nacos 1.X 2.项目父工程 请参考 : SpringCloud H系列 alibaba 2.1.1 (一) nacos1.X 注册中心 服务端 3.项目结构 4.创建Dubbo api 子工程(存放公共类) pom.xml <parent> <groupId>com.alibaba</groupId> <artifactId>spring-cloud-hoxton</artifactId> <version>1.0</version> </parent> <artifactId>alibaba-dubbo-api</artifactId> <version>1.0</version> <packaging>jar</packaging> TestService.java 创建测试接口 /** * 测试API接口 */ public interface TestService { String test(String name); } 5.创建Dubbo 服务端子工程(双端负载均衡) 首先在nacos创建两个配置文件 application-dubbo-server-1.yml 与 application-dubbo-server-2.yml application-dubbo-server-1.yml dubbo:

阿里开源 OpenJDK 发行版 Dragonwell

杀马特。学长 韩版系。学妹 提交于 2019-12-14 01:37:15
日有消息显示,阿里将于 21 日重磅发布其 OpenJDK 发行版 Alibaba Dragonwell。 我们知道 OpenJDK 是基于 GPL v2/Classpath Exception 的 JDK 开源版本,有许多公司都在 OpenJDK 的基础上提供了自己的发行版,比如 Oracle、AdoptOpenJDK、Azul、IBM 与 Red Hat,一般这些供应商会将自行衍生的 OpenJDK 版本加入一些商业/非商业支持选项。 去年 AWS 也推出了自己的 OpenJDK 发行版 Corretto,背后甚至有 Java 之父 James Gosling “站台”,一时间引起不小反响。 常规理解,AWS 搞 Corretto 也算是一种“造轮子”,但是它提供的长期支持包括安全修复、常用功能增强、GC 调度、防止内存溢出,以及改进的监控、报表和线程管理等,这样的能力再加上 AWS 强大的客户和社区生态依赖,有理由让人相信 Corretto 这轮子是具有较大实际意义的。 阿里此次将发布的 Alibaba Dragonwell 也声称 LTS,并且阿里的客户与开发社区体量自然也无庸赘述,那么同为“造轮子”,Alibaba Dragonwell 这个 OpenJDK 发行版会带来些什么呢? 阿里云智能资深技术专家李三红向开源中国提前透露了 Alibaba Dragonwell

Spring Cloud Alibaba gateway ribbon 自定义负载均衡规则

∥☆過路亽.° 提交于 2019-12-10 22:52:39
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 上一篇介绍了,ribbon的组件。本篇要自己写一个灰度方案。其实就是一个很简单的思维扩散。 需求 前端header请求携带version字段。路由服务根据version去需要对应版本的服务集合,进行或轮询或hash或权重的负载。请求路由到服务上,如果还要调用下游服务,也按照version规则去路由下游服务器。前端未携带版本按照后端服务最高version版本进行路由。 分析如果自己动手写一个灰度方案。需要考虑的因素有几点? 服务对应的版本。key(版本号):value(对应版本号的服务集合) 对应版本号的服务集合需要重新排序。 重写负载均衡规则,就是ribbon的IRule方法。按照我们想要的负载规则去路由我们的请求 解决方案: 利用注册中心的metadata属性元数据,让服务携带版本信息。 拿到要请求的服务集合。spring cloud Alibaba nacos NamingService接口根据服务名称获取所有服务List集合,如果你使用的spring cloud 版本可以使用 ILoadBalancer 对象获取所有的服务集合 Instance服务里面携带了,服务注册到注册中心的自定义版本信息 重写IRule负载规则。按照需求转发请求。 来写一下网关层的实现。 gateway负载规则有一个拦截器

Spring cloud alibaba微服务学习(二)

让人想犯罪 __ 提交于 2019-12-10 20:05:01
1.项目整合Spring Cloud 2.整合Spring Cloud Alibaba 整合的作用:在引用spring cloud alibaba或者spring cloud的工具和插件时,就不用再写具体版本号,不用考虑兼容性。 3.Nacos使用介绍 4.Nacos服务搭建 下载服务安装包,服务安装好后登陆的控制台: 5.微服务使用Nacos 需要熟悉的Spring Cloud子项目: 来源: CSDN 作者: 大志哥123 链接: https://blog.csdn.net/liuxinzhi1982/article/details/103475090

dubbo Servlet Bridge Server时同时支持hessian和webservice

空扰寡人 提交于 2019-12-10 07:19:36
原生的 bubbo 在发布 hessian 和 webservice 时使用了嵌入 jetty 的方式开启了两个端口。 而考虑到我们实际的情况,需要使用 weblogic 发布,并且是使用同一个端口对外提供服务。 所以我们要扩展 dubbo 使其支持在同一端口同时支持两种协议。 为了实现这个目标,作出了如下修改: 1, 增加新的 ServletHttpBinder 。 WebServiceDispatcherServlet WebServiceServletHttpBinder WebServiceServletHttpServer 2, 修改文件 /dubbo-remoting-http/src/main/resources/META-INF/dubbo/internal/com.alibaba.dubbo.remoting.http.HttpBinder ,增加如下内容: webserviceservlet=com.alibaba.dubbo.remoting.http.servlet.WebServiceServletHttpBinder 3 , com . alibaba . dubbo . rpc . protocol . webservice . WebServiceProtocol . WebServiceHandler .handle 方法修改的内如如下: if (