如何使用MongoDB+Springboot实现分布式ID
2018-06-05 10:30
971 查看
如何实现分布式id,一般会给出这几种方案
使用数据库自增Id
使用reids的incr命令
使用UUID
Twitter的snowflake算法
利用zookeeper生成唯一ID
MongoDB的ObjectId
mongodb如何实现分布式ID
MongoDB的ObjectId设计成轻量型的,不同的机器都能用全局唯一的同种方法方便地生成它。MongoDB 从一开始就设计用来作为分布式数据库,处理多个节点是一个核心要求。使其在分片环境中要容易生成得多。
使用数据库自增Id
使用reids的incr命令
使用UUID
Twitter的snowflake算法
利用zookeeper生成唯一ID
MongoDB的ObjectId
mongodb如何实现分布式ID
MongoDB的ObjectId设计成轻量型的,不同的机器都能用全局唯一的同种方法方便地生成它。MongoDB 从一开始就设计用来作为分布式数据库,处理多个节点是一个核心要求。使其在分片环境中要容易生成得多。
实现方式 1.引入mongodb依赖 <!--mongodb --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> 2.创建一个实体类 public class Customer { @Id public String id; public String firstName; public String lastName; public Customer() {} 此处省略get,set } 3.创建mongodb 接口类 public interface CustomerRepository extends MongoRepository<Customer, String> { public Customer findByFirstName(String firstName); public List<Customer> findByLastName(String lastName); } 4.测试类 @Autowired CustomerRepository customerRepository; @Test public void mongodbIdTest(){ Customer customer=new Customer("lxdxil","dd"); customer=customerRepository.save(customer); logger.info( "mongodbId:"+customer.getId()); }
相关文章推荐
- 如何使用MongoDB+Springboot实现分布式ID?
- 如何使用MongoDB+Springboot实现分布式ID?
- Spring Cloud Spring Boot mybatis分布式微服务云架构(四十二)使用log4j实现http请求日志入mongodb(1)
- Spring Cloud Spring Boot mybatis分布式微服务云架构(四十三)使用log4j实现http请求日志入mongodb(2)
- Spring Boot使用Redis如何实现Session共享
- Spring Boot中使用log4j实现http请求日志入mongodb
- Spring-boot mongodb ID自增长注解实现 适用于JDK 1.7和JDK 1.8
- spring boot如何使用spring AOP实现拦截器
- 非mongodb数据库如何使用mongodb生成的主键id
- 使用SpringBoot快速实现接口测试
- 如何使用容器实现生产级别的MongoDB sharding集群的一键交付
- Spring-Boot中如何使用多线程处理任务
- MongoDB自动增长id实现、自定义函数调用、与Spring集成
- 使用scrapy,redis, mongodb实现的一个分布式网络爬虫
- Spring-Boot中如何使用多线程处理任务
- ASP.NET MVC4下使用MongoDB实现时间戳和ObjectId相互转换
- Spring Boot如何使用Spring Security进行安全控制
- 如何做实时监控?—— 参考 Spring Boot 实现
- 深入理解Spring Redis的使用 (九)、通过Redis 实现 分布式锁 的 BUG,以及和数据库加锁的性能测试
- 如何使用容器实现生产级别的MongoDB sharding集群的一键交付