modulepackage
0.0.0-20230623123726-8e9556d5eeed
Repository: https://github.com/jin06/nexusfs.git
Documentation: pkg.go.dev
# README
NexusFS
为了远程开发的文件系统,文件系统挂载在本地和远程机器,在本地使用IDE开发,开发环境实时同步。有效解决远程开发中存在问题,例如无法使用本地IDE。适用于开发环境是远程主机,容器等多种环境
解决什么问题?
在远程开发时,如果直接通过SSH连接到目标机器中,开发调试过程无法使用本地已经安装好的工具。如果在本地开发,在选择使用FTP等方式上传更改到目标机器也会比较麻烦,FTP的方式也有局限性,又不太适合K8S。这个文件系统就是要解决远程开发中的这个两难问题。
如何解决?
开发一个文件系统,它的主要功能(当然是文件系统的必要功能)和其他的本地磁盘文件系统一样,同时考虑远程开发的特点,进行必要的开发。最终实现的效果是,在远程机器上挂载了这个文件系统,同时在本地挂载这个文件系统,本地的修改会实时同步到开发机器,同时开发机器的更改也会实时同步到本地。
系统的特点
- 大多数的功能不需要特殊开发,沿用已有的文件系统功能。
- 需要将本地文件系统的更新同步到开发机器,同时将开发机器上的更新同步到本地。
- 文件更新并不频繁。
可能遇到的问题?
- 同时修改,竞争如何解决?并发进行更新怎么处理? 一般情况只有2个用户同时修改。一般只要满足10个用户以内的设计即可。
- 挂在点不同导致的一些文件地址冲突。
设计思路
- 方案,基于开源的网络文件系统开发。
- 本地文件系统和网络文件系统之间建立映射关系。实现数据的同步。
- 主要涉及到写入和文件锁的修改。
# Packages
No description provided by the author
Copyright © 2023 Jinlong [email protected]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author