解读Apollo源代码:深入剖析Admin Service中的Namespace Locking机制 - 2.1版 NamespaceLockService详解
最编程
2024-07-28 18:29:16
...
在 apollo-biz
项目中,com.ctrip.framework.apollo.biz.service.NamespaceLockService
,提供 NamespaceLock 的 Service 逻辑给 Admin Service 和 Config Service 。代码如下:
@Service
public class NamespaceLockService {
@Autowired
private NamespaceLockRepository namespaceLockRepository;
public NamespaceLock findLock(Long namespaceId) {
return namespaceLockRepository.findByNamespaceId(namespaceId);
}
@Transactional
public NamespaceLock tryLock(NamespaceLock lock) {
return namespaceLockRepository.save(lock);
}
@Transactional
public void unlock(Long namespaceId) {
namespaceLockRepository.deleteByNamespaceId(namespaceId);
}
}