nacos使用


  • Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、动态配置服务(可以做配置中心)、动态 DNS 服务
  • 作为注册中心,Nacos可用于替代Spring Cloud中的Eureka、Spring Cloud Zookeeper Discovery、Spring Cloud Consul Discovery
  • 作为配置中心,Nacos可用于替代Spring Cloud Config、Spring Cloud Zookeper Config、Spring Cloud Consul Config

阅读全文 »


docker构建镜像


容器化运行条件

  • 基础环境:JDK

  • 应用:Spring Boot 应用 jar 包

  • 外部配置:Spring Boot 配置参数

阅读全文 »


mysql表分区


表分区优点

  • 和单个磁盘或者文件系统相比,可以存储更多数据
  • 优化查询,在Where子句中包含分区条件时(不包含分区键,将扫描所有分区),可以只扫描必要的一个或者多个分区来提高查询效率;
  • 对于已经过期的数据,可以通过删除与这些数据有关的分区来快速删除数据
  • 跨多个磁盘来分散数据查询,以获得更大的查询吞吐

表分区限制

  • 最大分区数目不能超过1024
  • 如果含有唯一索引或者主键,则分区列必须包含在所有的唯一索引或者主键在内
  • 不支持外键
  • 不支持全文索引(fulltext)

阅读全文 »


定义自己的starter


原理

  • springboot启动默认只会扫描本项目下的带@Configuration注解的类,如果自定义starter,不在本工程中,是无法加载的,故要配置META-INF/spring.factories配置文件

  • springboot启动时会去依赖的starter包中寻找 resources/META-INF/spring.factories,自动配置bean

  • @Configuration与@Bean->基于java代码的bean配置

  • @Conditional->设置自动配置条件依赖

  • @EnableConfigurationProperties与@ConfigurationProperties->读取配置文件转换为bean

  • @EnableAutoConfiguration->实现bean发现与加载。

阅读全文 »


eureka注册中心


创建springboot项目,勾选Cloud Discovery下的Eureka Server,启动类加上注解 @EnableEurekaServer

@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApp {
	public static void main(String[] args) {
		SpringApplication.run(EurekaServerApp.class, args);
	}
}

阅读全文 »


微服务链路追踪zipkin


启动zipkin服务

linux上下载zipkin服务

wget -O zipkin.jar 'https://search.maven.org/remote_content?g=io.zipkin.java&a=zipkin-server&v=LATEST&c=exec'  

后台运行

nohup java -jar zipkin.jar &

通过ip:9411访问zipkin UI界面

阅读全文 »